Dousen Documentation

Updated July 2026

Dousen connects Jira, Perforce, and your DCCs — Blender, Maya, Houdini, 3ds Max, Substance Painter, Substance Designer, and Unreal Engine — into one unified workflow, so artists can focus on art instead of handoffs.

Artists never touch the server directly. All artist UI lives in DousenDesktop and the Unreal Engine plugin. The server (DousenCore) is admin and infrastructure, configured entirely through the web portal.

The pieces

Dousen is made of a small number of cooperating components. Everything between them is plain HTTP/JSON.

ComponentWhere it runsWhat it does
DousenCore Server (Docker), port 8080 The REST backend and source of truth for changelists, users, naming conventions, and validation history. Serves the web admin portal at /portal/, talks to MariaDB and Perforce, and receives Jira webhooks at /webhooks/jira.
DousenControl Cloud, port 8090 The SaaS control plane: manages studios, tenants, subscriptions, and licenses, and provisions DousenCore instances. Self-hosted studios do not run this.
DousenDesktop Each artist machine A Qt6 system-tray app. It is a REST client to DousenCore, a direct Jira client, a local bridge relay on 127.0.0.1:8766, and a DCC launcher with source-asset tracking.
DousenUE Unreal Engine 5 editor An editor plugin that polls the desktop relay on port 8766 for events and auto-reimports assets. It never talks to Jira.

The bridge is a poll-based HTTP relay (publish, register, and poll on port 8766), not a server that DCCs hold an open connection to. An artist publishes an event from one DCC, the relay fans it out, and other apps — including Unreal — pick it up.

Key concepts

Tasks

Dousen stores no tasks of its own. Jira is the single source of truth. DousenDesktop fetches issues directly using each artist's own Jira credentials and renders them as HTML, so you see the same tasks you would in Jira.

Changelists

Every Perforce changelist opened through Dousen is keyed to a Jira issue key — for example DOU-142. That link is what keeps your work in Perforce tied to the task it belongs to.

The bridge

When an artist publishes from one DCC, the local relay fans the event out to the other apps on that machine. Unreal Engine picks the event up and auto-reimports the changed asset — no manual export-and-import shuffle.

Naming conventions

Asset naming rules are defined per project as YAML, stored in DousenCore, and served to every client so all DCCs and Unreal name and resolve assets the same way.

Where to next