Storing your code in GitHub

Prototypes should be stored as repositories in the GitHub DFE-Digital organisation account.

You can request access to the DfE-Digital organisation GitHub through Digital Tools support on slack.

Naming your prototype in GitHub

You should name your prototype to prevent people getting confused with production services. Use the name of your service followed by -prototype, for example: apply-for-funding-prototype

Using Heroku to host your prototype

Depending on what testing you plan to do with users, you might want to run your prototype as a website, rather than on your local device.

We use Heroku to host prototypes. Most teams have been set up to be able to run prototypes using Heroku Enterprise.

If you are unsure if your team has a Heroku team set up, contact: DesignOps. We can help with getting your team created or adding you if it already exists.

Heroku is not free

Your programme will be cross-charged approximately £6 a month for each prototype that is run in your team space.

If you are unsure about using Heroku, contact DesignOps

Secure your prototype from accidental use

You must use a password to protect your prototype from users accidentally thinking it's a live service.

You can do this by setting environment variables in the config vars section within settings of the prototype.

  1. Sign in to Heroku
  2. Select your prototype from your dashboard
  3. Click on Settings
  4. Find the section called "Config Vars" (vars means variables)
  5. Click the button that says "Reveal Config Vars"
  6. Add an environment variable where the 'KEY' is NODE_ENV, and the 'VALUE' is 'production'
  7. Add another environment variable where the 'KEY' is PASSWORD, and the 'VALUE' is whatever password you would like to use.

Your app will restart automatically and then next time you visit the prototype, you'll be asked to enter the password.