mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 03:51:09 -05:00
2.3 KiB
2.3 KiB
description, author, version, globs, tags
| description | author | version | globs | tags | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Condensed ThrillWiki Django project context with architecture, patterns, and mandatory Context7 integration | ThrillWiki Development Team | 2.1 |
|
|
ThrillWiki Django Project Context
Project Overview
Theme park database platform with Django REST Framework serving 120+ API endpoints for parks, rides, companies, and users.
Core Architecture
- Backend: Django 5.1+, DRF, PostgreSQL+PostGIS, Redis, Celery
- Frontend: HTMX (V2+) + AlpineJS + Tailwind CSS (V4+) + Django-Cotton
- 🚨 ABSOLUTELY NO Custom JS - use HTMX + AlpineJS ONLY
- Clean, simple UX preferred
- Media: Cloudflare Images with Direct Upload
- Tracking: pghistory, TrackedModel base class
- Choices: Rich Choice Objects (NEVER Django tuple choices)
Development Patterns
- Models: TrackedModel inheritance, SluggedModel for slugs, PostGIS for location
- APIs: Nested URLs (
/parks/{slug}/rides/{slug}/), mandatory trailing slashes - Commands:
uv add <package>,uv run manage.py <command>(NOT pip/python) - Choices:
RichChoiceField(choice_group="name", domain="domain")MANDATORY
Business Rules
🚨 CRITICAL: Company role separation - Parks (OPERATOR/PROPERTY_OWNER only), Rides (MANUFACTURER/DESIGNER only)
Context7 MCP Integration (MANDATORY)
Required Libraries
tailwindcss, django, django-cotton, htmx, alpinejs, django-rest-framework, postgresql, postgis, redis
Workflow
- ALWAYS call
Context7:resolve-library-idfirst - Then
Context7:get-library-docswith topic parameter - Required for: new models/APIs, HTMX functionality, AlpineJS components, Tailwind layouts, Cotton components, debugging, optimizations
Example Topics
- tailwindcss: responsive, flexbox, grid
- django: models, views, forms
- htmx: hx-get, hx-post, hx-swap, hx-target
- alpinejs: x-data, x-show, x-if, x-for
Standards
-
All models inherit TrackedModel
-
Real database data only (NO MOCKING)
-
RichChoiceField over Django choices
-
Progressive enhancement required
-
We prefer to edit existing files instead of creating new ones.
YOU ARE STRICTLY AND ABSOLUTELY FORBIDDEN FROM IGNORING, BYPASSING, OR AVOIDING THESE RULES IN ANY WAY WITH NO EXCEPTIONS!!!