A Bulma-based Pelican blog theme; clean, flexible and responsive.
The icons are from Font Awesome by Dave Gandy. The pure HTML/CSS "Fork me
on GitHub" ribbon is based on github-fork-ribbon-css
by Simon Whitaker; I
modified it to be flatter.
-
Responsive design - four column layout on desktop (≥980px), three column on tablet (≥769px), single column on mobile. Tabbed navigation bar collapses into drop-down "burger menu" on mobile.
-
Meta tagging functionality - support for Open Graph and Twitter Cards meta tags, giving enhanced display when sharing articles on social media sites (note: currently only available for articles and pages).
As well as the basic settings, Bulrush supports the following options in
your pelicanconf.py
:
Setting name | What does it do? |
---|---|
DISQUS_SITENAME |
Enables Disqus comments. Note that you should set up the full Comment Count Link, as no additional text is applied. |
GITHUB_URL |
Enables the "Fork me on GitHub" ribbon. |
GOOGLE_ANALYTICS |
Set to ‘UA-XXXX-YYYY’ to activate Google Analytics. |
LINKS |
A list of tuples ('Title', 'URL') for links to appear in the "blogroll" section of the sidebar. |
MENUITEMS |
A list of tuples ('Title', 'URL') for items to appear in the tabbed navigation. |
SITESUBTITLE |
A subtitle to appear in the header. |
SOCIAL |
A list of tuples ('Title', 'URL') to appear in the “social” section of the sidebar. |
TWITTER_USERNAME |
Enables Twitter meta-tags in the article and page headers. |
If DISPLAY_CATEGORIES_ON_MENU
is omitted or set explicitly to True
, the
categories are shown in the tabbed navigation with any MENUITEMS
. If
DISPLAY_PAGES_ON_MENU
is omitted or set explicitly to True
, they are listed
in the sidebar with any SOCIAL
or other LINKS
.
If the following titles are used in SOCIAL
, an appropriate icon is added in
the sidebar:
- Bitbucket
- GitHub
- Stack Overflow
This theme requires an additional Python dependency, webassets
, which can
be added to your project with:
pip install webassets
It also requires two Jinja plugins, webassets
and the with
statement.
To implement this, I have the following in my pelicanconf.py
:
JINJA_EXTENSIONS = ['webassets.ext.jinja2.AssetsExtension', 'jinja2.ext.with_']