{"id":13770947,"url":"https://github.com/app-generator/sample-django-htmlx-mkit","last_synced_at":"2025-06-22T23:07:03.852Z","repository":{"id":100503232,"uuid":"487807728","full_name":"app-generator/sample-django-htmlx-mkit","owner":"app-generator","description":"Django HTMLx - Material Kit Design (Open-Source) | AppSeed","archived":false,"fork":false,"pushed_at":"2022-05-04T05:27:07.000Z","size":6523,"stargazers_count":18,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-06-15T10:14:30.765Z","etag":null,"topics":["appseed-sample","django-application","django-htmx","django-sample","htmlx","htmx-django"],"latest_commit_sha":null,"homepage":"https://appseed.us","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/app-generator.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-02T10:46:03.000Z","updated_at":"2024-12-04T22:11:31.000Z","dependencies_parsed_at":"2023-05-15T11:30:24.132Z","dependency_job_id":null,"html_url":"https://github.com/app-generator/sample-django-htmlx-mkit","commit_stats":null,"previous_names":[],"tags_count":1,"template":true,"template_full_name":"app-generator/django-material-kit","purl":"pkg:github/app-generator/sample-django-htmlx-mkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Fsample-django-htmlx-mkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Fsample-django-htmlx-mkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Fsample-django-htmlx-mkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Fsample-django-htmlx-mkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/app-generator","download_url":"https://codeload.github.com/app-generator/sample-django-htmlx-mkit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/app-generator%2Fsample-django-htmlx-mkit/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261380905,"owners_count":23149966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appseed-sample","django-application","django-htmx","django-sample","htmlx","htmx-django"],"created_at":"2024-08-03T17:00:45.287Z","updated_at":"2025-06-22T23:06:58.816Z","avatar_url":"https://github.com/app-generator.png","language":"SCSS","readme":"# Django `HTMLX` Material Kit\n\n`Open-Source` sample that uses **Django and HTMLx** for the frontend logic. For newcomers, `Django` is a leading web framework powered by Python and `HTMLx` is a lightweight JS utility library that allows accessing AJAX, CSS Transitions, WebSockets, and Server-Sent Events directly in HTML. \nDesing is provided by `Material Kit 2`, a modern Boostrap 5 desing (also free).\n\n\u003cbr /\u003e\n\n\u003e **Features**\n\n- `Up-to-date` Dependencies\n- Tech Stack:\n  - `Django`: manages authentication and routing\n  - `HTMLx`: manages forms: `Login`, `Register` and `Contact`\n  - `Bootstrap 5`: UI \u0026 presentation layer\n- `Auth`: Sign IN, Sign UP\n- `Misc`: SQLite DB, SQLAlchemy, Forms Validation\n\n\u003cbr /\u003e\n\n\u003e **Links**\n\n- 👉 More [Django Apps](https://appseed.us/apps/django/) and [Dashboards](https://appseed.us/admin-dashboards/Django/) provided by AppSeed\n- 👉 Free [Support](https://appseed.us/support/) via Email and [Discord](https://discord.gg/fZC6hup).\n\n\u003cbr /\u003e\n\n## ✨ Quick Start in `Docker`\n\n\u003e Get the code\n\n```bash\n$ git clone https://github.com/app-generator/sample-django-htmlx-mkit.git\n$ cd sample-django-htmlx-mkit\n```\n\n\u003e Start the app in Docker\n\n```bash\n$ docker-compose up --build \n```\n\nVisit `http://localhost:85` in your browser. The app should be up \u0026 running.\n\n\u003cbr /\u003e\n\n![Django Material Kit 2 - Starter provided by AppSeed.](https://user-images.githubusercontent.com/51070104/139474054-a223e8e0-d441-4f9f-8237-627a77bdd49c.gif)\n\n\u003cbr /\u003e\n\n## ✨ How to use it\n\n```bash\n$ # Get the code\n$ git clone https://github.com/app-generator/sample-django-htmlx-mkit.git\n$ cd sample-django-htmlx-mkit\n$\n$ # Virtualenv modules installation (Unix based systems)\n$ virtualenv env\n$ source env/bin/activate\n$\n$ # Virtualenv modules installation (Windows based systems)\n$ # virtualenv env\n$ # .\\env\\Scripts\\activate\n$\n$ # Install modules - SQLite Storage\n$ pip3 install -r requirements.txt\n$\n$ # Create tables\n$ python manage.py makemigrations\n$ python manage.py migrate\n$\n$ # Start the application (development mode)\n$ python manage.py runserver # default port 8000\n$\n$ # Start the app - custom port\n$ # python manage.py runserver 0.0.0.0:\u003cyour_port\u003e\n$\n$ # Access the web app in browser: http://127.0.0.1:8000/\n```\n\n\u003e Note: To use the app, please access the registration page and create a new user. After authentication, the app will unlock the private pages.\n\n\u003cbr /\u003e\n\n## ✨ Code-base structure\n\nThe project is coded using a simple and intuitive structure presented bellow:\n\n```bash\n\u003c PROJECT ROOT \u003e\n   |\n   |-- core/                               # Implements app configuration\n   |    |-- settings.py                    # Defines Global Settings\n   |    |-- wsgi.py                        # Start the app in production\n   |    |-- urls.py                        # Define URLs served by all apps/nodes\n   |\n   |-- apps/\n   |    |\n   |    |-- home/                          # A simple app that serve HTML files\n   |    |    |-- views.py                  # Serve HTML pages for authenticated users\n   |    |    |-- urls.py                   # Define some super simple routes  \n   |    |\n   |    |-- authentication/                # Handles auth routes (login and register)\n   |    |    |-- urls.py                   # Define authentication routes  \n   |    |    |-- views.py                  # Handles login and registration  \n   |    |    |-- forms.py                  # Define auth forms (login and register) \n   |    |\n   |    |-- static/\n   |    |    |-- \u003ccss, JS, images\u003e         # CSS files, Javascripts files\n   |    |\n   |    |-- templates/                     # Templates used to render pages\n   |         |-- includes/                 # HTML chunks and components\n   |         |    |-- navigation.html      # Top menu component\n   |         |    |-- sidebar.html         # Sidebar component\n   |         |    |-- footer.html          # App Footer\n   |         |    |-- scripts.html         # Scripts common to all pages\n   |         |\n   |         |-- layouts/                   # Master pages\n   |         |    |-- base-fullscreen.html  # Used by Authentication pages\n   |         |    |-- base.html             # Used by common pages\n   |         |\n   |         |-- accounts/                  # Authentication pages\n   |         |    |-- login.html            # Login page\n   |         |    |-- register.html         # Register page\n   |         |\n   |         |-- home/                      # UI Kit Pages\n   |              |-- index.html            # Index page\n   |              |-- 404-page.html         # 404 page\n   |              |-- *.html                # All other pages\n   |\n   |-- requirements.txt                     # Development modules - SQLite storage\n   |\n   |-- .env                                 # Inject Configuration via Environment\n   |-- manage.py                            # Start the app - Django default start script\n   |\n   |-- ************************************************************************\n```\n\n\u003cbr /\u003e\n\n\u003e The bootstrap flow\n\n- Django bootstrapper `manage.py` uses `core/settings.py` as the main configuration file\n- `core/settings.py` loads the app magic from `.env` file\n- Redirect the guest users to Login page\n- Unlock the pages served by *app* node for authenticated users\n\n\u003cbr /\u003e\n\n## ✨ Recompile CSS\n\nTo recompile SCSS files, follow this setup:\n\n\u003cbr /\u003e\n\n**Step #1** - Install tools\n\n- [NodeJS](https://nodejs.org/en/) 12.x or higher\n- [Gulp](https://gulpjs.com/) - globally \n    - `npm install -g gulp-cli`\n- [Yarn](https://yarnpkg.com/) (optional) \n\n\u003cbr /\u003e\n\n**Step #2** - Change the working directory to `assets` folder\n\n```bash\n$ cd apps/static/assets\n```\n\n\u003cbr /\u003e\n\n**Step #3** - Install modules (this will create a classic `node_modules` directory)\n\n```bash\n$ npm install\n// OR\n$ yarn\n```\n\n\u003cbr /\u003e\n\n**Step #4** - Edit \u0026 Recompile SCSS files \n\n```bash\n$ gulp scss\n```\n\nThe generated file is saved in `static/assets/css` directory.\n\n\u003cbr /\u003e \n\n## ✨ Deployment\n\nThe app is provided with a basic configuration to be executed in [Docker](https://www.docker.com/), [Gunicorn](https://gunicorn.org/), and [Waitress](https://docs.pylonsproject.org/projects/waitress/en/stable/).\n\n### [Gunicorn](https://gunicorn.org/)\n---\n\nGunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX.\n\n\u003e Install using pip\n\n```bash\n$ pip install gunicorn\n```\n\u003e Start the app using gunicorn binary\n\n```bash\n$ gunicorn --bind=0.0.0.0:8001 core.wsgi:application\nServing on http://localhost:8001\n```\n\nVisit `http://localhost:8001` in your browser. The app should be up \u0026 running.\n\n\n\u003cbr /\u003e\n\n### [Waitress](https://docs.pylonsproject.org/projects/waitress/en/stable/)\n---\n\nWaitress (Gunicorn equivalent for Windows) is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones that live in the Python standard library.\n\n\u003e Install using pip\n\n```bash\n$ pip install waitress\n```\n\u003e Start the app using [waitress-serve](https://docs.pylonsproject.org/projects/waitress/en/stable/runner.html)\n\n```bash\n$ waitress-serve --port=8001 core.wsgi:application\nServing on http://localhost:8001\n```\n\nVisit `http://localhost:8001` in your browser. The app should be up \u0026 running.\n\n\u003cbr /\u003e\n\n## ✨ Credits \u0026 Links\n\n- [Django](https://www.djangoproject.com/) - The official website\n- [Boilerplate Code](https://appseed.us/boilerplate-code) - Index provided by **AppSeed**\n- [Boilerplate Code](https://github.com/app-generator/boilerplate-code) - Index published on Github\n\n\u003cbr /\u003e\n\n---\nDjango `HTMLX` Material Kit - Provided by **AppSeed** [App Generator](https://appseed.us/generator).\n","funding_links":[],"categories":["Examples by Back-end"],"sub_categories":["Python-based (Django, FastAPI, Flask)"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapp-generator%2Fsample-django-htmlx-mkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapp-generator%2Fsample-django-htmlx-mkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapp-generator%2Fsample-django-htmlx-mkit/lists"}