When Posterous was created, it was perfect.
Over time it became bloated, but it's heart was still in the right place. Then it died.
Preposter.us is an attempt to ressurect the heart of Posterous, in around 500 lines of Python.
After a long hiatus, this project is being revived, slowly. Once a permanent blog has been established to track progress, a link will be added here.
How it works
To start a new blog, send a post via email to preposter.us's email address. Preposter.us will read the email, create a new blog and post your initial entry. When you want to create a new post, send another email. To edit/update an existing post, send another email with a subject line that is identical to the title of the post you want to update. To delete a post, send an email with an identical title that contains no text in the body.
Preposter.us maintains an index of all bloggers using each server, and generates an index for the posts in each blog as well. Blogs are identified by the email address used to post, so to create additional blogs, just submit a post from a different email address.
Anything that can send an email can publish via Preposter.us.
Preposter.us requires Python (tested with 2.7, but probably works with any 2.x version), and a webserver that can serve static HTML; thats all. No database, no external libraries, nada.
To setup a Preposter.us server, start by setting up an email address that the server will listen to (an address you'll be sending posts to), free gmail addresses work great for this.
Next clone this repository and copy preposter.us.cfg.template to preposter.us.cfg. Using your favorite editor, open preposter.us.cfg, theres a couple configuration variables you'll need to setup for your site.
Once the script is configured, send a post to the email address you setup above and then run the preposter.us.py script. If all goes well it will return silently, and you should have a new directory where you specified the web root to be. If the script returns an error, or doesn't create a new blog directory, review the Issues list here to see if you're experiencing a known issue. If not, and if you don't know what else to do, post a new Issue here with details on your setup and how to recreate the error.
If all goes well the next step is to expose your blog files to the web. The files generated by Preposter.us are simple HTML and can be served using any webserver (or even viewed directly in a browser). Finally, setup a cron job to run preposter.us.py on a scheduled basis to automatically post new blog entries whenever they come into the mailbox.
If you just want to use Preposter.us but don't want to run your own server email your first post to "post at preposter.us".