Skip to content

cleverdevil/puny

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Puny: Pure-Python IndieWeb CMS

Puny is a Python-based project for building websites for the IndieWeb. Puny implements:

To use Puny, you'll need an IndieAuth server. PunyAuth is a good choice!

Puny is very much in-progress at the moment, and was mostly written to help me better understand Micropub, IndieAuth, microformats, and other IndieWeb building blocks. I'd love it to eventually power my own (and many other) websites!

Implementation Details

Puny makes use of:

  • The Pecan Python web framework.
  • Mako for templating.
  • My microformats2 library for validation and post type discovery.
  • Maya for dealing with dates and times.
  • awesome-slugify for slug gen.
  • MySQL with JSON columns to store content.
  • Amazon S3 for media uploads.

Project Status

Puny passes the vast majority of the micropub.rocks test suite:

https://micropub.rocks/implementation-reports/servers/184/KD5Xbb6xfr5XRZsqwIvE

It renders some (though, not all) content, and has a very minimal timeline view.