https://github.com/basharst99/snacks_x
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.0%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: BasharST99
- License: other
- Language: Python
- Default Branch: main
- Size: 188 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
A batteries-included Django starter project. To learn more try the books Django for Beginners, Django for APIs, and Django for Professionals.
🚀 Features
- Django 4.1 & Python 3.10
- Install via Pip, Pipenv, or Docker
- User log in/out, sign up, password reset via django-allauth
- Static files configured with Whitenoise
- Styling with Bootstrap v5
- Debugging with django-debug-toolbar
- DRY forms with django-crispy-forms
Table of Contents
📖 Installation
DjangoX can be installed via Pip, Pipenv, or Docker. To start, clone the repo to your local computer and change into the proper directory.
$ git clone https://github.com/wsvincent/djangox.git
$ cd djangox
Pip
``` $ python -m venv .venv
Windows
$ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser $ .venv\Scripts\Activate.ps1
macOS
$ source .venv/bin/activate
(.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
```
Pipenv
``` $ pipenv install $ pipenv shell (.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
```
Docker
To use Docker with PostgreSQL as the database update the DATABASES section of django_project/settings.py to reflect the following:
```python
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:
```python
config/settings.py
django-debug-toolbar
import socket hostname, , ips = socket.gethostbynameex(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
```
Next Steps
- Add environment variables. There are multiple packages but I personally prefer environs.
- Add gunicorn as the production web server.
- Update the EMAIL_BACKEND and connect with a mail provider.
- Make the admin more secure.
django-allauthsupports social authentication if you need that.
I cover all of these steps in my three books: Django for Beginners, Django for APIs, and Django for Professionals.
🤝 Contributing
Contributions, issues and feature requests are welcome! See CONTRIBUTING.md.
⭐️ Support
Give a ⭐️ if this project helped you!
License
Owner
- Name: Bashar Telfah
- Login: BasharST99
- Kind: user
- Location: Amman,jordan
- Website: telfahb@gmail.com
- Twitter: TelfahB
- Repositories: 23
- Profile: https://github.com/BasharST99
Software Engineer | Full Stack | React, Next.js, Python, TypeScript, Django | Passionate About Building Scalable Systems
