How ppanchal5698/cbc-final works
CBC Estimating Copilot is a bid-estimating application: estimators upload bid documents, review extracted openings and takeoffs, match and price items, then prepare a proposal. The backend is a FastAPI modular monolith with a separate worker that claims Mongo-backed jobs; the web app proxies API requests. The graph preserves the documented pipeline, catalog, pricing, and proposal capabilities. Some source excerpts are partial, so uncertain internal dispatch links are omitted.
Main entry points: main.py FastAPI API · storage.py Project files · mongo.py MongoDB · pipeline.py Pipeline runner
Components 16
Estimator interface
- Ops-Hub web
apps/web/app/(app)/bids/[code]/intake/page.tsx
Document processing
- Document intake
apps/backend/src/cbc/modules/intake - Extraction and review
apps/backend/src/cbc/modules/extraction
Bid workflow
- Bid and autopilot
apps/backend/src/cbc/modules/projects - Pipeline runner
apps/backend/src/cbc/modules/projects/api/pipeline.py
Catalog and pricing
- Product catalog
apps/backend/src/cbc/modules/catalog - Pricing rules
apps/backend/src/cbc/modules/pricing
Quote and proposal
- Quote and proposal
apps/backend/src/cbc/modules/quoting
Runtime operations
- FastAPI API
apps/backend/src/cbc/app/main.py - Jobs and settings
apps/backend/src/cbc/modules/ops - Background worker
apps/backend/src/cbc/app/worker.py - MongoDB
apps/backend/src/cbc/shared/mongo.py - Project files
apps/backend/src/cbc/shared/storage.py - S3 storage
apps/backend/src/cbc/shared/storage_backends.py
Other components
- Estimator
- Claude provider
Connections 20
- Estimator → Ops-Hub web: uses
- Ops-Hub web → FastAPI API: proxies requests
- FastAPI API → Document intake: handles intake
- FastAPI API → Extraction and review: handles review
- FastAPI API → Bid and autopilot: handles bids
- FastAPI API → Product catalog: serves catalog
- FastAPI API → Pricing rules: serves pricing
- FastAPI API → Quote and proposal: serves quotes
- FastAPI API → Jobs and settings: manages jobs
- Document intake → Project files: stores documents
- Bid and autopilot → Pipeline runner: starts passes
- Pipeline runner → Jobs and settings: coordinates jobs
- Background worker → MongoDB: claims jobs
- Jobs and settings → MongoDB: persists job state
- Pipeline runner → Claude provider: runs passes
- Extraction and review → Project files: reads and writes artifacts
- Quote and proposal → Project files: stores proposal artifacts
- Product catalog → MongoDB: reads catalog data
- Pricing rules → MongoDB: reads pricing data
- Project files → S3 storage: syncs optionally