Subtle Pelican Theme

pelican-subtle is a responsive theme for Pelican, it is my take on Giulio Fidente's pelican-svbhack theme.

Demo

You can see the theme in action on my site (site source code).

theme screenshot

Features

  • Clean, responsive design. Scales to fit any screen
  • Fully HTML5 complient
  • Fully usable without Javascript (although enabling it adds more functionality)
  • Ability to hide email addresses from spambots
  • Syntax highlighting for code blocks
  • Integrated Google Analytics
  • Custom sidebar links and social icons
  • Fuzzy date display (ex: "Posted 2 days ago") using Javascript
  • Disqus comment integration
  • Automatically minifies and compresses Javascript and CSS

Dependencies

For automatic minification and compression of assets, this theme uses the webassets package, along with cssmin for minifying css, slimit for compressing Javascript, and libsass for compiling the SCSS styles.

  • All these can be installed with pip by running pip install -r requirements.txt

Additionally, to integrate the webassets package into pelican, the pelican-assets plugin is required. It's included in this repo as a submodule so it just needs to be activated in pelicanconf.py.

  • Add "<theme dir>/plugins" to the PLUGIN_PATHS list (or os.path.join("<theme dir>", "plugins") if you're feeling Pythonic)
  • Add "assets" to the PLUGINS list

Installing

  1. Clone this repository making sure to get the submodules (ex: git clone --recursive <repo>)
  2. Install and configure the required dependencies (see above)
  3. Modify the THEME variable in pelicanconf.py to point to the cloned theme location
  4. Customize the theme using the options below

pelicanconf.py

When developing locally, you may want to set SITEURL to somrething like http://localhost:8000

This theme supports a number of custom variables:

  • GOOGLE_ANALYTICS_ID: Your Google Analytics UA-XXXXXXXX-X code (None to disable analytics).
  • GOOGLE_ANALYTICS_PROP: Your Google Analytics property name (None to disable analytics).
  • DISQUS_SITENAME: Set this to enable Disqus comments on articles.
  • DISQUS_COLLAPSED: Set to True to have article comments hidden by default. Clicking a link on the page will load them.
  • USER_LOGO_URL: The image to display as the profile image. Can be local or a remote URL.
  • TAGLINE: The site's tagline. Rendered right below the user image.
  • MANGLE_EMAILS: If enabled, any emails in the SOCIAL or LINKS lists will be obfuscated in HTML and have their links generated by Javascript when the page loads.
  • GLOBAL_KEYWORDS: A list of strings that will be set as meta keywords for each page.
  • FUZZY_DATES: If True, uses lw-timeago to display fuzzy dates on articles (eg. 'Posted 3 months ago').

Authors

pelican-subtle is authored by pR0Ps.

pelican-svbhack is authored by Giulio Fidente.

Pull requests welcome!

Licence

The MIT License (MIT)
Copyright (c) 2012 William Ting
Copyright (c) 2013 Giulio Fidente
Copyright (c) 2015 Carey Metcalfe

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.