thinknimble / tn-spa-bootstrapper

A production-ready Django SPA app on Heroku in 20 minutes or less!
https://tn-spa-bootstrapper-staging.herokuapp.com/
MIT License
8 stars 9 forks source link
bootstraping cookiecutter django python reactjs vuejs

Thinknimble SPA Bootstrapper (Django | Vue | React)

A production-ready Django SPA app on Heroku in 20-min or less!

Example deployment (main branch)

Quick Start

First, get pipx for your system, if you don't already have it installing pipx.

Adn run the following command:

pipx install cookiecutter
pipx run cookiecutter gh:thinknimble/tn-spa-bootstrapper

Features

See: Maintained Foundation fork

Optional Integrations

These features can be enabled after initial project setup:

Usage

Let's pretend you want to create a Django project called "therock". Rather than using startproject and then editing the results to include your name, email, and various configuration issues that always get forgotten until the worst possible moment, get cookiecutter to do all the work.

Follow the Quick Start above.

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:

project_name [My Project]: The Rock
author_name [ThinkNimble]: Test Author
email [hello@thinknimble.com]: test@thinknimble.com
project_slug [the_rock]:
Select mail_service:
1 - Mailgun
2 - Amazon SES
3 - Custom SMTP
Choose from 1, 2, 3 [1]: 1
Select client_app:
1 - Vue3
2 - React
3 - None
Choose from 1, 2, 3 [1]: 1
Error: "my_project" directory already exists
william@Williams-MacBook-Pro thinknimble % rm -rf my_project
william@Williams-MacBook-Pro thinknimble % cookiecutter git@github.com:thinknimble/tn-spa-cookiecutter.git --checkout cleanup
You've downloaded /Users/william/.cookiecutters/tn-spa-cookiecutter before. Is it okay to delete and re-download it? [yes]:
project_name [My Project]:
author_name [ThinkNimble]:
email [hello@thinknimble.com]:
project_slug [my_project]:
Select mail_service:
1 - Mailgun
2 - Amazon SES
3 - Custom SMTP
Choose from 1, 2, 3 [1]:
Select client_app:
1 - Vue3
2 - None
Choose from 1, 2 [1]:

Create a git repo and push it there::

git init
git add .
git commit -m "first awesome commit"
git remote set-url origin git@github.com:thinknimble/the-rock.git
git push -u origin main

Now take a look at your repo. Don't forget to carefully look at the generated README. Awesome, right?

Want to Help Us Improve the Bootstrapper?

See the CONTRIBUTING file for information about reporting issues, setting up your dev environment, running tests, and making pull requests.