Plumage is a theme for Pelican 3.2, a static site generator written in Python.
I initially created this theme for my blog, but now the theme is supposed to be generic enough to have its own repository.
- Based on Twitter Bootstrap
- Project template
- Tags grouped by tiers
- External assets (Bootstrap, Jquery, etc...) uses CDN
- YouTube links
- Direct link to edit articles on Github
- Pygments syntax highlighting
Plumage has built-in support for the following plugins:
Plumage can be customized by adding these optionnal parameters to your pelicanconf.py
file:
SITE_THUMBNAIL
: Site's thumbnail URL as displayed in the header. Should be a square image of at least 80x80 pixels.SITE_THUMBNAIL_TEXT
: Text displayed behind site's thumbnail.SITESUBTITLE
: Set the subtitle from the site's header.MENUITEMS
: A list of tuples (Title, URL) for additional menu items to appear at the beginning of the main menu.GOOGLE_SEARCH
: Google's Custom Search Engine ID (e.g.partner-pub-0123456789098765:0123456789
) to activate blog specific search.LEFT_SIDEBAR
,RIGHT_SIDEBAR
: HTML content to put as-is in the left or right sidebar.ARTICLE_EDIT_LINK
: Generate an edit link besides each article. Can use%(slug)s
to include dynamic article's slug in the link.SOCIAL
: A list of tuples (Title, URL) to appear in the first columns of the footer.SOCIAL_TITLE
: Ovveride the title of the first column of the footer. Default value:Social
.LINKS
: A list of tuples (Title, URL) for links to appear in the second column of the footer.LINKS_TITLE
: Ovveride the title of the second column of the footer. Default value:Links
.COPYRIGHT
: Additional copyright statement to add in the third column of the footer.DISQUS_SITENAME
: Disqus sitename identifier.GOOGLE_ANALYTICS
: Google Analytics unique identifier (e.g.UA-XXXX-YYYY
).GOOGLE_ANALYTICS_DOMAIN
: Add the_setDomainName
variable to Google Analytics' Javascript code.
Most of these parameters are similar to notmyidea
's (Pelican's default theme). For usage example, please have a look into my own pelicanconf.py
.
The theme is also sensible to this list of standard Pelican parameters:
ARCHIVES_SAVE_AS
AUTHOR_SAVE_AS
CATEGORY_FEED_ATOM
CATEGORY_FEED_RSS
CATEGORY_SAVE_AS
DEFAULT_LANG
DEFAULT_PAGINATION
DISPLAY_PAGES_ON_MENU
FEED_ALL_ATOM
FEED_ALL_RSS
FEED_ATOM
FEED_DOMAIN
FEED_RSS
PDF_PROCESSOR
SITENAME
SITEURL
TAG_FEED_ATOM
TAG_FEED_RSS
TAGS_SAVE_AS
- Hack google search to integrate search result within theme design ?
- Replace Google custom search by https://swiftype.com/ ? Or better, static search: http://ralsina.com.ar/weblog/posts/standalone-search-in-nikola.html
- Fix embedded video aspect-ratio. Maybe the following may help:
- Use a big carousel for front-page articles (ex: http://twitter.github.com/bootstrap/examples/carousel.html ) + a bit of http://srobbin.com/jquery-plugins/backstretch/ to keep aspect-ratio
- Check some web-dev essentials:
- Use custom jinja filters instead of heavy tag soup in my theme ? Example: https://bitbucket.org/sirex/blog/src/32c192ff7a10/pelican.conf.py#cl-53
- Add progressive image loading. See:
- Concatenate and minify CSS and Javascript. See:
- Inline and embed all CSS in the page ? See: http://www.peterbe.com/plog/100-percent-inline-css
- Use LESS version of bootstrap for cleaner customizations ?
- Check and fix style on mobile (especially ugly margins)
- Look at app-template for code inspiration and ideas:
- Make Masonry responsive ? See:
- Add progressive loading on masonery layouts. See: http://masonry.desandro.com/demos/infinite-scroll.html
- Make a macro to generated iconized links
- Generate thumbnails in article content. See:
- Auto-enhance created thumbnails ? See: https://news.ycombinator.com/item?id=5999201
- Generate Disqus static comments for SEO ? See: https://github.com/getpelican/pelican-plugins/tree/master/disqus_static
- Kevin Deldycke kevin@deldycke.com
-
0.3.dev (unreleased)
- Add auto-zoom of images based on Magnific Popup.
-
0.2 (2013-07-09)
- Make theme fully generic through the use of variables.
- Replace custom navigation with Pelican's neighbors plugin.
- Add screenshot.
- Update documentation.
-
0.1 (2013-07-07)
- Theme has now a name: Plumage.
- Move the theme out of my blog repository to its own repository.
- Theme is now generic enough. Update TODO-list accordingly.
-
0.0 (2012-12-23)
- First commit.
The content of this repository is copyrighted (c) 2012-2013 Kevin Deldycke.
This code is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2, or any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
For full details, please see the file named COPYING in the top directory of the source tree. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
The theme uses external softwares, scripts, libraries and artworks:
jQuery MGlass v1.1
Copyright (c) 2012 Younès El Biache
Distributed under a MIT license
Source: https://github.com/younes0/jQuery-MGlass
Solarized Pygment style v0.1.0
Copyright (c) 2012 Shoji KUMAGAI
Distributed under a MIT license
Source: http://pypi.python.org/pypi/pygments-style-solarized
Fabric (Plaid)
Copyright (c) 2012 James Basoo
Distributed under a Creative Commons Attribution-ShareAlike 3.0 Unported license
Source: http://subtlepatterns.com/fabric-plaid/
Cream paper
Copyright (c) 2012 Devin Holmes
Distributed under a Creative Commons Attribution-ShareAlike 3.0 Unported license
Source: http://subtlepatterns.com/cream-paper/