page:blueprints:general dentistry:knowledge base:django

General dentistry: knowledge base using Django

Summary

A knowledge base blueprint for general dentistry built with Django on Ample. Domain schema:

Public information includes:

Kept out of scope until handling is reviewed: patient identity and contact details, clinical records, x-rays and treatment notes, appointment history tied to a person. Patient data is health data. Keep it out of these workflows until handling requirements (e.g., HIPAA in the United States) have been reviewed; nothing here establishes compliance.

Framework

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. Bucket credentials from ample bucket create passed as encrypted S3_* environment variables and a published bucket for public assets (CDN_*)
  3. A review of which general dentistry data classes may be handled at all; this blueprint models public information only

Workflow Steps

  1. Model the general dentistry domain: Create the tables services, locations, dentists, insurance_plans, asset_versions. Sensitive classes (patient identity and contact details, clinical records, x-rays and treatment notes, appointment history tied to a person) should be kept out of this schema.
  2. Workflow step 1: Model articles and categories as tables keyed to the public catalog entities.
  3. Workflow step 2: Build the site with versioned assets served from the CDN bucket.
  4. Workflow step 3: Keep articles free of any sensitive data class.
  5. Workflow step 4: Deploy and verify the public URL and the CDN asset URL.
  6. Deploy: Run the synchronous deploy once and read the result. Re-running with no change is a no-op.
  7. Verify: Run the pattern self-test(s) from the example (/p/versioned-static-assets) and your own acceptance checks for the general dentistry workflow.

Technical Basis

Technical basis verified on Django: a versioned, immutable-cached asset uploaded to a published bucket and served from the CDN URL alongside the app's own public HTTPS URL.

Success Checks

Limitations

Cost Estimate