Twenty Project Structure
The modern, open-source CRM platform. A sophisticated monorepo powered by Nx, utilizing a high-performance NestJS backend and a highly customizable React frontend.
Updated 2025-12-30
Project Directory
Repository Info
- Repository-twentyhq/twenty
- Stars-18k+
- License-AGPL-3.0
- Last Analyzed-December 2025
Tech Stack
- Monorepo Tool-Nx
- Backend-NestJS (Node.js)
- Frontend-React
- Language-TypeScript
- Database-PostgreSQL
- ORM-TypeORM
Architecture Notes
Twenty is architected as an Nx monorepo, which provides exceptional tooling for managing dependencies between its many internal packages. It follows a clear separation between the API server (twenty-server) and the client-side application (twenty-front). One of its key strengths is the modularity of its UI components and utilities, which are extracted into their own packages to be reused across the platform and potentially by third-party developers.
Key Directories
- packages/twenty-front/-The React-based dashboard for the CRM
- packages/twenty-server/-A robust NestJS backend handling complex CRM logic
- packages/twenty-ui/-A standalone library of design-system-consistent components
- packages/twenty-sdk/-Tools for developers to interact with Twenty programmatically
Why This Structure?
Twenty represents the 'new wave' of open-source business software. It shows how to use modern monorepo tools like Nx to manage a large-scale TypeScript codebase. It's an excellent reference for anyone building enterprise-grade SaaS with a focus on modularity and extensibility.