Adventures in code and computation.

Progress on Taskelot's Database

After going through the Flask Quickstart and Flask (Flaskr) Tutorial, I have a reasonable idea on how to build a very simple Flask app, including a simple SQLite database backend and a basic testing strategy. I want to finish perusing the Flask documentation soon, but I feel it’s important to make some real progress on Taskelot before I do.

To get a quick start I will use SQLite3 for the database store. I doubt I will continue using SQLite once it’s ready for public testing in a PaaS context, but for my first-blush efforts at producing something I can use right now, SQLite is the perfect choice.

So far I’ve created a schema sql file which I can manually load into a hard-coded database location, and a sample data sql file which I can use to quickly input some test data. I now render the HTML using Jinja2 (which html still contains it’s references to front-end libraries) and have a function Flask routes GET requests on ‘/’ to which grabs the projects and tasks from my SQLite3 database and dumps them to the browser.

Here’s a screencast of me working on this:

I am making progress, however small, on this project; for that I am pleased. Check out a screenshot of the app pulling out projects and tasks:

Screenshot of Taskelot showing projects and tasks

Also, as you might have noticed in the video, I’ve been experimenting with the Atom Text Editor as well. It has been working good for me, but I wouldn’t want to use it on a low-end system (such as a netbook). Atom has been working well on my workstation and laptop, however, and is very full-featured and extensible with sane default settings.

The code written during the above timelapse video can be viewed here.