cookiecutter-django/README.rst
2013-08-18 14:46:20 +02:00

84 lines
2.6 KiB
ReStructuredText

cookiecutter-dj-project
=======================
A cookiecutter_ template for Django.
.. _cookiecutter: https://github.com/audreyr/cookiecutter
Features
---------
* Cutting edge: For Django 1.6 and other bleeding edge stuff
* Twitter Bootstrap 3
* Registration via django-allauth
* User avatars via django-avatar
* Procfile for deploying to Heroku
* Heroku optimized requirements
* Basic caching setup
Constraints
-----------
* Only maintained 3rd party libraries are used.
* PostgreSQL everywhere
* Environment variables for configuration (This won't work with Apache/mod_wsgi)
Usage
------
Let's pretend you want to create a Django project called "redditclone". 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.
First, get cookiecutter. Trust me, it's awesome::
$ pip install cookiecutter
Now run it against this repo::
$ cookiecutter https://github.com/pydanny/cookiecutter-dj-project.git
You'll be prompted for some questions, answer them, then it will create a Django project for you.
**Warning**: After this point, change 'Daniel Greenfeld', 'pydanny', etc to your own information.
It prompts you for questions. Answer them::
Cloning into 'cookiecutter-dj-project'...
remote: Counting objects: 49, done.
remote: Compressing objects: 100% (33/33), done.
remote: Total 49 (delta 6), reused 48 (delta 5)
Unpacking objects: 100% (49/49), done.
full_name (default is "Your full name here")? Daniel Greenfeld
email (default is "you@example.com")? pydanny@gmail.com
project_name (default is "dj-project")? redditclone
repo_name (default is "dj_project")? redditclone
app_name (default is "djproject")? redditclone
project_short_description (default is "Your project description goes here")? A reddit clone.
release_date (default is "2013-08-15")? 2013-08-15
year (default is "2013")? 2013
version (default is "0.1.0")? 0.3.0
Enter the project and take a look around::
$ cd redditclone/
$ ls
Create a GitHub repo and push it there::
$ git init
$ git add .
$ git commit -m "first awesome commit!"
$ git remote add origin git@github.com:pydanny/redditclone.git
$ git push -u origin master
Now take a look at your repo. Awesome, right?
It's time to write the code!!!
"Your Stuff"
-------------
Scattered throughout the Python and HTML of this project are places marked with "your stuff". This is where third-party libraries are to be integrated with your project.