Your CRM
This is just the starting point. The real version is built around your terminology, your rules, your edge cases.
ARP is the framework and the team. We start from how your business actually works — your terminology, your pipeline, your edge cases — and build the application from there. Same foundation as every ARP project. A different shape, every time.
// every ARP project starts with this: const yours = arp.compose({ from: 'crm', shape: 'your-process', modules: [ 'pipeline', 'inquiries', 'client-portal', 'ai/categorise-inquiries', ], custom: /* whatever you need */, });
Geist for everything. A clean grotesque with subtle character — modern, technical, never aggressive. Geist Mono for code, identifiers, and data labels.
Built to fit.
Designed to scale.
Pick a starting point — a CRM, an HRM, a content system. Toggle features. Watch the dashboard reshape. Then tell us the part we haven't listed yet, because that's where every project actually begins.
$ arp init --from=crm --shape=yours
SECTION LABEL · INTERACTIVE CAPTION
A clean ramp on petrol. Coral appears only where you want a decision made.
Components shaped like modern devtools — quiet most of the time, decisive when needed.
A pipeline shaped around your sales process. Toggle features. Watch the dashboard reshape. Or describe the part we haven't listed yet.
Every toggle on the left changes the live preview on the right. When the options run out, the boundary moment surfaces.
This is just the starting point. The real version is built around your terminology, your rules, your edge cases.