Skip to main content

CLI tool for creating Django projects with a predefined structure.

Project description

๐Ÿ ldjango: Your Django Project Assistant! ๐Ÿš€

PyPI Version License: MIT

Tired of manually setting up Django projects? Introducing ldjango - your magic wand to create perfectly structured Django projects in a snap! ๐Ÿช„โœจ

๐ŸŽฅ See ldjango in Action!

ldjango Demo

See how ldjango makes creating Django projects easy and fast!

๐ŸŒŸ What's Special?

  • Swift Setup: Create a complete structured Django project with just one command!
  • Smart App Creation: Automatically create multiple Django apps!
  • Perfect Project Structure: Get an organized project layout that even Marie Kondo would approve!
  • CLI Power: Use intuitive command line options to customize your project creation.
  • Tailwind CSS Integration: Enjoy the power of Tailwind CSS right out of the box!
  • Static Files: Static files are automatically compiled and ready for production.
  • Media Files: Media files are stored in a special folder for easy management.
  • Git Friendly: Comes with a .gitignore file. Because we care about the cleanliness of your repository.
  • Special Static Folder: Keep your static files organized and separate from your project.
  • HTML Template: Use a basic HTML template to maintain consistency throughout your project.
  • Django Settings: Well-organized settings file to manage your project configuration.
  • URL Routing: Centralized URL routing system to manage all your app URLs.
  • Database: Uses SQLite by default, but you can easily switch to your preferred database.
  • JavaScript Support: Includes a node_modules folder to manage JavaScript dependencies.
  • NPM Scripts: Use NPM scripts to compile your CSS and run other development tasks.
  • Django Commands: Use Django commands to manage your project and apps.
  • Version Control: Includes a .gitignore file to exclude unnecessary files from your repository.
  • Environment Variables: Uses a .env file to store environment variables for your project.
  • Django REST Framework: Option to install and configure Django REST Framework.
  • API Key: Integration with djangorestframework-api-key for API security.
  • Automatic Serializer: Automatically create serializer files for each app.
  • Advanced Customization: Option to further customize your project structure.

๐Ÿ› ๏ธ Installation

To get started with ldjango, follow these steps:

  1. Create a virtual environment:

    python -m venv venv
    
  2. Activate the virtual environment:

    • For Windows:
      venv\Scripts\activate
      
    • For macOS and Linux:
      source venv/bin/activate
      
  3. Install ldjango:

    pip install ldjango
    

Now ldjango is ready to use in your virtual environment!

๐Ÿš€ Quickstart

Launch your Django rocket with this command:

ldjango makeproject

Follow the prompts, and watch the magic happen! โœจ

๐Ÿ“š Command Reference

  • ldjango makeproject: Start the interactive project creation wizard
  • ldjango -h or ldjango --help: Show help information
  • ldjango --version: Show the version of ldjango you are using
  • ldjango generate-secret-key: Generate a new secret key for Django

๐Ÿ“ Special ldjango: Project Structure

Your new Django project will look like this:

project_root/
โ”‚
โ”œโ”€โ”€ apps/                       # Main folder containing all the applications in the Django project
โ”‚   โ”œโ”€โ”€ app1/                   # First application (app1) in the project
โ”‚   โ”‚   โ”œโ”€โ”€ migrations/         # Folder to store database migration files
โ”‚   โ”‚   โ”œโ”€โ”€ admin.py            # Configuration for Django's admin panel
โ”‚   โ”‚   โ”œโ”€โ”€ apps.py             # Configuration for the app in Django
โ”‚   โ”‚   โ”œโ”€โ”€ models.py           # Defines the database models for this app
โ”‚   โ”‚   โ”œโ”€โ”€ serializers.py      # Serializer for Django REST Framework
โ”‚   โ”‚   โ”œโ”€โ”€ tests.py            # File to write unit tests
โ”‚   โ”‚   โ”œโ”€โ”€ views.py            # Logic for handling views in this app
โ”‚
โ”‚   โ”œโ”€โ”€ app2/                   # Second application (app2) in the project
โ”‚   โ”‚   โ”œโ”€โ”€ ...                 # Same structure as app1
โ”‚
โ”‚   โ”œโ”€โ”€ More another apps/     # More apps in the project
โ”‚
โ”‚   โ”œโ”€โ”€ urls.py                 # URL routing for all the apps inside the `apps` folder
โ”‚
โ”œโ”€โ”€ core/                       # Core folder containing overall project configuration
โ”‚   โ”œโ”€โ”€ asgi.py                 # ASGI configuration for running asynchronous servers
โ”‚   โ”œโ”€โ”€ settings.py             # Main configuration file for the Django project
โ”‚   โ”œโ”€โ”€ urls.py                 # Global URL routing for the entire project
โ”‚   โ”œโ”€โ”€ wsgi.py                 # WSGI configuration for running web servers
โ”‚
โ”œโ”€โ”€ media/                      # Folder for storing user-uploaded files (images, documents, etc.)
โ”‚
โ”œโ”€โ”€ node_modules/               # Folder containing JavaScript dependencies from npm (e.g., for Tailwind CSS)
โ”‚
โ”œโ”€โ”€ static/                     # Folder for static files like CSS, JavaScript, and images
โ”‚   โ””โ”€โ”€ css/
โ”‚       โ”œโ”€โ”€ input.css           # Input CSS file (e.g., Tailwind CSS)
โ”‚       โ”œโ”€โ”€ output.css          # Output CSS file after processing
โ”‚
โ”œโ”€โ”€ staticfiles/                # Folder to store static files that are ready for production
โ”‚   โ”œโ”€โ”€ admin/                  # Static files for Django's admin panel
โ”‚   โ””โ”€โ”€ css/                    # Additional CSS files for the app
โ”‚
โ”œโ”€โ”€ templates/                  # Folder for storing HTML templates
โ”‚   โ”œโ”€โ”€ base.html               # Base HTML template for the application
โ”‚   โ”œโ”€โ”€ landing_page.html       # Landing page template for the application
โ”‚
โ”œโ”€โ”€ .gitignore                  # File to specify files/folders that Git should ignore
โ”œโ”€โ”€ .env                        # Environment variables for the project
โ”œโ”€โ”€ .env.example                # Example environment variables for the project
โ”œโ”€โ”€ db.sqlite3                  # SQLite database used by the project
โ”œโ”€โ”€ manage.py                   # Command-line script to manage the Django project
โ”œโ”€โ”€ package-lock.json           # File locking the versions of npm dependencies
โ”œโ”€โ”€ package.json                # Configuration file for npm dependencies
โ”œโ”€โ”€ requirements.txt            # File to specify Python dependencies
โ””โ”€โ”€ tailwind.config.js          # Configuration file for Tailwind CSS

