This repository hosts the code for my personal blog website.
The website is powered by Pelican — a static site generator written in Python
The easiest way to do this is in a Python virtual environment.
Once you have virtualenv
installed, create a virtual environment to hold Pelican and its dependencies:
$ virtualenv .venv
$ source .venv/bin/activate
This creates a virtual environment and then activates it. If you want to exit the virtual environment, type:
$ deactivate
If you haven't already, clone your version of the repo:
$ git clone --recurse-submodules https://github.com/yourusername/repo/fork
Use pip
to install the list of dependencies (including Pelican) into your virtual environment:
$ pip install -r requirements.txt
Now that the dependencies exists, we can build:
$ fab build
This takes the Markdown files from the content/
directory and generates static HTML pages inside the output/
directory. That's it. No database required.
You can serve the generated site so it can be previewed in your browser:
$ fab serve
And you should see the blog if you visit http://localhost:8000.
If you're interested in writing a blog post for the website, you need to:
- Fork the repository
- Write a blog post using Markdown in the
content
directory - Push the changes to a topic branch, like
an-example-article
, on your fork of the repository - Make a pull request against the
source
branch
This blog is hosted by GitHub Pages and uses CloudFlare for CDN and HTTPS. A Custom domain is used. Continuous integration with Travis builds the site everytime the source is updated.
The source code for generation of the blog is under MIT License. Content is copyrighted.
If you have any questions, you can email me.