Beige CRM: A Full-Stack, Multi-Tenant CRM Platform
Worked on
2023
Industry
Technology
Services

Overview
Beige CRM is a full-stack, multi-tenant CRM platform we built from zero to production in 13 months. It brings together, in a single product, what the market usually sells as five separate tools: a CRM, an email client, a telephony stack, a marketing automation tool, and a scheduling system, on a multi-tenant foundation that can serve many organizations from day one.
The Challenge
Most CRM products force a trade-off. Either you get a clean, focused sales tool that cannot handle email, calls, or automation, or you get a sprawling enterprise suite that takes six months and a consultant to configure. Beige CRM was built to close that gap: one platform where a sales team can manage their pipeline, run their inbox, place and receive calls, send marketing campaigns, book meetings, and automate the busywork between all of it, without stitching together five subscriptions. That meant building all of it on a multi-tenant foundation, with billing and access control designed in rather than bolted on.
What We Built
- Core CRM. Contacts, companies, leads, and deals moving through configurable pipelines, with activities, tasks, notes, attachments, tags, and user-defined custom fields on every record.
- Unified Inbox. Real email accounts connected via OAuth, with threading, drafts, labels, attachments, and AI-generated thread summaries so reps can catch up on a conversation without reading it.
- Telephony and Voice AI. Provisioned phone numbers, in-browser calling, full call logging, and visual IVR flow building with AI-driven response handling and text-to-speech.
- Email Marketing. Campaign creation with a drag-and-drop email builder, A/B variants, per-recipient tracking, link-click analytics, and compliance-grade suppression and unsubscribe handling.
- Automation and Forms. A visual workflow builder where teams wire up trigger-and-action sequences across the whole platform, plus embeddable lead-capture forms that feed directly into the pipeline.
- Scheduling. Per-member availability, time-off, bookable event types, and a public booking flow.
- Billing. Subscription plans, seat licensing, metered usage, invoicing, coupons, and payment processing built directly into the tenancy model.
- Reporting and Dashboards. Pipeline and performance analytics, plus product analytics instrumentation throughout.
Delivered across four applications: a customer-facing web app, an internal admin portal, a native mobile app, and the API that serves them all.
By The Numbers
- ~305,000 lines of TypeScript
- 80 data models
- 447 API endpoints
- 20 backend modules
- 111 application routes
- 92 product screens
- 4 shipped applications
- 32 database migrations
- 1,270 commits over 13 months with 10 contributors
How We Built It
- Architecture. A modular monolith: twenty independently-bounded modules that communicate only through public facades and events, never by reaching into each other's internals. It gives the team microservice-style boundaries with monolith-style deployment simplicity, and leaves any module extractable later if scale demands it.
- Multi-tenancy as a foundation, not a feature. Every organization is a tenant. Tenant context is resolved and membership verified at the routing layer before a request ever reaches business logic, and authorization is enforced again at the service layer via a policy engine supporting both role-based and attribute-based rules.
- Type safety end to end. TypeScript under its strictest settings, schema-validated inputs at every boundary, and a frontend API client generated directly from the backend's OpenAPI spec, so a breaking API change surfaces as a compile error, not a production incident.
- Built for load. Read-replica Postgres behind a connection pooler, Redis caching tuned to cache expensive computed data rather than CRUD lists, background job queues for heavy work, and WebSocket push for real-time updates instead of cache invalidation churn.
- Quality gates. Automated linting with security and complexity rules, pre-commit hooks, dependency vulnerability scanning, unit and integration tests, and a Playwright end-to-end suite that includes accessibility checks.
The Stack
- Backend. NestJS on Fastify, PostgreSQL with Prisma, Redis, BullMQ, Socket.IO, CASL, Bun.
- Frontend. React 19, Vite, TypeScript, TanStack Query, Tailwind CSS, Radix UI, React Router.
- Mobile. React Native with Expo.
- Infrastructure. Docker, read-replica Postgres with PgBouncer, S3-compatible storage, CI/CD with automated deployment, Prometheus metrics.
- Integrations. Stripe, Twilio, AWS SES, Google OAuth, PostHog.
The Result
A production CRM platform covering the work that sales teams normally spread across five separate tools, architected so that adding the sixth is a module, not a rewrite.
At a Glance
Full-stack product build · Multi-tenant SaaS · CRM, email, telephony, marketing automation and scheduling · Modular monolith · TypeScript end to end · Four applications shipped in 13 months.
Ready to join the list of successful deployments?
Free discovery call. No commitment. We typically respond within 24 hours.
Schedule a Discovery Call