A simple to-do application written in Python using the Flask web framework and PostgreSQL.
You and a partner will work together to complete the user stories in the documentation folder. Here are some helpful pieces of documentation:
- GitHub: Syncing a fork - so you can keep your repo up to date with this one and your partner's
- Psycopg: Basic Module Usage - to learn how to use the database functions
Fork this repo and use git clone to get a copy of your fork on your local machine, then create and activate a virtual environment to install the dependencies.
$ cd flask-todo
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txtThen you can run the shell script provided to create the database for the application:
$ sh bin/create-db.shYou need to set environment variables in your terminal session to use any of the following flask commands:
$ export FLASK_APP=flasktodo
$ export FLASK_ENV=developmentTo create the tables, you can run the following command. You'll need to run this again for any changes to schema.sql.
$ flask init-dbMock data is stored in tests/data.sql and will be inserted into the test database for every test. If you would like to use the same data when developing, you can run this command to insert it into the development database.
$ flask mock-db$ flask runYou should be able to view the app at http://localhost:5000.
$ coverage run -m pytest
$ coverage reportThe first command runs your tests, while the second will show you a report of your total test coverage across all your modules. To generate a more detailed interactive report, run this command and view the result in your browser, which allows you to click on each module and see which lines need to be tested.
$ coverage html
$ open htmlcov/index.htmlIf you've forked this repo, you can deploy your code by clicking the button above.