A handy collection of reusable Django UI components, allowing me to share and integrate elements efficiently across various projects.
Project description
django-my-lib 🚀
This project is a test for creating a Django library. 🧩
Installation 📦
You can install the library using pip or poetry:
pip install django-my-lib
# or
poetry add django-my-lib
Configuration ⚙️
Add django_my_lib to the INSTALLED_APPS list in your settings.py:
INSTALLED_APPS = [
# ... other apps ...
'django_my_lib',
]
Migrations 🗄️
After installing and configuring, run the following commands:
python manage.py makemigrations
python manage.py migrate
🎉 Done! Your Django library is installed and ready to use.
Running locally as a developer 🖥️
To run the Django project locally during development, follow the steps below:
git clone https://github.com/GustavoRizzo/django-my-lib.git
cd django-my-lib
poetry install
poetry run task run-demo
For a more complete setup, you can run the comands:
poetry run task migrate
poetry run task createsuperuser
# or
poetry run task setup # that will do the same as above
Tests 🧪
To run the tests, use the command below inside the demo_project directory:
poetry run task test
Linting 🧹
To check for linting issues, use the command below:
poetry run task lint
poetry run task lint-fix # to fix issues automatically
If using pyenv
To manage Python versions, you can use pyenv. To install pyenv, follow the instructions in the pyenv GitHub repository.
pyenv update
pyenv install 3.12.0
# Activete the virtual environment with the correct Python version
python -m venv venv
source venv/bin/activate
pip install pip --upgrade
pip install poetry
poetry install
poetry run task run-demo
Updating and publishing the library 🚢
To update the version, build, and publish your library, use the commands below:
poetry version patch # to bump the version (e.g.: 0.1.0 → 0.1.1)
poetry build
tar -tzf dist/*.tar.gz | head -20 # to see the files inside the package
poetry publish
Use this project as a template for your own Django library! 🌟
Rename the project and package
To rename the project and package, follow these steps:
-
On github click on the "Use this template" button to create a new repository based on this template. Give it a new name (e.g.,
django-awesome-lib). -
Inside the project folder, rename the package folder from
django_my_libto your desired name (e.g.,django_awesome_lib).
mv django_my_lib django_awesome_lib
-
Make CTRL+F and replace all occurrences of
django_my_libwithdjango_awesome_libin the codebase. -
Rename template folder: On django_awesome_lib/templates, rename the folder from
demo_projectto your desired name (e.g.,demo_awesome_project).
mv django_awesome_lib/templates/django_my_lib django_awesome_lib/templates/django_awesome_lib
-
Make CTRL+F and replace all occurrences of
django-my-libwithdjango-awesome-libin the codebase. -
Ajdust the project name in the
pyproject.tomlfile.
[tool.poetry]
name = "django-awesome-lib"
version = "0.1.0"
description = "This project is a test for creating a Django library."
authors = [
"Your Name <your.email@example.com>"
]
- Adjust README.md to reflect the new project name and package name.
# django-awesome-lib 🚀
[](https://pypi.org/project/django-awesome-lib/)
> This my brand new project is a test for creating a Django library. 🧩
- Now you are free to start developing your new Django library! 🎉
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_my_lib-0.1.7.tar.gz.
File metadata
- Download URL: django_my_lib-0.1.7.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.10.12 Linux/6.6.87.2-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27b33ecb8639cee1cb623206d80c74307a5063d444e4d80bf182e16dd787e88d
|
|
| MD5 |
460a9885e29b41a20860423a4fe367cb
|
|
| BLAKE2b-256 |
008858793c61ba6f5e9662bcaf1a4930859051a5a1d3d90ac7827525ea53c3d6
|
File details
Details for the file django_my_lib-0.1.7-py3-none-any.whl.
File metadata
- Download URL: django_my_lib-0.1.7-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.1 CPython/3.10.12 Linux/6.6.87.2-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11905aa75a1d59338ed13491089e9099565922421d54bafb662ea109ec670acb
|
|
| MD5 |
f7e146ef8a9caf2d82a738849e4d4bf2
|
|
| BLAKE2b-256 |
7c9ae570d02d848b40b8507d04f2a6da5c757ae321983f36ae2fa8c5bbdfad1f
|