application public active Verified 2026-03-29

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
edge-crm

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

contacts.read

View CRM contacts

Resource pattern: none

contacts.write

Manage CRM contacts

Resource pattern: none

companies.read

View CRM companies

Resource pattern: none

companies.write

Manage CRM companies

Resource pattern: none

deals.read

View CRM deals

Resource pattern: none

deals.write

Manage CRM deals

Resource pattern: none

notes.read

View CRM notes

Resource pattern: none

notes.write

Manage CRM notes

Resource pattern: none

attachments.read

View CRM attachments

Resource pattern: none

attachments.write

Manage CRM attachments

Resource pattern: none

pipeline.read

View pipeline configuration

Resource pattern: none

pipeline.write

Manage pipeline configuration

Resource pattern: none

tasks.write

Manage CRM tasks

Resource pattern: none

properties.write

Manage property records

Resource pattern: none

listings.write

Manage property listings

Resource pattern: none

showings.write

Manage property showings

Resource pattern: none

offers.write

Manage property offers

Resource pattern: none

transactions.write

Manage CRM transactions

Resource pattern: none

documents.write

Manage CRM documents

Resource pattern: none

commissions.write

Manage CRM commissions

Resource pattern: none

Service permissions

contacts:read, contacts:write, deals:read, deals:write, activities:read, activities:write, reports:read

Data Ownership

d1

Binding: CRM_DB

Target: 00000000-0000-0000-0000-000000000000

Environment: default

Source: Applications/TopoloCRM/packages/backend/wrangler.toml

d1

Binding: CRM_DB

Target: cf93b0b6-8a56-4516-a0c7-4e2d8dee4157

Environment: stg

Source: Applications/TopoloCRM/packages/backend/wrangler.toml

r2

Binding: crm_attachments

Target: edge-crm-attachments-staging

Environment: stg

Source: Applications/TopoloCRM/packages/backend/wrangler.toml

d1

Binding: CRM_DB

Target: 77e9aeb0-fb0d-48a7-adb1-e0ce6700ab89

Environment: prod

Source: Applications/TopoloCRM/packages/backend/wrangler.toml

kv

Binding: CRM_KV

Target: 2bf87302ccb04e43bda3c946a1d7f15b

Environment: prod

Source: Applications/TopoloCRM/packages/backend/wrangler.toml

r2

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.