Lonely Lion

Chris McAvoy likes kites

Django on AppEngine

with 4 comments

I started my first AppEngine project this evening. I was lucky enough to get into the Beta. I don’t want to be too gushy or hyperbolic, but this is the future folks.

I’m not going to cover the bits about what appengine is, I’m assuming you’ve heard. If not, head over to the appengine site and do some reading. If you’re a little bit confused about WSGI, I encourage you to read anything Ian Bicking has written over the past few years, or my humble article on building a wsgi app.

So…my plan is to build a tomato tracking application on top of THE CLOUD (cue the music). The wife and I are planting a bunch of tomatoes this year, so I’m sort of hopped up on them. The app will let folks to report on the life, well being, and eventual yields of their backyard tomatoes. It’s going to be the world’s greatest web application. I’m going to develop it before a live studio audience via the TomatoBase Google Code Project. The app will live at http://tomatobase.appspot.com.

So far, there’s not much there. Just a landing page that says something pithy, that’s protected by a Google user login. I initially thought I’d jump feet first into the Google themed stack, using their very fancy webapp api, but after reading how easy it is to just go for Django, I decided to go with what I know. There’s a few gotchas, it’s really more like Django-Lite, but it’s still pretty darn good. You lose the ORM and Admin, but still get the url mapper, controllers, middleware, templates…oh, and BigTable. Pretty good trade as far as I’m concerned.

Developing with the toolkit is pretty slick, everything runs locally until you’re ready to push, and then it’s a quick “appcfg.py update django-mater” and it goes live. So simple. I love it.

I haven’t really ventured beyond exploration into actual TomatoBase development just yet. I started exploring the user system a bit, it’s pretty straight-forward. So straight-forward that I contributed a decorator to Django Snippets that lets you use the user system in a @loginrequired sort of way. It’s here: Google AppEngine Login Decorator.

I’m moving much quicker on this than I anticipated. I thought I wouldn’t have time to explore until this weekend, but it’s a really compelling product. I’m excited for them to open it up to a wider audience. At some point I’ll write a bit about what I think this all means (this means something), but for now I’m too busy playing.

Written by Chris

April 8th, 2008 at 8:51 pm

Posted in Projects, Python, appengine

4 Responses to 'Django on AppEngine'

Subscribe to comments with RSS or TrackBack to 'Django on AppEngine'.

  1. I think you should hook TomatoBase up to twitter. I want real-time updates on your tomato plants!

    pam

    8 Apr 08 at 11:46 pm

  2. AttAttack of the Killer Tomatoes!…

    Google App Engine already has it’s Killer App….

  3. Chris,

    Unbelievable! I found your googleapp site after googling for inurl:appspot.com just to see what people were doing. I’m jealous that you got an account. I was sleeping over here in Korea when it was announced to the rest of the world!

    Dan

    Dan Bravender

    9 Apr 08 at 8:42 am

  4. Cris, would you like to try out something for Ruby on Rails? Go check out the implementation at morphexchange.com.

    M L

    21 Apr 08 at 10:07 am

Leave a Reply