Dousen documentation

Updated October 2026

Dousen links Jira tasks, Perforce changelists, and your DCCs (Blender, Maya, Houdini, 3ds Max, Substance Painter, and Substance Designer) with Unreal Engine. This page explains what runs where, lists the components and ports, and links to the guide for each role.

Artists work in DousenDesktop, the DCC addons, and the Unreal Engine plugin. Project admins configure each project in the web portal of the studio server (DousenCore).

Choose your workflow

Set up a studio

  1. Create the project and set up one workstation.
  2. Define names and folders, then test the validation rules.
  3. If your project uses studio master materials, create the material catalog and report it to the project.
  4. If art and Unreal use different Perforce repositories, set up a separate source repository.
  5. Publish a test asset and reimport it before you roll out to the team.

Artists can start with the daily Desktop workflow and their first DCC session. Developers building a studio tool should start with the Bridge API.

What runs where

A cloud studio uses all three parts below. A self-hosted studio runs only the studio instance and the artist machines. DousenControl and DousenCore use HTTP/JSON, and the bridge on each artist machine uses authenticated RPyC connections over TCP.

Part Runs on Purpose
Cloud control plane Dousen’s cloud, port 8090 (DousenControl) Manages studios (orgs), subscriptions, and Ed25519-signed license tokens, and assigns each studio to a DousenCore instance.
Studio instance A server, port 8080 (DousenCore) The service every artist and DCC works with: the REST API, the web portal at /portal/, MariaDB, the Perforce connection, and a Jira webhook endpoint. It holds the changelists, users, conventions, and validation history.
DCC bridge relay Each artist machine, 127.0.0.1:8766 (inside DousenDesktop) A relay that accepts connections only from the same machine. DCCs and Unreal use it to hand work to each other (publish, register, and receive events) without a round trip to the server.

Port reference

Port Service Reachable from
8090 DousenControl REST (cloud control plane) Dousen’s cloud only. Every studio instance, including self-hosted ones, sends license heartbeats to https://control.dousen.io over HTTPS, so allow that outbound connection.
8080 DousenCore REST and web portal (/portal/) Every DousenDesktop and DousenUE install for that studio, on whatever host and network the admin exposes it on (see Self-hosted install).
8766 DousenDesktop bridge relay (RPyC over TCP) Loopback only (127.0.0.1): the DCC addons and the Unreal plugin on the same machine. The port isn’t reachable over the network, and it doesn’t serve HTTP. See Bridge API.

Cloud and self-hosted studios

Aspect Cloud Self-hosted
Who runs DousenCore Dousen. DousenControl assigns each studio to an instance. You, with the Docker Compose bundle in deploy/self-hosted/.
Licensing DousenControl issues and renews licenses automatically. You set the license token, which Dousen signs with Ed25519, and Dousen’s public key. The instance verifies the license offline and allows a 14-day grace period after it expires.
Signing in Cloud SSO through DousenControl, with an optional browser sign-in (OAuth with PKCE). Accounts that belong to more than one studio get a studio picker. A local password that the instance checks itself, or your LDAP/Active Directory server if you set DOUSEN_AUTH_MODE=ldap.
Getting an account During the free studio beta, accounts are created manually. See Quick start. Install the stack, then create the first admin with dousen-cli. See Create the first admin. With LDAP, the first sign-in by a member of DOUSEN_LDAP_ADMIN_GROUP creates one.

Components

Component Part What it does
DousenControl Cloud control plane The SaaS control plane: orgs, tenants, subscriptions, Stripe billing, license issuance, and Kubernetes/Helm tenant provisioning.
DousenCore Studio instance The REST backend. It stores changelists, users, naming conventions, and validation history, serves the web portal, talks to MariaDB and Perforce, and accepts Jira webhooks at /webhooks/jira.
DousenDesktop Artist machine A Qt 6 system-tray app. It is a REST client of DousenCore and a direct Jira client, runs the DCC bridge relay, launches DCCs, tracks source assets, and updates itself.
DousenUE Artist machine (Unreal Engine 5 editor) An editor plugin. It calls DousenCore’s REST API, receives bridge events from DousenDesktop, and reimports changed assets. It doesn’t talk to Jira.

