page:blueprints:management consultancies:form collection:laravel

Management consultancies: form collection using Laravel

Summary

A form collection blueprint for management consultancies built with Laravel on Ample. Domain schema:

Public information: service offerings and case studies (anonymized), consultant profiles, engagement model. Kept out of scope until handling is reviewed: client strategy documents, financial models, interview notes. Client strategy material is confidential; authorization is modeled per engagement and no compliance claim is made. Technical basis verified on Laravel: content-type and size validation that rejects disallowed files, an object written to a private bucket and a row linking the record to the object key (reject=ok upload=ok linked=ok).

Representative Queries

Resource Requirements

Infrastructure Requirements

  1. Compute

    • Status: Verified
    • Summary: Apps run in isolated x86_64 Firecracker microVMs that auto-pause when idle and wake on request; sizes are the priced VM sizes.
  2. Postgres

    • Status: Verified
    • Summary: Managed PostgreSQL 16 runs in its own microVM and is auto-provisioned when an app needs a database and no DATABASE_URL is supplied.
  3. S3-compatible object storage

    • Status: Verified
    • Summary: Buckets are S3-compatible with issued credentials; PutObject and GetObject are verified by canary. Other S3 operations are not verified.

Workflow Steps

  1. Model the management consultancies domain
    Create the tables client_entities, engagements, workstreams, deliverables, uploads. Client organizations live in client_entities; keep the sensitive classes (client strategy documents, financial models, interview notes) out of this schema.

  2. Workflow step 1
    Model document requests per engagement with due dates and status.

  3. Workflow step 2
    Validate uploaded files (type, size) before storing them in the private bucket and linking them to the request.

  4. Workflow step 3
    Authorize uploads by client entity.

  5. Workflow step 4
    Deploy and verify rejection of disallowed files and a linked upload.

  6. Deploy
    Run the synchronous deploy once and read the result. Re-running with no change is a no-op.

    ample deploy . --name  --public --env S3_ENDPOINT=... --env S3_REGION=... --env S3_BUCKET=... --env S3_ACCESS_KEY_ID=... --env S3_SECRET_ACCESS_KEY=...
    
  7. Verify
    Run the pattern self-test(s) from the example (/p/browser-file-uploads) and your own acceptance checks for the management consultancies workflow.

    ample logs  --kind build
    

Cost Estimate

Next Actions