Skip to main content

An opinionated Django project setup tool

Project description

porosdjango

PyPI version Python License: MIT

An opinionated CLI tool that bootstraps Django projects with production-ready defaults. Get a custom user model, Django REST Framework, and sensible project structure in seconds.

Features

  • Custom User model out of the box (extends AbstractUser)
  • Django REST Framework pre-configured
  • Configurable project and app names
  • Auto-generated .gitignore for Django projects
  • Automatic dependency installation
  • Database migrations run automatically

Installation

pip install porosdjango

Quick Start

# Create a new directory for your project
mkdir myproject && cd myproject

# Run the CLI
porosdjango create

You'll be prompted to:

  1. Name your Django project app (default: config)
  2. Optionally create a custom app with your chosen name

What Gets Generated

myproject/
├── config/                 # Your Django project (or custom name)
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py        # Pre-configured with your apps
│   ├── urls.py
│   └── wsgi.py
├── auth_app/              # Custom user model app
│   ├── migrations/
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── models.py          # Custom User model
│   ├── tests.py
│   └── views.py
├── your_app/              # Your custom app (if created)
├── manage.py
├── requirements.txt
└── .gitignore

Generated Configuration

The tool automatically configures settings.py with:

INSTALLED_APPS = [
    # ... default Django apps
    'rest_framework',
    'auth_app',
    'your_app',  # if created
]

AUTH_USER_MODEL = 'auth_app.User'

Requirements

  • Python >= 3.11
  • Django >= 5.2

Development

# Clone the repository
git clone https://github.com/Toluwalemi/porosdjango.git
cd porosdjango

# Create a virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install in development mode
pip install -e .

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Toluwalemi

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

porosdjango-0.1.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

porosdjango-0.1.1-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file porosdjango-0.1.1.tar.gz.

File metadata

  • Download URL: porosdjango-0.1.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for porosdjango-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e7844f6b2b83761e5ed42f237a768c0a97111f0a24f0cde6e06ec5c975a4caa1
MD5 a870be5d97c4d5690e09a4183e255171
BLAKE2b-256 ef1e1b4d4c315b943411fab04f75d2963f1ea7f06d845e382d95ca99e9054b1b

See more details on using hashes here.

File details

Details for the file porosdjango-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: porosdjango-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for porosdjango-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9e737e0ce55775f07593f996e829287a7adb2b3a05ccfe2c76fda474b2a74650
MD5 b55efe361b4d91ed7d216e9b3324143d
BLAKE2b-256 b9c6e05fd21b22bd85ab5b40711db6a19f4a9f227833eb2cc0e72113420f7b48

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page