Add marketplace metadata
The application config carries the identity that shows up in the marketplace: author, category, logo, and support links. Put a logo inpublic/ and reference it with logoUrl.
twenty-app keyword to package.json so the app is discoverable:
Add gallery screenshots
A marketplace listing sells itself with screenshots. Drop a few PNGs inpublic/gallery/ and reference them with screenshots — they render as a gallery
on the listing page.
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: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:
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
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.