mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 08:31:08 -05:00
157 lines
2.8 KiB
Markdown
157 lines
2.8 KiB
Markdown
# Technical Context
|
|
|
|
## Architecture Overview
|
|
|
|
### Stack Components
|
|
- **Framework**: Django (MVT Architecture)
|
|
- **Frontend**: HTMX + AlpineJS + Tailwind CSS
|
|
- **Database**: Django ORM
|
|
- **Authentication**: Django Built-in Auth
|
|
|
|
## Technical Architecture
|
|
|
|
### Backend (Django)
|
|
1. Core Framework Features
|
|
- MVT pattern implementation
|
|
- ORM for data management
|
|
- Template system
|
|
- Authentication & permissions
|
|
- Admin interface
|
|
- URL routing
|
|
- Form processing
|
|
|
|
2. Data Layer
|
|
- Models & relationships
|
|
- Validation rules
|
|
- Signal handlers
|
|
- Database migrations
|
|
|
|
### Frontend Architecture
|
|
1. HTMX Integration
|
|
- Dynamic updates
|
|
- Partial page renders
|
|
- Server-side processing
|
|
- Progressive enhancement
|
|
|
|
2. AlpineJS Usage
|
|
- UI state management
|
|
- Component behaviors
|
|
- Event handling
|
|
- DOM manipulation
|
|
|
|
3. Tailwind CSS
|
|
- Utility-first styling
|
|
- Custom theme configuration
|
|
- Responsive design
|
|
- Dark mode support
|
|
|
|
## Integration Patterns
|
|
|
|
### Template System
|
|
1. Structure
|
|
- Base templates
|
|
- Model-specific partials
|
|
- Reusable components
|
|
- Template inheritance
|
|
|
|
2. HTMX Patterns
|
|
- Partial updates
|
|
- Server triggers
|
|
- Event handling
|
|
- Response processing
|
|
|
|
### State Management
|
|
1. Server-side
|
|
- Django sessions
|
|
- Database state
|
|
- Cache management
|
|
|
|
2. Client-side
|
|
- AlpineJS state
|
|
- Local storage
|
|
- HTMX state management
|
|
|
|
## Performance Requirements
|
|
|
|
### Frontend Targets
|
|
- First contentful paint < 1.5s
|
|
- Time to interactive < 2s
|
|
- Core Web Vitals compliance
|
|
- Progressive enhancement
|
|
- Latest 2 versions of major browsers
|
|
|
|
### Backend Optimization
|
|
- Database query optimization
|
|
- Caching strategy
|
|
- Asset optimization
|
|
- API response times
|
|
|
|
## Development Environment
|
|
|
|
### Required Tools
|
|
- Python with virtual environment
|
|
- Node.js (Tailwind build)
|
|
- Git version control
|
|
- VSCode IDE
|
|
|
|
### Configuration
|
|
- Environment variables
|
|
- Development settings
|
|
- Database setup
|
|
- Media handling
|
|
|
|
## Security Framework
|
|
|
|
### Authentication
|
|
- Django auth system
|
|
- Session management
|
|
- Permission levels
|
|
- User roles
|
|
|
|
### Data Protection
|
|
- CSRF protection
|
|
- XSS prevention
|
|
- SQL injection prevention
|
|
- Input validation
|
|
|
|
## Testing Strategy
|
|
|
|
### Backend Testing
|
|
- Django test runner
|
|
- Unit tests
|
|
- Integration tests
|
|
- Coverage requirements
|
|
|
|
### Frontend Testing
|
|
- Browser testing
|
|
- Performance metrics
|
|
- Accessibility testing
|
|
- User flow validation
|
|
|
|
## Deployment Process
|
|
|
|
### Environment Setup
|
|
- Production configuration
|
|
- Database migration
|
|
- Static file handling
|
|
- SSL/TLS setup
|
|
|
|
### Monitoring
|
|
- Error tracking
|
|
- Performance monitoring
|
|
- User analytics
|
|
- System health checks
|
|
|
|
## Documentation Requirements
|
|
|
|
### Code Documentation
|
|
- Python docstrings
|
|
- Type hints
|
|
- Component documentation
|
|
- API documentation
|
|
|
|
### System Documentation
|
|
- Setup guides
|
|
- Architecture docs
|
|
- Maintenance procedures
|
|
- Troubleshooting guides |