Skip to content

vchaptsev/cookiecutter-django-vue

Repository files navigation

Cookiecutter Django-Vue

Powered by Cookiecutter, inspired by Cookiecutter Django.

Features

Optional Integrations

These features can be enabled during initial project setup.

Usage

First, get cookiecutter:

$ pip install cookiecutter

Now run it against this repo:

$ cookiecutter gh:vchaptsev/cookiecutter-django-vue

You'll be prompted for some values. Provide them, then a project will be created for you.

Answer the prompts with your own desired options. For example:

======================== INFO ======================= [ ]:
project_name [Project Name]: Website
project_slug [website]: website
description [Short description]: My awesome website
author [Your Name]: Your Name
email [<admin@website.com>]: <admin@website.com>
====================== GENERAL ====================== [ ]:
Select api:
1 - REST
2 - GraphQL
Choose from 1, 2 [1]: 2
backups [y]: y
==================== INTEGRATIONS =================== [ ]:
use_sentry [y]: y
use_mailhog [y]: y
Select analytics:
1 - Google Analytics
2 - Yandex Metrika
3 - None
Choose from 1, 2, 3 [1]: 2

Project creation will cause some odd newlines and linter errors, so I'd recommend:

$ pip install autopep8
$ autopep8 -r --in-place --aggressive --aggressive backend
$ cd frontend && npm i && npm run lint --fix

Now you can start project with docker-compose:

$ docker-compose up --build

For production you'll need to fill out .env file and use docker-compose-prod.yml file:

$ docker-compose -f docker-compose-prod.yml up --build -d

Contributing

Help and feedback are welcome :)