Keine Beschreibung

Will Vincent 56aa62e0e2 Merge pull request #147 from mavhungutrezzy/patch-1 vor 2 Wochen
accounts 203e9a95d2 add_fielsets explicit to remove error adding users in admin vor 2 Wochen
django_project 8835d59596 Add some comments and a couple settings vor 8 Monaten
pages 59a5474068 doublequotes not singlequotes per Black vor 2 Jahren
static 8985fea89b add logo back vor 4 Jahren
templates 04cb4e8f48 Merge pull request #126 from spbisc97/patch-menu-dropdown-bs5-1 vor 5 Monaten
.gitignore 5d912a0aaa add under Features the custom 404, 500, and 403 error pages vor 1 Jahr
CONTRIBUTING.md d8e92d9902 update CONTRIBUTING.md vor 4 Jahren
Dockerfile 6cfc445315 update Dockerfile and docker-compose postgres version vor 8 Monaten
LICENSE 8cf726595a big update adding Docker, Pip, switch users app to accounts, updated Readme vor 4 Jahren
README.md 149d6915ce Rename project from djangox to lithium vor 2 Wochen
docker-compose.yml 094677b734 remove version from docker-compose.yml vor 2 Monaten
logo.png 291cbdab8f add logo vor 5 Jahren
manage.py 59a5474068 doublequotes not singlequotes per Black vor 2 Jahren
requirements.txt 4a4cd0f7f2 update 3rd party packages vor 1 Monat

README.md

Lithium: A Django-Powered Boilerplate

Lithium is a batteries-included Django starter project with everything you need to start coding, including user authentication, static files, default styling, debugging, DRY forms, custom error pages, and more.

This project was formerly known as DjangoX but was renamed to Lithium in November 2024.

https://github.com/wsvincent/djangox/assets/766418/a73ea730-a7b4-4e53-bf51-aa68f6816d6a

👋 Free Newsletter

Sign up for updates to the free and upcoming premium SaaS version!

🚀 Features

Table of Contents

📖 Installation

Lithium can be installed via Pip or Docker. To start, clone the repo to your local computer and change into the proper directory.

$ git clone https://github.com/wsvincent/lithium.git
$ cd lithium

Pip

You can use pip to create a fresh virtual environment on either Windows or macOS.

# On Windows
$ python -m venv .venv
$ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
$ .venv\Scripts\Activate.ps1
(.venv) $

# On macOS
$ python -m venv .venv
$ source .venv/bin/activate
(.venv) $

Then install all packages hosted in requirements.txt and run migrate to configure the initial database. The command createsuperuser will create a new superuser account for accessing the admin. Execute the runserver commandt o start up the local server.

(.venv) $ pip install -r requirements.txt
(.venv) $ python manage.py migrate
(.venv) $ python manage.py createsuperuser
(.venv) $ python manage.py runserver
# Load the site at http://127.0.0.1:8000 or http://127.0.0.1:8000/admin for the admin

Docker

To use Docker with PostgreSQL as the database update the DATABASES section of django_project/settings.py to reflect the following:

# django_project/settings.py
DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.postgresql",
        "NAME": "postgres",
        "USER": "postgres",
        "PASSWORD": "postgres",
        "HOST": "db",  # set in docker-compose.yml
        "PORT": 5432,  # default postgres port
    }
}

The INTERNAL_IPS configuration in django_project/settings.py must be also be updated:

# config/settings.py
# django-debug-toolbar
import socket
hostname, _, ips = socket.gethostbyname_ex(socket.gethostname())
INTERNAL_IPS = [ip[:-1] + "1" for ip in ips]

And then proceed to build the Docker image, run the container, and execute the standard commands within Docker.

$ docker compose up -d --build
$ docker compose exec web python manage.py migrate
$ docker compose exec web python manage.py createsuperuser
# Load the site at http://127.0.0.1:8000 or http://127.0.0.1:8000/admin for the admin

Next Steps

I cover all of these steps in tutorials and premium courses over at LearnDjango.com.

🤝 Contributing

Contributions, issues and feature requests are welcome! See CONTRIBUTING.md.

⭐️ Support

Give a ⭐️ if this project helped you!

License

The MIT License