TopoloCRM
CRM workflows, records, and automation services exposed through the platform auth layer.
Documentation Map
What It Is
CRM workflows, records, and automation services exposed through the platform auth layer.
<!-- EDGE DEVELOPMENT TOOLCHAIN EXPLANATION:
Why Wrangler v4 + Miniflare + Vitest is Perfect for Edge Development:
๐ ๏ธ WRANGLER v4 (4.22.0+): - Production-parity local development with `wrangler dev` - Real Cloudflare Runtime API simulation (not Node.js polyfills) - Hot reload with sub-second restarts for rapid iteration - Native TypeScript support with automatic type generation - Zero-config compatibility with all CF services (D1, KV, R2, Durable Objects) - Built-in esbuild bundling optimized for Workers runtime - Environment-aware deployments (staging/production) with single command
Architecture
Owners: crm
Source repos: Applications/TopoloCRM
Dependencies: topolo-auth, topolo-one
Repo shape
- Applications/TopoloCRM/CI_SETUP_COMPLETE.md
- Applications/TopoloCRM/POSTMAN_COLLECTION_README.md
- Applications/TopoloCRM/README.md
- Applications/TopoloCRM/all-contacts.csv
- Applications/TopoloCRM/app/
- Applications/TopoloCRM/backend.log
- Applications/TopoloCRM/docs/
- Applications/TopoloCRM/frontend.log
- Applications/TopoloCRM/infra/
- Applications/TopoloCRM/package-lock.json
- Applications/TopoloCRM/package.json
- Applications/TopoloCRM/packages/
- Applications/TopoloCRM/pnpm-lock.yaml
- Applications/TopoloCRM/postman-collection.json
- Applications/TopoloCRM/scripts/
Runtime Surfaces
Hosts:
https://crm.topolo.app Config: Applications/TopoloCRM/packages/backend/wrangler.toml
Main: index.ts
Routes: workers.dev or asset-only surface
API Reference
Coverage: OpenAPI-backed
Source: Applications/TopoloCRM/packages/backend/openapi.yaml
Source exists in repo: yes
App API page: /reference/apps/topolo-crm
Generated OpenAPI page: /reference/generated/topolo-crm
Operations: 23
Security schemes: none declared
Auth and Permissions
Depends on Topolo Auth: yes
Service IDs:
srv_iCwM4jGXcwlj API key scopes
View CRM contacts
Resource pattern: none
Manage CRM contacts
Resource pattern: none
View CRM companies
Resource pattern: none
Manage CRM companies
Resource pattern: none
View CRM deals
Resource pattern: none
Manage CRM deals
Resource pattern: none
View CRM notes
Resource pattern: none
Manage CRM notes
Resource pattern: none
View CRM attachments
Resource pattern: none
Manage CRM attachments
Resource pattern: none
View pipeline configuration
Resource pattern: none
Manage pipeline configuration
Resource pattern: none
Manage CRM tasks
Resource pattern: none
Manage property records
Resource pattern: none
Manage property listings
Resource pattern: none
Manage property showings
Resource pattern: none
Manage property offers
Resource pattern: none
Manage CRM transactions
Resource pattern: none
Manage CRM documents
Resource pattern: none
Manage CRM commissions
Resource pattern: none
Service permissions
contacts:read, contacts:write, deals:read, deals:write, activities:read, activities:write, reports:read
Data Ownership
Binding: CRM_DB
Target: 00000000-0000-0000-0000-000000000000
Environment: default
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Binding: CRM_DB
Target: cf93b0b6-8a56-4516-a0c7-4e2d8dee4157
Environment: stg
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Binding: crm_attachments
Target: edge-crm-attachments-staging
Environment: stg
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Binding: CRM_DB
Target: 77e9aeb0-fb0d-48a7-adb1-e0ce6700ab89
Environment: prod
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Binding: CRM_KV
Target: 2bf87302ccb04e43bda3c946a1d7f15b
Environment: prod
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Binding: crm_attachments
Target: edge-crm-attachments-production
Environment: prod
Source: Applications/TopoloCRM/packages/backend/wrangler.toml
Queues / Cron / Workflows
Queue bindings:
No queue bindings were detected.
Cron triggers
No cron triggers were detected.
Workflow signals
No explicit queue/workflow script or cron signal was discovered.
Environment Variables and Bindings
Environment variables:
API_KEY_HASH_ITERATIONS API_KEY_PREFIX ENVIRONMENT NODE_ENV SALT_ROUNDS SKIP_AUTH account_id All wrangler bindings
-
CRM_DB(d1) -> 00000000-0000-0000-0000-000000000000 -
CRM_DB(d1) -> cf93b0b6-8a56-4516-a0c7-4e2d8dee4157 [stg] -
crm_attachments(r2) -> edge-crm-attachments-staging [stg] -
CRM_DB(d1) -> 77e9aeb0-fb0d-48a7-adb1-e0ce6700ab89 [prod] -
CRM_KV(kv) -> 2bf87302ccb04e43bda3c946a1d7f15b [prod] -
crm_attachments(r2) -> edge-crm-attachments-production [prod]
Deployments
Deployment environments: dev, stg, prod
Routes: workers.dev or Pages-only delivery
Observability enabled: yes
Wrangler surfaces
- Applications/TopoloCRM/packages/backend/wrangler.toml -> edge-crm (assets ./public)
Build and deploy commands
-
buildโ Applications/TopoloCRM/app/package.json :: vite build -
previewโ Applications/TopoloCRM/app/package.json :: vite preview -
deploy:stgโ Applications/TopoloCRM/app/package.json :: VITE_API_URL=https://edge-crm-stg.topolo.workers.dev/api VITE_APP_NAME=NodoCRM VITE_APP_VERSION=1.0.0 npm run build && npx wrangler pages deploy dist --project-name=topolo-crm-frontend-staging -
deploy:prodโ Applications/TopoloCRM/app/package.json :: VITE_API_URL=https://crm-api.topolo.app/api VITE_APP_NAME=NodoCRM VITE_APP_VERSION=1.0.0 npm run build && npx wrangler pages deploy dist --project-name=topolo-crm-frontend -
buildโ Applications/TopoloCRM/package.json :: npm run build --workspace=packages/backend -
build:appโ Applications/TopoloCRM/package.json :: npm run build --workspace=app -
build:allโ Applications/TopoloCRM/package.json :: npm run build && npm run build:app -
deploy:stgโ Applications/TopoloCRM/package.json :: npm run deploy:stg --workspace=packages/backend -
deploy:prodโ Applications/TopoloCRM/package.json :: npm run deploy:prod --workspace=packages/backend -
deploy:app:stgโ Applications/TopoloCRM/package.json :: npm run deploy:stg --workspace=app -
deploy:app:prodโ Applications/TopoloCRM/package.json :: npm run deploy:prod --workspace=app -
deploy:all:stgโ Applications/TopoloCRM/package.json :: npm run deploy:stg && npm run deploy:app:stg -
buildโ Applications/TopoloCRM/packages/backend/package.json :: tsc --noEmit && echo 'Build validation successful' -
build:deployโ Applications/TopoloCRM/packages/backend/package.json :: wrangler deploy --dry-run -
deploy:stgโ Applications/TopoloCRM/packages/backend/package.json :: wrangler deploy --env stg -
deploy:prodโ Applications/TopoloCRM/packages/backend/package.json :: wrangler deploy --env prod
Failure Modes
No default failure-mode heuristics are currently flagged for this system.
Debugging Runbooks
Start with these entrypoints:
- Applications/TopoloCRM/packages/backend/wrangler.toml
- Applications/TopoloCRM/packages/backend/openapi.yaml
- Applications/TopoloCRM/README.md
- Applications/TopoloCRM/app/package.json
- Applications/TopoloCRM/package.json
- Applications/TopoloCRM/packages/backend/package.json
Linked runbooks
Change Log / Verification
Lifecycle: active
Last verified: 2026-03-29
Any code change to this system is expected to update the canonical docs in Websites/docs and refresh the verification date.