df_site
A single Django app that contains many features and tools to create a website. It offers a template based on Bootstrap5 with the required views for:
- login/logout (with Django-allauth and all its methods like passkeys)
- a profile management view
- a dark mode
- a cookie consent banner (with DjangoCookieConsent)
- a message app between users (django-postman)
- a connection to websockets (django-channels and df_websockets) for pushing data to the client
- a configurable object lists with sorting, pagination and filters (similar to the Django admin list views) integrable in any template
- a configurable object detail view similar to the Django admin detail view
Frontend
- SCSS: Bootstrap uses SCSS
- pnpm: easy to use, most efficient than npm and yarn
- Bootstrap: the only CSS framework with a Django package
- TypeScript
- Webpack
- Node.js: used by webpack
- Font-awesome
- Dark Mode
- Htmx
- Select2: still use jQuery in 2024 and no real plan to remove it
- Javascript editor
Excluded
- Vite: created SPA
- Material-UI: no Django package
- TailwindCSS: no Django package
- npm: replaced by pnpm
- yarn: replaced by pnpm
- AlpineJS: hard to comply with a strong CSP
- React
- Better-nice-Select
Backend
- Django
- Django-pipeline
- Django debug toolbar
- Poetry
- Python3.12
- DjangoCookieConsent
- Django-postman
- Django-allauth
- Django Rest Framework
- Django Channels
- Gunicorn
- Hypercorn
- Celery
- Django-auto-complete-light
- Django-htmX
- Django-components
- Django-recaptcha
- django-ckeditor-5
- Complete solution for ListView,
- Complete solution for DetailView
- CreateView, UpdateView, DeleteView
- alert messages when the site is offline (maintenance mode)
- wait for the database to be ready
- display global messages and banners
- Error templates
- Smileys in the Editor
Excluded
- Django-select2: django-auto-complete-light is better
WYSIWYG editor
- CKEditor with django-ckeditor-5: GPL license
- TinyMCE with django-tinymce: cannot use a strong CSP (unsafe-inline styles are required)
- Trix with django-prose: use nonce for inline styles
- summernote with django-summernote: still use jQuery and cannot use a strong CSP
- Froala: expensive
- ACE: code editor
- Django-RichtextField: use CKEditor or TinyMCE
Specific URLs
HTML and web server
- Nginx
- Apache
- HTTP/2
- Mozilla observatory
- OpenGraph meta tags
- Performances
- Generate a favicon
- Favicon validation
- HTML validation
- OpenGraph validation
- Structured data validation
- Webhint
- Lighthouse
- SSL validation
- XML site map
- Schema.org CSS Validator, Link Checker, JS Validator
DevOps
- git
- Precommit
- Docker
- Docker Compose
- SonarQube
- Pytest
- Jest
- Playwright
- editorconfig
- Copyright checking
- Monitoring and alerting
- django-probes
- Django-prometheus
Code analysis and formatting
- Dockerfile
- HTML DjHTML
- ini
- JavaScript: ESlint
- JSON
- Markdown
- Python: Ruff
- SCSS StyleLint
- TOML
- TypeScript: ESlint
- YAML
Excluded tools
- JSHint: replaced by ESLint
- JSLint: replaced by ESLint
- JSCS: replaced by ESLint and limited to code style
- Pylint: replaced by Ruff
- Flake8: replaced by Ruff
- Black: replaced by Ruff
- isort: replaced by Ruff
- PyDocStyle: replaced by Ruff
- PyUpgrade: replaced by Ruff
- Autoflake: replaced by Ruff
- SassLint: no longer maintained
Database and storage
Technologies
Metadata
Release files for df_site 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| df_site-0.1.11.tar.gz | 3.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| df_site-0.1.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.7 MB
Release files / df_site-0.1.11.tar.gz
| Download URL | df_site-0.1.11.tar.gz |
|---|---|
| Size | 3.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c544d5e9ec935d60ccd1ffae78af04e03696f5b8e5ae67e8ecb24aae9d925fb1
|
|
BLAKE2b-256 checksum How to use checksums |
fbc11608f4ff181dd575c8756819e5dacdd20d4e7bdbe5682fa281f22a8f9822
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / df_site-0.1.11-py3-none-any.whl
| Download URL | df_site-0.1.11-py3-none-any.whl |
|---|---|
| Size | 3.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9eab6eb89ccc2a0891c52ed2cbb0dc88ef4cb0534e5891158e1d3e7d353792c9
|
|
BLAKE2b-256 checksum How to use checksums |
87affc1e0da543b16fd7a6869249ac31e078da35f364748653af11eae4ffa942
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|