Simple-Dom-Control Documentation
Simple-Dom-Control, usually shortened to SDC, is a Django-centered framework
for building server-rendered applications with a structured client runtime.
It combines:
Django views and templates for server-side HTML generation
JavaScript controllers for client-side behavior and DOM orchestration
model synchronization over WebSockets
CLI tooling that generates controllers, models, and project scaffolding
This documentation now covers both parts of the system:
the Python/Django package
simpledomcontrolthe JavaScript runtime
SimpleDomControlClient
Guides
- What is SDC
- Installation
- Getting Started
- Core of SDC
- First App
- The one idea to hold onto
- Project setup
- New Controller
- Basic Navigation
- DB Model
- Client-Side Data Models
- Wiring up the Catalog
- Server methods on a controller view
- Registering the model on the client
- Live updates over WebSocket
- The “My List” page
- Book details and modal navigation
- Editing books as staff
- Named forms
- Feedback and auto-submitting forms
- Login, logout and groups
- URL parameters and
sdc_update_url - Lifecycle recap
- Safe DOM updates
- Testing the app
- General styling and HTML header
- Running the app
- Cheat sheet
- Common gotchas
- What to explore next
- How to navigate?
Runtime and API
- The Client Runtime
- SDC Controllers
- SDC Models
- Creating a model
- Server model metadata
- Authorization
- Client-side model architecture
- Querysets in controllers
SdcQuerySetbehavior- Loading and re-synchronizing data
- Other queryset methods
- Server-rendered views
- Forms and
SdcModelsynchronization - How rendered forms are attached
- Validation errors
- Relationships
- Uploads and connection lifecycle