Better decisions, backed by evidence.
Import bids, review responsibilities, then compare. No findings are approved automatically. Projects are held in this browser until you export a backup.
Project workspace
Bids and findings stay separate by project. Compare proposals within one trade at a time.
Workflow
1. Import a proposal → 2. Optionally analyze with AI → 3. Confirm source-linked findings → 4. Compare verified bids.
Executive bid summaries
Current bids
Import proposals
PDF (selectable text), DOCX, XLSX, CSV, TXT and MD. PDF/Word/Excel parsers may need internet access unless their libraries are bundled. Scanned documents require OCR and are not supported by this build.
Choose a file
Files are read in the browser. Document text is sent to the AI Worker only when you click Analyze with AI.
Optional direct PDF + scanned OCR
Requires a separately hosted, private extraction service. Your PDF is sent to that service only when you press Extract using service. Do not use an untrusted service for confidential bids.
Imports page-by-page text exported by the reference extraction engine. No Python installation is required to view the result, but generating this JSON currently requires the developer engine. This is not automatic browser OCR.
Evidence review
Approve only what the source supports. Missing evidence and partial quotes are flagged; they are not accepted automatically.
Pending findings
Bid comparison
Only saved bids are shown; illustrative electrical contractors are never mixed into real projects. Adjustments are entered separately and are not inferred from exclusions.
| Bidder | Base bid | Approved adjustments | Comparison total | Verified items |
|---|
What does “adjustment” mean?
An adjustment is an explicit, reviewed comparison amount, not a document allowance. Included allowances and unselected alternates have a $0 automatic impact. Do not treat a lower comparison number as an award recommendation.
Optional AI connection
AI analysis is available only after you deploy your own Cloudflare Worker and add your API key as a Worker secret. Never enter an API key in this page.
No endpoint is preconfigured. The URL is kept in memory for this tab only. An API provider may charge per request. Do not use another person's Worker.
Security limitations
Worker secrets protect the provider key from page source. However, an openly accessible Worker endpoint can still be abused and incur charges. This starter Worker requires an additional request token, restricts origins, limits input size, and disables provider retention where supported. These controls are not a full customer-authentication or billing solution. Production use requires user authentication, rate limits, and quotas.