Running the app locally

Are you a developer interested in running this locally to make code changes or templates? Set-up is super simple. It assumes a working knowledge of Github and Python 3+ installed.

  1. Clone or fork the github repository.

  2. Create a .env file in the root of your project with all the config variables you want. Here’s what a basic .env should look like:

    DJANGO_SETTINGS_MODULE=startherecms.settings.local
    AWS_ACCESS_KEY_ID=something-something
    AWS_SECRET_ACCESS_KEY=irutsgkjniuref
    AWS_STORAGE_BUCKET_NAME=your-bucket-name
    
  3. In the root of the project run:

    pip install -r requirements.txt
    
  4. Create the database migrations for the project:

    python manage.py makemigrations
    
  5. Apply the migrations:

    python manage.py migrate
    
  6. Finally, run the server:

    python manage.py runserver
    

Create a template

Did you use this CMS in a cool way and have a template you’d like to share with us? Share your work!

First, create an exact template of your website locally. We suggest filling out the Home page and Tracks but leaving the Steps for other users to fill out since that’s the information that tends to change the most.

When you have your local deploy looking the way you want it to, dump the data into a .json file in the fixtures folder. Name the .json file something that relates to your template. For example:

./manage.py dumpdata --exclude=wagtailcore.GroupCollectionPermission --exclude=auth.User > fixtures/example-template.json

Also update the Procfile with a command users can use to apply the fixture. It needs a name (example-template) followed by a loaddata command that loads the fixture you just created. Here’s an example for example-template.json:

example-template: python manage.py loaddata fixtures/example-template.json

Now that you have your template exported, update the list of templates in the documentation and then make a pull request against this repo.

Thanks for sharing!