Files
twenty/packages/create-twenty-app
Charles Bochet 7540bb064f Re-export missing types from SDK public API (#19610)
## Summary

- Fixes TS4082 errors for SDK consumers with `declaration: true` in
their tsconfig
- The `define*` functions (e.g. `defineView`, `definePageLayout`,
`defineLogicFunction`) return `ValidationResult<T>` where `T` references
types from `twenty-shared` that were not re-exported from the SDK's
public barrel
- TypeScript cannot generate `.d.ts` files when the return type
references "private names" — types that exist in the package but aren't
publicly exported

### Added re-exports

**Enums** (used in `ViewManifest`, `HttpRouteTriggerSettings`):
- `ViewType`, `ViewFilterOperand`, `ViewFilterGroupLogicalOperator`,
`ViewOpenRecordIn`, `ViewVisibility`
- `HTTPMethod`

**Types** (used in `PageLayoutWidgetManifest`, `LogicFunctionConfig`):
- `GridPosition`, `PageLayoutWidgetConditionalDisplay`
- `InputJsonSchema`
2026-04-12 18:33:14 +02:00
..
2026-04-03 12:44:03 +00:00
2026-04-03 12:44:03 +00:00
2026-04-03 12:44:03 +00:00
2026-04-03 12:44:03 +00:00

Twenty logo

Create Twenty App

NPM version License Join the community on Discord

The official scaffolding CLI for building apps on top of Twenty CRM. Sets up a ready-to-run project with twenty-sdk.

Quick start

npx create-twenty-app@latest my-twenty-app
cd my-twenty-app
yarn twenty dev

The scaffolder will:

  1. Create a new project with TypeScript, linting, tests, and a preconfigured twenty CLI
  2. Optionally start a local Twenty server (Docker)
  3. Open the browser for OAuth authentication

Options

Flag Description
--example <name> Initialize from an example
--name <name> Set the app name (skips the prompt)
--display-name <displayName> Set the display name (skips the prompt)
--description <description> Set the description (skips the prompt)
--skip-local-instance Skip the local server setup prompt

By default (no flags), a minimal app is generated with core files and an integration test. Use --example to start from a richer example:

npx create-twenty-app@latest my-twenty-app --example hello-world

Examples are sourced from twentyhq/twenty/packages/twenty-apps/examples.

Documentation

Full documentation is available at docs.twenty.com/developers/extend/apps:

Troubleshooting

  • Server not starting: check Docker is running (docker info), then try yarn twenty server logs.
  • Auth not working: make sure you are logged in to Twenty in the browser, then run yarn twenty remote add.
  • Types not generated: ensure yarn twenty dev is running — it auto-generates the typed client.

Contributing