explaingit

twentyhq/twenty

📈 Trending45,904TypeScriptAudience · developerComplexity · 4/5ActiveSetup · hard

TLDR

Open-source CRM platform built for developers who want to customize and extend their customer relationship management system in code rather than through vendor lock-in.

Mindmap

mindmap
  root((Twenty))
    What it does
      Track contacts deals tasks
      Workflow automation
      AI agent support
      Custom data objects
    How to use it
      Cloud hosted service
      Self-hosted Docker
      Developer SDK
    Tech stack
      TypeScript frontend
      TypeScript backend
      GraphQL API
      React UI
    Use cases
      Startup CRM needs
      SaaS team pipelines
      Custom workflows
    Key features
      Version-controlled schema
      Code-based customization
      Team-specific layouts

Things people build with this

USE CASE 1

Build a custom CRM for your startup with fields and workflows tailored to your exact sales process.

USE CASE 2

Deploy a self-hosted customer management system using Docker so your data stays on your own servers.

USE CASE 3

Create AI-powered tools that read and write CRM data automatically when deals or contacts change.

USE CASE 4

Version-control your CRM schema alongside your codebase so schema changes go through code review.

Tech stack

TypeScriptReactGraphQLDockerNode.js

Getting it running

Difficulty · hard Time to first run · 1h+

Requires Docker and likely a database setup; GraphQL backend needs to be running alongside React frontend.

License could not be detected automatically. Check the repository's LICENSE file before use.

In plain English

Twenty is an open-source CRM (Customer Relationship Management) platform designed as an alternative to proprietary systems like Salesforce. A CRM is software that helps businesses track their relationships with customers, recording contacts, deals, conversations, tasks, and sales pipelines, so nothing falls through the cracks. What distinguishes Twenty from typical CRM tools is that it is built for technical teams who want to customize and extend their CRM rather than be constrained by what a vendor allows. Instead of configuring a CRM through click-based admin panels alone, Twenty lets developers define new data objects, fields, and views directly in TypeScript code, then deploy those changes to their workspace. The CRM schema is version-controlled alongside the rest of the codebase, so changes can be reviewed, reverted, and tracked just like any other software change. The core features cover the standard CRM toolkit: contacts, companies, deals, tasks, and notes. On top of that, Twenty provides workflow automation to trigger actions when records change, and built-in AI agent support so teams can build AI-powered tools that interact with their CRM data directly. Layouts and views are customizable per team. Twenty is available as a hosted cloud service (sign up and start immediately), as a self-hosted installation using Docker, or as a developer SDK where you scaffold, build, and deploy custom applications on top of the platform. A startup, SaaS company, or software team would use Twenty when they need a CRM that fits their specific data model and processes, and they want to own and extend that tooling rather than paying enterprise pricing for something rigid. The tech stack is TypeScript on both front and back ends, with a GraphQL API, and React for the user interface.

Copy-paste prompts

Prompt 1
How do I set up Twenty as a self-hosted CRM using Docker for my team?
Prompt 2
Show me how to define a custom data object and field in Twenty using TypeScript code.
Prompt 3
How can I build a workflow automation in Twenty that triggers an action when a deal moves to a certain stage?
Prompt 4
What's the process for deploying a custom AI agent in Twenty that reads and updates CRM records?
Prompt 5
How do I integrate Twenty's GraphQL API into my existing application to sync customer data?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.