# General dentistry: knowledge base using Django

## Summary
A knowledge base blueprint for general dentistry built with Django on Ample. Domain schema:
- **services** (code, name, description, duration_minutes, price_from): the treatments a practice offers;
- **locations** (name, address, phone, opening_hours, accessibility_notes): each practice location;
- **dentists** (name, registration_number, specialties, location_id): the clinicians listed publicly;
- **insurance_plans** (name, accepted_at_location_id): plans accepted per location;
- **asset_versions** (version, cdn_key, published_at): versioned assets served from the CDN bucket.

Public information includes:
- Service catalog with prices, locations, hours, and parking
- Clinician profiles and registrations
- Accepted insurance plans

**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
- **Framework**: Django
- **Workload**: Knowledge base
- **Industry**: General dentistry
- **Release Status**: published
- **Support Status**: verified
- **Execution Status**: ready

## 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
- App responds on its public URL.
- Versioned-static-assets self-test from the example (/p/versioned-static-assets).

## Limitations
- The general dentistry schema and workflow are an original design for this blueprint and were not executed as a separate application.
- No health, financial, privacy, or other compliance claim is made. Patient data is health data. Keep it out of these workflows until handling requirements (e.g., HIPAA in the US) have been reviewed; nothing here establishes compliance.
- Verified on the python-3.12 template at s-1vcpu-1gb; other configurations are unknown or unverified.

## Cost Estimate
- **Currency**: USD
- **Monthly Amount**: 5.0
- **Basis**: Size prices from pricing.toml (loaded by the API) at build revision 1ac5595375130d45290090e82ed0f554ccd45405-dirty
- **Components**: app server, size: s-1vcpu-1gb, quantity: 1.0, monthlyAmount: 5.0.
