Skip to main content
bitsyblog doesn't do much, but it could do less


Why another blog?
-----------------

My ideal blog would invoke my favorite editor, take a bunch of text, and
throw it on the web. Sometimes I like to write long elaborate posts.
Othertimes I just want to make a quick note.

Meet `bitsyblog <http://bitsyblog.biz>`,
a tiny tiny `python <http://python.org/>`
`weblog <http://pypi.python.org/pypi/bitsyblog/>`.
Posting is done with a POST request, so while you can use
a web form to do this, its just as easy to use curl, urllib, or anything else
to post.


How does it work?
-----------------

A user URLs is like

http://bitsyblog.org/k0s

k0s is my user name here . If you are 1337h4x0r, this will be
http://bitsyblog.org/1337h4x0r .
Posting to this will take the body of the POST request and add a date stamp
Blog entries are thrown in files and are displayed with markup
available with `restructured text
<http://docutils.sourceforge.net/docs/user/rst/quickref.html>`.

You can also get a more specific range of posts
by specifying up to the year, month
day, and even hour in the URL:

http://bitsyblog.biz/k0s/2008/2/1

Not all of this needs to be specified.

Permalinks are also available in the form of the date stamp:

http://bitsyblog.biz/k0s/20080201141502

You can find the permalink by clicking on the subject of the blog post.

If you really want to post through the web, support is at

http://bitsyblog.org/k0s/post

If you're more friendly with python scripts,
`blogme.py <http://svn.sccs.swarthmore.edu/egj/bitsyblog/blogme.py>`
is available:
http://svn.sccs.swarthmore.edu/egj/bitsyblog/blogme.py


Get me a blog!
--------------

Create an account at http://bitsyblog.biz/join . All you need is a
username and password (though I'll probably throw a
`CAPTCHA <http://skimpygimpy.sourceforge.net/>` in there at some
point, maybe an email address for password reset if I can figure out
postfix). Then...you're ready to blog! The auth is a minimal thing
I threw together out of `paste.auth <http://pythonpaste.org/>`.

Once you're signed in, you'll notice the navigation links at the top
of the page have changed. You can now post and change your preferences.

In your preferences, you can change the date format and set the
subject format of your blog posts. You can also upload
verifiable CSS to theme your blog. For the date format, I have patched
`dateutil.parser <http://labix.org/python-dateutil>`
to return the format string that the date was originally in and hope
that my changes can make it back to the source sometime.

When posting, you have the option to make your post 'public' (everyone
can see it), 'secret' (only your friends can see it), 'private' (only
you can see it. Friends are settable in your preferences.


What bitsyblog doesn't do
-------------------------

* Commenting: this should done with
`WSGI middlware
<http://groovie.org/articles/2005/10/06/wsgi-and-wsgi-middleware-is-easy>`.
There's nothing specific about commenting on a blog post that is any
different from commenting on a paragraph in (for instance) a wiki article.

* Tagging: again, this should be done with middleware

* Hosting files: Its a blog, not a file repo! Any markup doable with
`restructured text <http://docutils.sourceforge.net/rst.html>`
is doable with bitsyblog, but images, videos, w must
be held off-site.


What is next for bitsyblog?
---------------------------

It might be a good idea to add in RSS/atom feeds too. This seems like
it should belong to the app itself instead of another piece of software.

Other than that, its a pretty small project. No templates and
currently about 700 lines of code. (I'll get it back to 500, I
swear). bitsyblog is designed as a personal blog that should be strong
in both workflow as well as "niceness" of code.

I'm guessing your blog doesn't do much...but could it do less?


bitsyblog is built on top of `paste <http://pythonpaste.org/>`
and `webob <http://pythonpaste.org/webob/>`. You'll need the
trunk version of paste for a change made to
`paste.auth.auth_tkt
<http://svn.pythonpaste.org/Paste/trunk/paste/auth/auth_tkt.py>`
in order to have cookies work correctly (r7261).

Thanks to `The Open Planning Project <http://www.openplans.org>`
and my friends there for making this possible.

Please email jhammel at openplans dot org with any questions.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bitsyblog-0.7.2.tar.gz (44.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bitsyblog-0.7.2-py2.5.egg (56.8 kB view details)

Uploaded Egg

File details

Details for the file bitsyblog-0.7.2.tar.gz.

File metadata

  • Download URL: bitsyblog-0.7.2.tar.gz
  • Upload date:
  • Size: 44.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bitsyblog-0.7.2.tar.gz
Algorithm Hash digest
SHA256 db5b612ca8922b0437857966c2426a38f052aa16f8bcdfb6bc7078eba7e887f9
MD5 f69acf2cf1cffc170fa6212bd3a81a42
BLAKE2b-256 9885c57fc9d0691b6830589559229a7cbc0ca9e36dfce2bed1f0c5f58eff208d

See more details on using hashes here.

File details

Details for the file bitsyblog-0.7.2-py2.5.egg.

File metadata

  • Download URL: bitsyblog-0.7.2-py2.5.egg
  • Upload date:
  • Size: 56.8 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bitsyblog-0.7.2-py2.5.egg
Algorithm Hash digest
SHA256 dfb01f33a79a9d6d234a0f83dbbf4116539be98fd12520075c7444f39a3f570c
MD5 36b6ba3c53a61ef5414f384b85153ee2
BLAKE2b-256 ccade4d6016336635c1beb281f8dc84f473e6990da711bc69473109288451398

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page