.. title: Manax howto
.. slug: manax-howto
.. date: 2016-06-10 01:00
.. tags: django, manax
.. author: Bruno Santeramo
.. link: https://getnikola.com/
.. description: How to use manax to start a new django project
.. category:

Manax howto
===========

Move to your development folder (eg: $HOME/workspace)

.. code:: bash

    cd $HOME/workspace

create and activate a virtualenv

.. code:: bash

    pyvenv-3.5 venv
    source venv/bin/activate

upgrade pip and install cookiecutter

.. code:: bash

    pip3 install --upgrade pip
    pip install cookiecutter

start new django project via manax

.. code:: bash

    cookiecutter https://github.com/manazag/manax

You’ll be prompted for some values. Provide them, then a Django project
will be created for you. Answer the prompts with your own desired
options. For example:

::

    Cloning into 'manax'...
    remote: Counting objects: 550, done.
    remote: Compressing objects: 100% (310/310), done.
    remote: Total 550 (delta 283), reused 479 (delta 222)
    Receiving objects: 100% (550/550), 127.66 KiB | 58 KiB/s, done.
    Resolving deltas: 100% (283/283), done.
    project_name [project_name]: Reddit Clone
    project_slug [Reddit_Clone]: reddit
    author_name [Your Name]: Daniel Roy Greenfeld
    email [Your email]: pydanny@gmail.com
    description [A short description of the project.]: A reddit clone.
    domain_name [example.com]: myreddit.com
    version [0.1.0]: 0.0.1
    timezone [UTC]: America/Los_Angeles
    now [2016/03/01]: 2016/03/05
    year [2016]:
    Select db_backend:
    1 - sqlite
    2 - postgresql
    Choose from 1, 2 [1]: 
    use_whitenoise [y]: n
    use_celery [n]: y
    use_mailhog [n]: n
    use_sentry [n]: y
    use_newrelic [n]: y
    use_opbeat [n]: y
    use_pycharm [n]: y
    windows [n]: n
    use_python2 [n]: n
    use_docker [y]: y
    use_heroku [n]: n
    use_grunt [n]: y
    use_angular [n]: n
    Select open_source_license:
    1 - MIT
    2 - BSD
    3 - Not open source
    Choose from 1, 2, 3 [1]: 1   

move into [project\_slug] folder:

.. code:: bash

    cd [project_slug]

if this is first time you use manax, run this script

.. code:: bash

    sudo ./utility/install_os_dependencies.sh install

if you want a virtualenv inside [project\_slug] folder

.. code:: bash

    deactivate
    pyvenv-3.5 venv
    source venv/bin/activate

install requirements

.. code:: bash

    pip install -r requirements/local.txt

now, only a database is between you and your project running

.. code:: bash

    export DATABASE_URL="sqlite:///$PWD/db.sqlite"
    python manage.py migrate
    python manage.py runserver
