# Construction contractors: public directory using Laravel

## Summary
A public directory blueprint for construction contractors built with Laravel on Ample. Domain schema:
- **listings** (reference, project_type, location, publishing_status, agency_id): showcase projects with publishing status;
- **agencies** (name, license_number, service_region): branches or divisions;
- **vendors** (name, trade, agency_id, prequalified): subcontractors and suppliers per branch;
- **reports** (agency_id, period, object_key, generated_at): branch progress reports;
- **state_transitions** (record_type, from_state, to_state): the allowed state machine.

Public information includes published project showcases, services and regions, licenses, and insurance summary. Safety and bid data are confidential; only published showcases and branch reporting are modeled.

## Technical Basis
Verified on Laravel with:
- a workspace-scoped table;
- an explicit state machine (draft to review to published) that rejects invalid transitions;
- a cross-workspace read that returns nothing (transitions=true, isolation=true).

## Resource Requirements
- **Compute**: x86_64 Firecracker microVMs that auto-pause when idle.
- **Postgres**: Managed PostgreSQL 16 runs in isolation with auto-provisioning when needed.
- **CDN**: The host serves objects from published buckets.

## Framework
- **Framework**: Laravel
- **Workload**: Public directory
- **Industry**: Construction contractors

## Workflow Steps
1. Model the construction contractors domain:
   - Create the tables listings, agencies, vendors, reports, state_transitions. Keep sensitive classes out of this schema.
2. Model listings with a publishing_status state machine scoped to the agency.
3. Serve only published listings, with media from the CDN bucket.
4. Enforce the agency scope on every query.
5. Deploy and verify a published listing; ensure unpublished listings are absent.
6. Verify by running tests and acceptance checks.

## Example
### Laravel pattern fixture
Verified relational records basis for this blueprint.

## Limitations
- The construction contractors schema and workflow were not executed as a separate application.
- No claims for compliance or health; only published showcases and reports are modeled.
- Verified configurations exist; regional and request-duration limits are unverified.

## Cost Estimate
- **Currency**: USD
- **Monthly Amount**: 10.0
- Basis: size prices from pricing.toml at build revision.

## Next Actions
- **Browse the catalog index**: `/v1/catalog`
- **Search published recipes**: `/v1/catalog/search`
- **Prepare deployment plan**: `/v1/catalog/plan`-
