Basic project structure
Basic Flask app skeleton
Make a @jsonify decorator to help with the JSON-only API we'll be exposing
Slightly more descriptive name for the decorator
Add testing of the backend via setup.py and unittest
More robust tests for json_result decorator
Tiny improvemet to the decorator test
So it turns out I misremembered the requirements, and there's no need to split the thing into a REST API backend and an Angular client. Bring back the project structure into a more conventional shape.
Ignore files from my local virtualenv
Add package.json. Grunt is still unhappy, though, and the IRC channel is dead, so no mocha tests until I figure that out.
Remove vestiges of the old backend/ and client/ split.
Freeze the PIP environment I use into requirements.txt
Update ignores
Set things up for SQLAlchemy
Add DB creation and migration scripts, stolen from a nice tutorial :)
Add a simple User model and migrate the DB to it
Add a db_upgrade / db_downgrade script to run the recorded migrations
Correct db_create not to issue create_all(), which tries to make the full models and breaks things on a fresh DB that didn't have its migrations ran yet. Similarly, don't force the version to the latest migration, as that means it will *NOT* run the migrations in db_upgrade.
Add a Message model for users to have something when they log in
Use Flask-Migrate/Alembic instead of SQLAlchemy-Migrate. It's better maintained and works much better.