Skip to content

Theme portal ​

v2 working locally, not deployed yet.

What it is for ​

The portal answers a governance question: who is allowed to use which version of which theme?

Without it, a theme travels by email or file copy, and nobody knows which version is authoritative. With it:

  • the people in charge of the brand guidelines publish a version, which will never change again;
  • they target it at the whole organization or at a group;
  • each person receives it in VS Code, verified, usable by all their presentations.

A theme is published only if it passes the theme validator: it implements the whole Core v1 language and loads nothing from outside.

What it does not do ​

  • It does not store your presentations: they stay on your machines.
  • It does not produce PDF or PPTX remotely.
  • It does not protect copies already downloaded (it is not DRM).

Roles ​

RoleCan
Platform administratorCreate an organization, register an SSO provider (address listed in the server configuration)
Organization adminEverything: members, invitations, groups, settings (storage, AI assistant), activity log, themes
editorCreate, edit, publish, withdraw and delete themes
memberUse in VS Code the published versions targeted at them

Identity is verified by a code received by email, or by the company's single sign-on (SSO OIDC) if it is configured for its domain. Rights are granted by organization memberships: an account without a membership sees no organization.

Theme lifecycle ​

text
 New theme (@theme Name) ──► Draft ──► Publication (immutable)
                               ▲  validation        │
                               │  + preview         │
                               └─ new version ◄─────┤
                                                    ▼
                                            Optional withdrawal
  1. Theme: a stable identity, its @theme name, which never changes.
  2. Draft of a version 1.2.3: CSS imported or pasted, editable at will, validated continuously, with release notes.
  3. Publish: choice of audience (organization or group); the server revalidates, and the version becomes immutable. To fix it, publish a new version with a higher number.
  4. Withdrawing a version stops its distribution; deleting a theme stops all its versions, with an optional replacement theme that VS Code will offer.

The editor ​

  • Raw CSS editor, .css file import; long data: values (base64 images, fonts) are folded to stay readable.
  • Continuous validation while typing, in the browser, with the same code as the server and the extension: errors and warnings with their line and a hint for fixing them.
  • Preview of the control slides rendered with the theme, displayed in isolation.
  • AI assistant (Claude), if the organization has enabled it: a fix proposed for each error and a side chat. Nothing is applied without your approval, and each proposal is revalidated. Embedded images and fonts are stripped from the CSS before sending.

On the VS Code side ​

A single connection to the portal gives access to the themes of all your organizations; the extension installs them for all of VS Code and discreetly notifies you of new versions. See Organization themes.

The interface ​

Sidebar (organization switcher, themes, members, groups, activity, settings), clean tables and dialogs. Default interface language: English; French, Ukrainian and Arabic available (Arabic switches the interface to right-to-left). Light, dark or system appearance. The choice follows the account from one device to another.

Going further ​

Documentation of the DWA Core v1 language, the VS Code extension, the CLI and the theme portal.