Well, Hello There, Flask…

RawScripts currently runs on Google AppEngine. It has been a helpful framework and hosting solution up until now, but it just isn’t compatible with the direction the project needs to go — codewise, or philosophically.. It’s becoming restrictive on some code I wanna run, the prices are going up, and I want RawScripts to run on any home server so you can host it yourself. So, a major goal in fixing RawScripts is to get it off of Google AppEngine, and I’ve been looking at a lot of alternatives. The search for a replacement framework has been intense, but I believe it has come to an end. Flask is so freakin’ neat.

Flask came recommened by several folks interested in the RawScripts. I admit, it had kinda gone under my radar, but once I got into it, I was downright giddy. So I’d like to quickly run through ‘why-flask’ and how I got to this conclusion.

Flask is so freakin’ neat – Oh my god oh my god oh my god. Oh my god. It’s just fun.

Flask gets out of the way – It provides some glue between the webserver and the application, handling requests and sessions. And past that, it really doesn’t force you to use anything. Pick your own authentication, pick your own database management, pick a nifty task queue. As great as Django is, there’s too much pressure to do things Django’s way, and that isn’t the best for this project (nor my sanity). Building openId on top of existing authentication?…. eww.

Templating – Jinja is the only major decision Flask made for me, but I quite like it. Plus, it’s very similar to Django’s (and thus AppEngine’s) templating system, so the majority of my templates are good to go.

Documentation – I’m not that bright sometimes. So, sorry web.py. Sorry pylons. I don’t know what you’re talking about. Flask’s documentation, however, is great. Clear writing in both big concepts and specific APIs. Even documentation for their plugins (SQLAlchemey, OpenID, etc) are great.

Deployment – It’d be great if RawScripts could run on a wide range of devices, run by people who don’t need to know much about computers. So deployment is big, and Flask will allow us to make that simple. Few dependencies, almost no configuration. Just point apache at the app and go.

So anyways, I am now moving forward working with Flask, converting what I’ve got, and building what is needed. Still at very early stages, and this will be off the main branch for a while I expect. But check it out. It’s very exciting.

This entry was posted in Uncategorized. Bookmark the permalink. Comments are closed, but you can leave a trackback: Trackback URL.