๐ŸŽญ Features That Will Make You Say "Wow!"

  1. App-tastic Organization: All your apps are neatly placed inside the apps folder. No more app confusion!
  2. URL Mastery: urls.py already configured inside the apps folder to manage all your app URLs.
  3. Ready, Set, Django: core folder with all the essential Django project, ready to rock.
  4. Static & Media: Special folders for your static and media files. Marie Kondo would be proud!
  5. Git Friendly: Comes with a .gitignore file. Because we care about the cleanliness of your repository.
  6. Tailwind CSS Integration: Enjoy the power of Tailwind CSS right out of the box!
  7. HTML Template: Use a basic HTML template to maintain consistency throughout your project.
  8. Django Settings: Well-organized settings file to manage your project configuration.
  9. Database: Uses SQLite by default, but you can easily switch to your preferred database.
  10. JavaScript Support: Includes a node_modules folder to manage JavaScript dependencies.
  11. NPM Scripts: Use NPM scripts to compile your CSS and run other development tasks.
  12. Django Commands: Use Django commands to manage your project and apps.
  13. Environment Variables: Uses a .env file to store environment variables for your project.

๐Ÿค” Why Choose ldjango?

  • Highest Time Savings: Say goodbye to repetitive project setup tasks.
  • Consistency Champion: Every project follows the same, clean, and logical structure.
  • Best Friend for Beginners: Perfect for Django beginners to start with the right steps.
  • Customization King: Flexible enough to adapt to your unique project needs.
  • Tailwind CSS: Tailwind CSS integrated into the project, so you can start styling your project right away.
  • Static Files: Static files are automatically compiled and ready for production.
  • Media Files: Media files are stored in a special folder for easy management.
  • Git Friendly: Comes with a .gitignore file. Because we care about the cleanliness of your repository.
  • Special Static Folder: Keep your static files organized and separate from your project.
  • HTML Template: Use a basic HTML template to maintain consistency throughout your project.
  • Django Settings: Well-organized settings file to manage your project configuration.
  • URL Routing: Centralized URL routing system to manage all your app URLs.
  • Database: Uses SQLite by default, but you can easily switch to your preferred database.
  • JavaScript Support: Includes a node_modules folder to manage JavaScript dependencies.
  • NPM Scripts: Use NPM scripts to compile your CSS and run other development tasks.
  • Django Commands: Use Django commands to manage your project and apps.
  • Environment Variables: Uses a .env file to store environment variables for your project.
  • Django REST Framework Integration: Option to easily set up Django REST Framework.
  • API Security: Integration with djangorestframework-api-key for better API security.
  • Automatic Serializer: Automatically create serializer files to make API development easier.
  • Advanced Customization: More options to customize the project to your needs.

๐Ÿ“œ License

Distributed under the MIT License. See LICENSE for more information.

๐Ÿ“ž Contact Us!

My Instagram - @lrnd.__

Project Link: ldjango


Ready to djangofy your development process? Try ldjango and watch your productivity soar! ๐Ÿš€๐Ÿ

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

ldjango-8.5.tar.gz (16.3 kB view details)

Uploaded Source

Built Distribution

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

ldjango-8.5-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file ldjango-8.5.tar.gz.

File metadata

  • Download URL: ldjango-8.5.tar.gz
  • Upload date:
  • Size: 16.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ldjango-8.5.tar.gz
Algorithm Hash digest
SHA256 3fa49b03bf06eaa5d2d18f9ed55d510e3fbd0a2a7b2d4e9904cc9ac5b6467645
MD5 32c6bdadb66799631dea8bc8043e1ce2
BLAKE2b-256 00086ae76961a310cf5650944da645e0d76f05f6758b3ad104bcf07917a7417b

See more details on using hashes here.

File details

Details for the file ldjango-8.5-py3-none-any.whl.

File metadata

  • Download URL: ldjango-8.5-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ldjango-8.5-py3-none-any.whl
Algorithm Hash digest
SHA256 18eed0ca7a10debf1c6e3e810be662c2d9b54e98197c7a58472eea5a1ddf21b1
MD5 816c58e11435b7859c1c8763db78b864
BLAKE2b-256 df3ba976e907629be28653c7cf60ee4e5faf6a74df5b1125078ede2ecbfcda64

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