- Client-facing Project Manager: Hana Pearlman
- Team-facing Project Manager: Katie Jiang
- Aruna Prasad
- Kasra Koushan
- Steven Bursztyn
- Codirectors: Emily Everett and Melissa Gu
- Wallace He, Jonathan Huang, Katrina Kuhn, Tracy Nguyen
Must use Python3
$ git clone https://github.com/hack4impact/next-gen-scholars.git
$ cd next-gen-scholars
$ pip install venv
$ python3 -m venv env
$ source env/bin/activate
Note: you must use python3+
$ xcode-select --install
Create a file called config.env
that contains environment variables in the following syntax: ENVIRONMENT_VARIABLE=value
. For example,
the mailing environment variables can be set as the following. We recommend using Sendgrid for a mailing SMTP server. But anything else will work as well. You must have PLOTLY_USERNAME
and PLOTLY_API_KEY
set in order to run the application. Make an account on Plotly for more details.
PLOTLY_USERNAME=MyPlotlyUsername
PLOTLY_API_KEY=XXXXXXXXXXXX
MAIL_USERNAME=MySendgridUsername
MAIL_PASSWORD=MySendgridPassword
SECRET_KEY=SuperRandomStringToBeUsedForEncryption
CLIENT_SECRETS_FILE=NameOfFileWithClientSecret
Other Key value pairs:
ADMIN_EMAIL
: set to the default email for your first admin account (default is[email protected]
)ADMIN_PASSWORD
: set to the default password for your first admin account (default ispassword
)DATABASE_URL
: set to a postgresql database url (default isdata-dev.sqlite
)REDISTOGO_URL
: set to Redis To Go URL or any redis server url (default ishttp://localhost:6379
)RAYGUN_APIKEY
: api key for raygun (default isNone
)FLASK_CONFIG
: can bedevelopment
,production
,default
,heroku
,unix
, ortesting
. Most of the time you will usedevelopment
orproduction
.
Note: do not include the config.env
file in any commits. This should remain private.
$ pip install -r requirements.txt
You need Redis, and Sass. Chances are, these commands will work:
Sass:
$ gem install sass
Redis:
Mac (using homebrew):
$ brew install redis
Linux:
$ sudo apt-get install redis-server
You will also need to install PostgresQL
Mac (using homebrew):
$ brew install postgresql
Linux:
$ sudo apt-get install libpq-dev
$ python3 manage.py recreate_db
$ python3 manage.py setup_dev
Note that this will create an admin user with email and password specified by the ADMIN_EMAIL
and ADMIN_PASSWORD
config variables. If not specified, they are both [email protected]
and password
respectively.
$ python3 manage.py add_fake_data
$ source env/bin/activate
$ honcho start -f Local
Before you submit changes to next-gen-scholars, you may want to autoformat your code with python manage.py format
.