public
Description: a lightweight and simple python web framework
Homepage: http://brianreily.com/project/juno/
Clone URL: git://github.com/breily/juno.git
breily (author)
Fri Apr 10 09:17:45 -0700 2009
commit  b1a5a0da361266c7de91139ed348056ce20326db
tree    bd3d21a859acf06ce7b912d728f55cdb369e496e
parent  350306d39714d36e0d4f857ae8e46b188862c243
juno /
name age message
file .gitignore Sat Mar 14 03:55:46 -0700 2009 * Put Juno onto Pypi * Added MANIFEST file * Ad... [breily]
file LICENSE Mon Mar 09 20:31:37 -0700 2009 * Added MIT license. [breily]
file MANIFEST Sat Mar 14 03:55:46 -0700 2009 * Put Juno onto Pypi * Added MANIFEST file * Ad... [breily]
file README.md Sat Mar 14 04:02:08 -0700 2009 * Added easy_install note to README [breily]
file TODO Wed Mar 25 17:19:17 -0700 2009 * Fixed bug in model.find(); used old model_tab... [breily]
directory doc/ Wed Mar 25 16:56:37 -0700 2009 * Add sessions to documentation (#3). [breily]
file juno.py Wed Mar 25 17:19:17 -0700 2009 * Fixed bug in model.find(); used old model_tab... [breily]
file setup.py Loading commit data...
directory templates/ Sun Feb 22 00:33:34 -0800 2009 * 404/500 templates don't show both libraries t... [breily]
directory tests/ Sat Mar 21 10:43:36 -0700 2009 * Added some tests for the Content-Type header. [breily]
README.md

Juno

Using Juno

To start off:

from juno import *

@route('/')
def index(web):
    return 'Juno says hi'

run()

Add some url handling:

@route('/hello/:name/')
def hello(web, name):
    return 'Hello, %s' %name

Use a template:

@get('/hi_template/:name/')
def template_hi(web, name):
    template('hello.html', name=name)

Build a model:

Person = model('Person', name='string')
p = Person(name='brian')

Features

  • All normal web framework stuff (models, routes, views, templates)
  • WSGI compliant, with included development server as well as SCGI/FastCGI servers
  • Database access through SQLAlchemy
  • Templating included through Jinja2 and Mako, but Juno can use anything.

Install

  • You can use easy_install:

    easy_install Juno
    
  • Or pull from Github, and then do:

    $ python setup.py install   # As root
    $ python
    >>> import juno             # Make sure everything worked
    
  • Requires: SQLAlchemy

  • Optional:

Help / Contribute

Note

  • Juno violates some usual principles of good design (don't use global variables, don't do things implicitly, etc.) for the sake of fast development and less boilerplate code. You've been warned.