A Django backend + admin-friendly UI for storing, tagging, and managing HTML/UI components (“templates”), including file attachments. Designed as a practical building block for a larger internal tools system (component catalogs, UI libraries, doc-style apps).
- Centralized component registry for reusable HTML/UI snippets
- Store rich metadata per component, including:
- Name / title
- Section / category (for grouping and navigation)
- Tags (for quick filtering and search)
- Status (e.g., draft/active/archived — depending on your workflow)
- Notes, usage guidance, and implementation instructions
- Designed to keep UI building blocks organized so you can reuse patterns across projects without re-inventing layouts.
- Run-and-view preview of saved component code directly in the UI
- Enables quick validation of:
- layout and spacing
- typography
- component structure
- “does this actually render correctly?”
- Makes the library practical for day-to-day use (you’re not just storing code—you’re storing working UI).
- One-click (or quick) ability to copy component code for use elsewhere
- Supports workflows like:
- copy into a Django template
- paste into a static HTML prototype
- reuse in another app/module
- Encourages “component reuse” in real projects instead of hunting through old files.
- Upload and attach files to a component (e.g.):
- images/icons used by the component
- sample documents
- JSON payload examples
- style references
- additional supporting assets
- Keeps component code and supporting resources bundled together so reuse is frictionless.
- Optimized for the “I need that snippet again” workflow:
- browse by section
- filter by tags/status
- open a component and immediately view preview + code
- Treats components like a library, not a dumping ground.
- Structured to support future features without major refactors, such as:
- versioning (track edits and restore prior versions) (work in progress)
- Runs locally with standard Django workflow:
makemigrations/migraterunserver
python -m venv .venv
source .venv/bin/activate # macOS/Linux
.venv\Scripts\activate # Windowspip install -r requirements.txtcp .env.example .envpython manage.py makemigrations
python manage.py migratepython manage.py runserver
Open: http://127.0.0.1:8000/Alternatively, you can use the provided Makefile:
make setup
make run