Hackblogs is DVCS based blog system for hackers.
A little explanation of the above sentence:
- DVCS - your blog posts will be on Github/Bitbucket. You do not communicate with/use anything but git/hg and Github/Bitbucket
- blog system - your blog is hosted statically (meaning HTML and CSS files) on our server
- for hackers - you will write posts in rST, Markdown and similar formats and will use DVCS to publish them so it's expected of you to find your way around with this tools
- Create repository on Github/Bitbucket that will host your blog posts
- for now, repository needs to be public, in future we will also support private repos
- Set commit POST hook to point to Hackblogs server
- you can do this in Admin panel
- Push blog posts to your repository
- you can write them in rST, Markdown, HTML or TXT format
- Go to your_username.hackblo.gs to see you blog.
- Hackblogs is intended to be used as a service, which means you blog will be hosted on our server
Project is still in early development stage.
Some info on www.hackblo.gs
System has 2 main components:
- Request listener
- Request processor
They communicate over Celery queue; first component puts requests for processing in queue, second component pulls and processes them.
Basically, this compoment listens and parses requests from DVCS.
- Listen for POST requests from DVCS notifying us of new commits to repository that has blog posts
- Parse JSON payload and assemble Request object
- Put Request object to queue for processing by other component
This component pulls Request objects from queue and processes them.
- Pull Request object from queue
- Extract modified, added and deleted filenames from Request
- Pull modified and added files from DVCS
- Do any conversions (rST to HTML, Markdown to HTML...) on modified and added files if necessary
- Publih modified and added files (copy to folder from where nginx will serve them)
- Remove deleted files