LogicsBeat CRM
A real CRM stack — contacts, pipeline, and ops — not a spreadsheet in a costume.
LogicsBeat CRM is a full-stack monorepo: React 18 + Vite + Tailwind/shadcn on the client, Express 5 on the API, PostgreSQL with Prisma, and Redis + BullMQ for background work — with Zustand, TanStack Query, Zod forms, Recharts, and drag-and-drop boards.
CRM architecture you can actually deploy
The product is structured as a workspace monorepo with Dockerized PostgreSQL/Redis, a typed React client, and an Express server with clear controllers, services, validators, and job workers. It is designed as a foundation for sales pipeline and customer ops — not a throwaway admin theme.
Most CRM demos stop at UI kits
Teams often need a CRM they can own: schema, auth path, queues, and a frontend that can grow. Off-the-shelf themes leave you without Prisma models, job workers, or a deployable API. Founders and agencies need a coherent stack they can extend.
- UI kits without a real data layer fall apart at the first custom field
- Pipeline boards need optimistic UX and durable server state
- Background jobs (imports, reminders) need Redis — not setTimeout
- Forms and charts must share one typed source of truth
Monorepo CRM with a production-shaped backbone
We built the CRM as client + server workspaces sharing Prisma, with React Query for server state, Zustand for UI state, Zod-validated forms, Recharts for reporting, and @dnd-kit for pipeline boards — plus Redis/BullMQ hooks for async work and Docker Compose for local parity.
Built for operators
- React + Vite client with Tailwind and shadcn/ui primitives
- Express API with structured controllers, services, and validators
- PostgreSQL schema via Prisma with migrate/seed tooling
- Redis + BullMQ workers for background jobs
- TanStack Query + Zustand for predictable client state
- React Hook Form + Zod for validated workflows
- Recharts dashboards and @dnd-kit sortable boards
From schema to operable UI
- 01
Data model & API skeleton
Defined Prisma schema, Express app bootstrap, env loading, and error middleware so features land on a stable server core.
- 02
Client shell
App layout, sidebar, routing, API client, and design tokens so pages share one navigation and visual system.
- 03
CRM workflows
Contacts, pipeline, and reporting surfaces wired through React Query mutations and Zod schemas.
- 04
Ops packaging
Docker Compose for Postgres/Redis, seed scripts, and deploy configs so the stack runs the same locally and in staging.
Modern full-stack TypeScript/JS
LogicsBeat CRM is built natively on Android using a focused, modern stack chosen for performance, maintainability, and a clean user experience.
Design choices that keep the CRM extensible
Separating UI state from server state
Zustand handles ephemeral UI; React Query owns server cache — avoiding the classic god-store that breaks every form.
Jobs without blocking requests
BullMQ on Redis means imports and reminders can fail/retry without freezing the Express request path.
Forms that survive real operators
Zod + React Hook Form keep validation next to the schema so custom CRM fields do not become ad-hoc if checks.
Why this project matters
LogicsBeat CRM shows we can ship an operable B2B product skeleton — schema, API, queues, and a polished React client — ready to customize for a sales team instead of starting from a dead UI kit.
Have a mobile product idea?
I'm available for client work in Android, mobile product development, and end-to-end app delivery. Let's talk about what you're building.