Official website for Origin Protocol
This is a Flask app with the source code for www.originprotocol.com. The code is all Python 2.7
with Postgres
for the database (basically just for the mailing list). The database is not required to be configured if you're just working on the website.
Note: This site is set up differently from typical virtualenv/flask applications.
Setup a virtualenv
virtualenv company-website && cd company-website
Note: As of Feb 2018, Homebrew on MacOS defaults to Python 3. Therefore you'll need to specify Python 2.7
virtualenv --python=/usr/local/bin/python2 company-website && cd company-website
Clone
git clone https://github.com/OriginProtocol/company-website.git && cd company-website
Enter virtual environment
source env.sh
Install requirements
pip install -r requirements.txt
Rename the file sample.env
to .env
, and update env variables as desired.
mv sample.env .env
Run it!
python main.py
Open browser to view
open https://127.0.0.1:5000/
Problems? Hit us up in the engineering
channel on Discord if you need help.
See README in translations
directory
We use Flask Migrate to handle database revisions. If you make changes to the database, use flask db migrate
to generate the required migration file and then flask db upgrade
to implement and test your changes on your local database before committing.
To enable recaptcha, add the following environment variables to .env
RECAPTCHA_SITE_KEY = "<YOUR SITE KEY>"
RECAPTCHA_SECRET_KEY = "<YOUR SECRET KEY>"
RECAPTCHA_SIZE = "invisible"
You can get Recaptcha keys here: https://www.google.com/recaptcha/admin
To deploy a dev copy of the site on Heroku, you'll follow the normal steps you would to deploy on Heroku, with two additional steps.
After the normal setup and linking, you'll need to ensure the site uses both the python and the nginx backend:
heroku buildpacks:set heroku/python
heroku buildpacks:add https://github.com/heroku/heroku-buildpack-nginx
As a minium, you must set these three Heroku config variables:
Config | Value |
---|---|
FLASK_SECRET_KEY | (make something up) |
PROJECTPATH | /app |
HOST | (domain name of your dev heroku app) |
There are more optional config variables you can set. See sample.env for a full list.