SYS/CASE
Digital product creation · SaaS · AI engineering · 2025–2026
RankyDocky — a multi-tenant B2B CRM, campaigns and CMS, built with agents
By Mathieu Milon, AI engineer growth & CRO · Published
A large-scale CRM and marketing-automation platform: contacts, pipeline, e-mail and SMS campaigns, workflows, landing-page editor, CMS, copilot. Built with GSD — Django, GraphQL, React, Celery — this is the product on which the studio ships software, not just recommendations.
33 modules · multi-tenant
Context
The HubSpot × Brevo × Webflow triangle: a CRM, an e-mail tool, a page editor. RankyDocky gathers them in a single multi-tenant product — isolation by organisation, roles, Celery queues, React editors. It is the studio's internal product, not the Shamalo client portal.
Why Shamalo is not RankyDocky
RankyDocky is a B2B SaaS in its own right. Shamalo does not import this CRM: the client portal (subdomain per organisation) is another product, on the same family of stack. GSD skills, though, are shared.
Problem
Cover a full CRM — not a demo — with one person: contacts and deduping, e-mail and SMS campaigns, deliverability, workflows, landing pages with A/B tests, CMS, copilot, GDPR, tenant isolation. Prove that an AI engineering studio ships real software, not just CRO recos.
Approach
Django 5 backend exposed in GraphQL (Graphene), React 18 front, Celery jobs, PostgreSQL, Redis. Each module starts from a GSD plan, advances in waves, passes a phase audit. RankyDocky was forked from the SEO & GEO audit tool: the SEO/GEO GraphQL schema is already in the backend, ready to reattach the apps.
Stack
The same family as Shamalo: Django, GraphQL, React, Celery, isolation by organisation. Not glued-together no-code — a data model, resolvers, queues, roles.
- Django 5
- GraphQL
- React 18
- Celery · Redis
- Multi-tenant
33 modules
The product's test catalogue counts 33 features. They group as follows:
CRM & sales
Contacts, import/export, segments, pipeline, scoring, custom lists, GDPR.
Outreach
E-mail and SMS campaigns, warmup, sending domains, inbox, deliverability.
Conversion
Landing pages (v2 editor), lead magnets, A/B tests, prospecting, scrape onboarding.
Intelligence & content
Copilot, CMS, analytics, tracking, calendar, notifications, admin.
The SEO & GEO audit is a sibling product, already in production for engagements: the integration plan copies the Django apps into RankyDocky without migrating auth.
GSD protocol
Each module starts from a plan, advances in execution waves and passes a phase audit before it is considered done. The five times of the loop, in order:
- Context
- Research
- Plan
- Execution
- Verification
The same protocol runs RankyDocky and the Shamalo site — see AI engineering.
Tools
- Cursor
- Claude Code
- Copilot
- GSD, skills and agents
Where AI comes in
Everywhere in the workflow — plans, execution waves, phase audits, product copilot (copy, scoring, natural-language queries) — never as a sales argument in place of the software.
What agents speed up, and what they do not replace
Agents speed up the spec and the code. Tenant isolation, roles and the data model remain human decisions: you do not correct them afterwards without migrating everything.
Results
Internal product, real surface. No public usage metric — so no conversion chart here. What is verifiable is the perimeter.
33
modules (test catalogue)
1 org = 1 tenant
isolation by organisation, roles owner → viewer
GSD
plans, waves, audits — the same backbone as Shamalo
Takeaway
- 1
Building our own product is the proof: the same skills that move RankyDocky forward move client engagements forward.
- 2
A CRM of this size does not hold without a protocol: plans, waves and audits keep a one-person studio rigorous on a real backend.
- 3
Forking from the SEO & GEO audit avoids rewriting the stack: the craft (CRM) and the analysis (SEO/GEO) reattach instead of duplicating.
Visuals
Illustrative dashboard preview — mockup, not a product screenshot.
Related expertise: SaaS, AI engineering.
A similar project?
Let's talk about your next engagement
A funnel, a product or an extract to analyse: book a 30-minute call, written scoping within 48h.