Python
Python is a programming language and web server runtime environment used for many IndieWeb projects.
Contents |
IndieWeb Examples
Examples of indieweb community members who are using Python on their personal sites (alphabetical order):
Bear
Bear's uses Kaku, a Python based static site generator, to run his personal site bearlog and uses the following Python projects:
Jen Montes
Jen Montes uses PISS to run her personal site, https://jenmontes.com, with help from the following Python projects:
- Eve
- ... Probably others. Too soon to tell!
Kartik Prabhu
Kartik Prabhu's personal site Parallel Transport runs on Bundle and uses the following Python IndieWeb projects:
- ronkyuu
- mf2py
- mf2util
Kyle Mahan
Kyle Mahan uses Red Wind (written in Python) to run his personal site http://kylewm.com/ with the following Python projects:
David Reeve
David Reeve's site Lancey Space uses Red Wind with the following Python projects:
Libraries
Generally useful libraries being developed by IndieWeb participants in Python.
- ronkyuu, a collection of tools for sending webmentions and verifying rel=me.
- webmention-tools, utilities to send webmentions and query Webmention.io
- mf2py, a microformats2 parser
- Bleeding-edge development currently being done on Kartik's fork. Will be folded into the master in the future.
- mf2util is a microformats2-specific parsing utility. Useful for reading the relevant properties for comments and reply-contexts. Also has some special handling for date/times that converts them into Python datetime or date objects.
- ninka is a small library to handle indieauth endpoint discovery and auth token validation
- python-indieweb is an example Flask app that implements IndieAuth, webmentions, micropub-endpoint and token-endpoint.
- granary fetches and converts silo data (Facebook, Flickr, Google+, Instagram, and Twitter via their APIs) to/from ActivityStreams, microformats2 HTML and JSON, Atom, and more. Also available as a REST service.
Third-party Libraries
Non-IndieWeb-specific libraries that may still be of interest.
- Requests: By far the best way to interact with any HTML endpoint.
- BeautifulSoup: sits of top of other HTML parsing libraries (lxml or html5lib) and provides a nice interface for wading through HTML, even horribly broken HTML.
- Bleach: sanitizer and autolinker. Useful for removing dangerous code from e.g., for displaying remote content. Excludes almost everything by default.
Projects
IndieWeb projects built with Python:
- Bridgy (open source) runs on Google AppEngine
- granary
- oauth-dropins
- webmention-tools
- mf2py
- Kaku
- Red Wind
- Bundle
- Woodwind
Hosting
Python does not have PHP's ubiquity, and finding hosting can be a little bit more of a challenge. See web_hosting for more details.
- Google AppEngine (webapp, Django)
- Webfaction
- Heroku (Flask, Django)
- VPS running a WSGI server like uWSGI or gunicorn.
















