Metadata-Version: 1.1
Name: django-skeleton-setup
Version: 0.0.7
Summary: Skeleton setup to simplify setting up django project.
Home-page: https://github.com/bhuwantm/django-skeleton-setup
Author: Bhagwan Thapa
Author-email: bhagwanthapawork@gmail.com
License: MIT
Description: =================
        SKELETON SETUPS
        =================
        
        A simple application to quickly setup settings files without too
        much hassle.
        
        Installation
        -------------
            ``pip install django-skeleton-setup``
        
        
        Configure Settings and Environment Files
        -----------------------------------------
        
        1. Add "skeleton_setup" to your INSTALLED_APPS setting like this::
        
            INSTALLED_APPS = [
                ...
                'skeleton_setup',
            ]
        
        
        2. If your application settings uses default WSGI_APPLICATION move to step 4 else to step 3
        
        
        3. Set following variable to settings.py.
        
            ``SKELETON_SITE_ROOT = Path(__file__).resolve().parent``
        
        
        4. Run ``python manage.py skeleton_setup`` to create copy following files:
        
           * settings_common.py
           * settings_local.py
           * settings_production.py
           * env_local.env
        
        
        5. Add following line to end of settings.py file
        
            ``from .settings_common import *``
        
        
        6. Database setup is based on postgres, if other database is used then to avoid runserver error
        
            ``change DATABASES dict as required``
        
        
        7. Change the following env file for local development
        
            ``env_local.env``
        
        
        7. Edit env files or settings files as per your requirements
        
        
        Creating a new app provided by skeleton setup
        ----------------------------------------------
        
        1. Minimal command similar to startapp of django-admin
        
            ``python manage.py skeleton_startapp app_name to_path``
        
        
        2. Parameter "app_name" is required
        
        
        3. Parameter "to_path" is optional and is path string value relative to BASE_DIR where
           you want to create the app
        
        4. App with following structure will be created::
        
            ├── api
            │   ├── __init__.py
            │   ├── urls.py
            │   └── views.py
            ├── migrations
            │   └── __init__.py
            ├── serializers
            │   └── __init__.py
            ├── services
            │   └── __init__.py
            ├── templates
            ├── tests
            │   └── __init__.py
            ├── __init__.py
            ├── admin.py
            ├── apps.py
            ├── forms.py
            ├── model_managers.py
            ├── models.py
            ├── signals.py
            └── urls.py
            └── utils.py
            └── views.py
        
        
        Don't like app structure provided by this?
        --------------------------------------------
        
        1. No problem you can create your own app structure and use this command
        
        2. Create a template structure for your application.
           Use `"*.py-tpl"` instead of ``"*.py"`` files.
        
        3. Example template::
        
            ├── api
            │   ├── __init__.py-tpl
            │   ├── urls.py
            │   └── views.py
            ├── migrations
            │   └── __init__.py-tpl
            ├── tests
            │   └── __init__.py-tpl
            ├── utils
            │   └── __init__.py-tpl
            ├── static
            │   └── assets
            │   └── js
            │   └── css
            ├── templates
            ├── admin.py-tpl
            ├── apps.py-tpl
            ├── models.py-tpl
            └── urls.py-tpl
            └── views.py-tpl
        
        
        4. Add following variable to settings.py
        
            ``SKELETON_STARTAPP_SOURCE="path/to/your/template/"``
        
        
        5. Now run the command
        
            ``python manage.py skeleton_startapp app_name to_path``
        
        6. If you still want to have finer control over the app creation. Extend the following class:
        
            skeleton_startapp.Command
        
        
        
        
        Creating a user app
        ----------------------
        
        DEPENDENCIES: djangorestframework
        
        Creates an app for handling users.
        
        1. Command similar to startapp of django-admin
        
            ``python manage.py skeleton_startuserapp app_name to_path``
        
        2. The command prompts for::
        
            UserModel [Suggestion: UpperCamelCase]
        
            db_table [Suggestion: snake_case] [Optional]
        
        3. An app is created with given app_name
        
        3. Modify the app as required
        
        4. Add it to INSTALLED_APPS in settings.py
        
        5. Make migrations and migrate
        
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
