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.0.tar.gz (5.9 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.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: porosdjango-0.1.0.tar.gz
  • Upload date:
  • Size: 5.9 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.0.tar.gz
Algorithm Hash digest
SHA256 713d20c0094d2ce5283a8ddd17be6d3ec7efccb0eb8ab40bc9d4d01f4d943d53
MD5 0d365cde9cb4655c1fd9850c0c211a14
BLAKE2b-256 37e9d8d0f363bab29de9ca6d11b954f516828f042af11a20959aa1c6814b2476

See more details on using hashes here.

File details

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

File metadata

  • Download URL: porosdjango-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4cddc7894d766073626aecdbd0cae32e98389d3721417e33e67b2344b674f06d
MD5 27bc2978e20b908ee6e71e97e13b3935
BLAKE2b-256 6f82e6741f2fa41a9ee75589c386e9f0cd9be0298d8b127dfe2f91cf1127c5be

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