Your app works. The last step is to describe it for the marketplace and publish.

Add marketplace metadata

The application config carries the identity that shows up in the marketplace: author, category, logo, and support links. Put a logo in public/ and reference it with logo.
The default role is declared with defineApplicationRole() in its own file — you don’t pass defaultRoleUniversalIdentifier here anymore.
Also add the twenty-app keyword to package.json so the app is discoverable:
A marketplace listing sells itself with screenshots. Drop a few PNGs in public/gallery/ and reference them with galleryImages — they render as a gallery on the listing page, in array order.
Lead with the payoff: make the first screenshot the finished result (a generated document), then show how it’s triggered and authored. Use crisp, high-resolution captures — they’re the first thing a user sees.
Give README.md the same treatment — it’s the front page on npm and GitHub. Open with the value proposition and a screenshot, list the headline features, then keep the build details below the fold.

Check before you ship

Run the same gates CI does:
The plan prints exactly what would change on the server without applying it — a good final sanity check. See Testing and Syncing & recovery.

Publish

app:publish builds and publishes to npm by default; --private uploads a tarball to a Twenty server’s private registry instead. To surface a published app in an instance’s marketplace, trigger a catalog sync:
Full details and the release checklist: Publishing.

You built an app 🎉

In six chapters you used most of the SDK surface:
  • Objects, fields, and a relation to model the data
  • A logic function exposed as an AI tool, a workflow action, and HTTP routes
  • Views, navigation, a command, and a front component for the UI
  • An agent + skill for natural-language generation
  • Marketplace metadata and the publish flow
The finished app is at packages/twenty-apps/examples/document-generator.

Where to go next

Data reference

Every field type, relation, and index option.

Logic reference

Cron and database-event triggers, the key-value store, OAuth connections.

Layout reference

Page layouts, dashboard widgets, and more UI surfaces.

Operations

CLI, testing, remotes, and CI.