- Install python: https://www.python.org/downloads/
- Install pip: https://pip.pypa.io/en/stable/installing/
- Install virtualenv: https://virtualenv.pypa.io/en/latest/installation/
pip install virtualenv
- Windows-specific pre-reqs:
- Install VS C++ build tools: https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15
- build a virtualenv for your project
cd <project path>
virtualenv venv
- Linux:
source venv/bin/activate
- Windows:
venv/Scripts/activate
- Install application requirements in your virtual environment:
pip install -r requirements.txt
- Run the application (make sure you run this from the project directory):
python src/app.py
Point your web browser to http://localhost:5000
- Install PostgresSQL (https://www.postgresql.org/download/)
- Use an admin username/password that you will remember later.
- This is different based on your OS, just make sure you don't deviate from the defaults.
- Create the "ChoreExplore" Database
- You can do this using PGAdmin (should have been installed if you ran the Windows installer), or using the command line tool.
- Create a user account 'cxp' with the password 'choresarereallyfun'
- This is hard-coded for now into our config, will change this in production
- Make 'cxp' the owner of the ChoreExplore database
- Make 'cxp' the owner of the public schema under the ChoreExplore database
- Run the python setup scripts
- From the project directory, run:
python .\setup-scripts\XX-CleanDatabase.py
- This script deletes all of the tables (cleans up) and prepares for the next script below
python .\setup-scripts\01-CreateAndSeedTables.py
- This will create all of the necessary tables, seed the administrator user, and seed the roles.
- You should run these two commands every time you check out a new branch - things may have changed.
- From the project directory, run:
- Install Node (https://nodejs.org/en/download/)
- Instal Gulp (
npm install gulp -g
from the command line) - Install Yarn (https://yarnpkg.com/en/docs/install)
Open your terminal, execute the following in the root folder:
yarn
(Downloads all frontend/development dependencies)gulp fonts
(Copies fontawesome fonts over to static/fonts)gulp min
(runs min to minify JS/CSS files)- You need to re-run
gulp min
every time you make a change to JS/CSS files for it to re-minify and pick up your changes.
- You need to re-run
- Command to run the test email server to debug notifications/reminders:
python -m smtpd -n -c DebuggingServer localhost:1025