page:blueprints:developer tools:documentation site:django

Developer tools: documentation site using Django

Summary A documentation site blueprint for developer tools built with Django on Ample. Domain schema:

Kept out of scope until handling is reviewed: customer API keys and usage logs, private integration details. API keys and usage logs are secrets or personal data and should be kept out of documentation workflows.

Technical basis verified on Django: a workspace-scoped table, an explicit state machine (draft to review to published) that rejects invalid transitions, and a cross-workspace read that returns nothing (transitions=true isolation=true).

Resource Requirements

Prerequisites

  1. A Django project (pip install into .ample/python from requirements.txt, then waitress serving project.wsgi from run.py reading PORT on the python-3.12 template)
  2. A PostgreSQL driver reading DATABASE_URL (auto-provisioned when omitted)
  3. Bucket credentials from ample bucket create passed as encrypted S3_* environment variables and a published bucket for public assets (CDN_*)
  4. A review of which developer tools data classes may be handled at all; this blueprint models public information only.

Workflow Steps

  1. Model the developer tools domain: Create the tables customer_workspaces, doc_versions, sdk_releases, customer_assets, state_transitions. Sensitive classes (customer API keys and usage logs, private integration details) should be kept out of this schema.
  2. Model versioned documents with a state machine (draft, review, published) scoped to a product version.
  3. Publish assets for released versions to the CDN bucket.
  4. Serve only published versions publicly.
  5. Deploy and verify the version list and a published page.
  6. Verify functionality by running the appropriate self-tests and acceptance checks for the developer tools workflow.

Cost Estimate

Limitations

Success Checks

Examples

Next Actions