page:blueprints:b2b saas:asset library:django

B2B SaaS: asset library using Django

Summary

A asset library blueprint for b2b saas built with Django on Ample. Domain schema:

Public information:

Kept out of scope until handling is reviewed: customer data inside workspaces, usage and billing records, support attachments. Customer workspace data is tenant-scoped; isolation is application-enforced and no security certification is claimed.

Technical basis verified on Django: 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

Infrastructure Requirements

Prerequisites

Workflow Steps

  1. Model the b2b saas domain: Create the tables customer_workspaces, workspace_members, doc_versions, customer_assets, uploads. Keep the sensitive classes (customer data inside workspaces, usage and billing records, support attachments) out of this schema.
  2. Model assets linked to their owning group or workspace.
  3. Validate uploads and store them in the private bucket; link each object to its row.
  4. Authorize downloads by membership.
  5. Deploy: Run the synchronous deploy once and read the result. Re-running with no change is a no-op.
  6. Verify: Run the pattern self-test(s) from the example (/p/browser-file-uploads) and your own acceptance checks for the b2b saas workflow.

Success Checks

Limitations

Cost Estimate

Example

Django pattern fixture

Evidence Summary

Formats