Cintram — client delivery platform
- 20+
- Product modules
- 3
- Client surfaces
- 15 – 22
- Angular
- 4.2 – 5.2
- Django
The problem
Service businesses — consultancies, coaching and training practices — sell an engagement, then deliver it over weeks or months across a spreadsheet, a shared drive and a long email thread. Nobody can answer “where is my project” without a person going to look, and the client’s experience of a professional firm ends the moment the contract is signed.
What we built
A platform where a closed deal becomes a project with its phases and tasks already in place, and where the client sees the same truth the team does — through a white-labelled portal carrying their brand, not ours. Around twenty product modules sit behind one API contract: CRM and contacts, leads, opportunities and sales pipeline, projects, planner and tasks, an LMS for training delivery, marketing and forms, members and teams, visitor tracking, automation, and recurring billing with mid-term proration. The API is described in OpenAPI and the Angular client’s types are generated from that schema, so a breaking backend change fails the frontend build rather than a customer’s screen.
Where it is now
In production and actively developed. The frontend has been carried from Angular 15 to Angular 22 and the backend from Django 4.2 to 5.2 — incrementally, in a live product, without a rewrite or a migration weekend. That is the same modernisation work we do for clients, run on our own codebase where the consequences land on us first.