Key concepts

Tasks

Dousen doesn’t store tasks. DousenDesktop fetches each artist’s issues from Jira with their own credentials. See Jira tasks.

Changelists

Each Perforce changelist opened through Dousen is keyed to a Jira issue key, such as DOU-142. If a project admin sets it up, submitting the changelist moves the issue to another status. See Perforce.

The bridge

A relay on each artist machine passes publishes from the DCCs to Unreal Engine, and gives every running DCC the active task and changelist. Studio tools can join it like the built-in addons. The Publish history tab in DousenDesktop shows whether Unreal imported and saved each asset. See Bridge API.

Naming conventions

Naming rules are written in YAML, or in Lua for computed rules, and stored per project in DousenCore. Every client uses the same compiled JSON document, so a name built in Blender matches the name Unreal expects. Clients cache it for 5 minutes. See Naming conventions.

Validation

The same document holds validators, which are checks that run in the DCC before export. A validator with severity error blocks the export, and a warning is advisory. See Asset validation.

Licensing and accounts

Each studio instance verifies its Ed25519-signed license offline, and keeps working for a 14-day grace period after it expires. Seats are limited by plan. An account signs in with a local password, an LDAP/AD directory, or cloud SSO, and is active on one device at a time.

Roles

A studio instance has three roles: admin, producer, and artist. Only admin can change conventions, validators, settings, and users in the portal. On a person’s first sign-in from a cloud org, an org owner or admin becomes an instance Admin, and a member becomes an Artist. After that, the role set in Dousen is kept. See User and auth management.

All pages

Getting started

Page Covers
Overview This page: what Dousen is, what runs where, the components, ports, and where to go next.
Quick start How to get an account, configure a project, install DousenDesktop, run the setup wizard, and verify that the first asset reaches Unreal.

User guide

Page Covers
Desktop app Signing in, the tray icon, task filters, application launchers, publish history, and auto-update.
DCC addons What the Dousen panel does in each of the six DCC addons (Blender, Maya, 3ds Max, Houdini, Substance Painter, and Substance Designer), and how Unreal Engine joins the bridge as a seventh application.
Publishing assets How to choose the instances to publish, validate them, publish from a DCC, and confirm the result in Unreal.
Unreal Interchange How Dousen imports published instances into Unreal Engine with Interchange, how reimport works, and how to set up import profiles and project import stacks.
Jira tasks How DousenDesktop fetches your Jira issues with your own credentials, and how submitting a changelist moves an issue to a new status.
Perforce Changelists keyed to a Jira issue, file-lock status in the DCC, and Perforce Streams.
Source repositories How to bind a project to a separate Perforce repository for DCC source art, and how artists work with it.
Unreal Engine How to install and configure the DousenUE editor plugin, how published assets are named and imported, and the Content Browser menus, such as Open in DCC.

Admin guide

Page Covers
Naming conventions How to write a project’s naming document in YAML or Lua, how the taxonomy works at any depth, and how clients cache the compiled result.
Asset validation Every built-in validator by category, the validator catalog, the Nanite and NonNanite rules, and how to write a custom validator plugin.
Materials and textures How to create the material catalog in Unreal, report it to the project, and check artists’ material assignments.
Settings reference Every project-level YAML document and scalar setting that you can edit in the web portal.
Loading studio tools How to run your own startup scripts, extra validator paths, and per-machine launch options alongside Dousen’s addons.
User and auth management Users and roles in DousenCore and DousenControl, the three sign-in modes, sessions and tokens, and how accounts are created.
Self-hosted install How to run DousenCore with the Docker Compose bundle: install.sh, the manual setup steps, and LDAP configuration.

Reference

Page Covers
Tools and plugins Standalone authoring tools and Unreal editor plugins from the Dousen family.
Bridge API Authenticated bridge requests and pushed events, for studio tools that join the bridge like a built-in addon.
Troubleshooting Fixes grouped by symptom and by where you see the problem, and where each log file is.

If something doesn’t work the way a page describes, see Troubleshooting, which is organized by symptom.