Start Here
RidgeCRM developer platform
RidgeCRM is a programmable, self-hosted CRM platform with its own app, automation, metadata, and integration model.
What RidgeCRM is
RidgeCRM is more than a collection of CRM screens. It is a multi-tenant customer platform with standard CRM objects, configurable metadata, a runtime app shell, and source-owned extension points.
RidgeCRM is built around clear platform primitives: objects, layouts, apps, paths, approvals, triggers, components, and same-host APIs. The implementation is RidgeCRM-native: SvelteKit, Prisma, JavaScript services, web components, and source-owned extensions.
- Admins configure objects, fields, layouts, validation, apps, sales processes, approvals, telephony, email, and quick actions in Setup.
- Developers extend behavior with JavaScript trigger handlers, webhook triggers, custom web components, REST APIs, and source-level services.
- Integrators use `/api/v1` with Bearer JWT auth and `X-Organization-ID` to keep every request inside the correct tenant boundary.
Model
Define standard or custom objects, fields, layouts, validation, and record types.
Compose
Build workspace apps, pages, actions, paths, reports, and dashboards.
Automate
Use rules, approvals, JavaScript triggers, and webhooks for business behavior.
Integrate
Call `/api/v1`, stream realtime events, send email, and connect CTI/telephony.
Developer surfaces
The public docs should make each extension surface obvious and show how they work together. A sales path can expose quick actions. A RidgeCRM page can host a custom component. A trigger can enrich a record after create. A CTI event can screen-pop a contact and then write call history.
REST API
Same-host `/api/v1` endpoints for core CRM data, platform metadata, workflow, reports, files, email, telephony, and realtime events.
Setup metadata
Admin-owned configuration for fields, layouts, validation, apps, sales paths, approvals, profiles, and integrations.
Source-owned code
JavaScript trigger handlers, services, web component bundles, and app-level customizations managed in your fork.