This repository has been archived by the owner. It is now read-only.
Library for rendering HTML in Python
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Fude (筆)

Fude (筆) is a library for representing HTML in Python. It uses Lists to represent elements, and Dicts to represent an element's attributes.

Fude is inspired by Hiccup


Here is a basic example of Fude syntax:

>>> fude.html('text')

>>> fude.html(['tag'])
'<tag />'

>>> fude.html(['div', 'bar'])

>>> fude.html(['span', {'class': 'foo'}, 'bar'])
'<span class="foo">bar</span>'

>>> fude.html(['div', 'bar', ['span', 'baz'], ['span', 'bang']])

>>> fude.html(['div', 'bar', [['span', 'baz'], ['span', 'bang']]])

The first element of the List is used as the element name. The second attribute can optionally be a Dict, in which case it is used to supply the element's attributes. Every other element is considered part of the tag's body.

And provides a CSS-like shortcut for denoting id and class attributes:

>>> fude.html(['', 'bang'])
'<div class="bar baz" id="foo">bang</div>'

>>> fude.html(['', 'bang'])
'<div class="bar baz" id="foo">bang</div>'

If the body of the element is a List, its contents will be expanded out into the element body. This makes working with functions like map and List comprehensions:

>>> fude.html(['ul', [['li', x] for x in range(1, 4)]])


Jun Kikuchi


Copyright (c) 2012 Jun Kikuchi. See LICENSE for details.