Planet Jekyll Alternatives

Updated Tuesday, 10 February 2015 08:27
{}
Official Nikola News » Python ( Feed )
Monday, 12 January 2015
Nikola v7.3.0 is out!

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.3.0. It features many bugfixes, and also some new useful features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.3.0. It features many bugfixes, and also some new useful features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn IPython Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

Find out more at the website: http://getnikola.com/

Downloads

Get it on GitHub and PyPI.

Changes

Features

  • Added -a, --author option to set post author field
  • Added option INDEXES_PRETTY_PAGE_URL to make URLs for indexes pages more pretty. (Issue #1548)
  • Added -i, --import argument to new_post for importing existing post contents (Issue #1385)
  • Added warning about password in posts being insecure (Issue #1547)
  • INDEXES_TITLE and INDEXES_PAGES are translatable (Issue #1544)
  • Added new option ARCHIVES_ARE_INDEXES which allows archive pages which list posts to be rendered with the post contents. (Issue #1537)
  • Added new option INDEXES_STATIC which allows to define the page ordering for indexes (Issue #1537). Also, if tag pages are created as indexes, they will behave more close to the default indexes.
  • Use table line-numbering style with reST code, making copy-pasting code possible (Issue #1285)
  • Tag and category pages are now more separated. The prefix for category pages can be changed and the folder can be modified independently of the tags' folder. (Issue #1535)
  • Writing the tag cloud data file can now be disabled. Will be disabled by default in the future. (Issue #1535)
  • The utils.config_changed function now takes an optional extra argument, identifier, used to identify the source of a specific dependency save. As such, ALL your files will be rebuilt after upgrading. (Issue #1526 via #1521)
  • New option GALLERY_FOLDERS replacing GALLERY_PATH (Issue #1511)
  • New PANDOC_OPTIONS option (Issue #1492)
  • New tab-width option in code-block directive (Issue #1514)
  • New option TAG_PAGES_DESCRIPTIONS for optionally making individual tag pages more unique and interesting (Issue #1486)
  • New option LISTINGS_FOLDERS (which replaces LISTINGS_FOLDER) which allows to separate input and output folder names for listings, and allows to have more than one listings folder (Issue #1499)
  • ReST listing directive now honors alternative listings folder names (Issue #1499)
  • New command line option --conf= to specify the configuration file (default is conf.py) (Issue #1501)
  • Added Arabic translation (by darkwise)
  • Added Danish translation (by mikkelkristiansen)
  • Added Indonesian translation (by Willy Sudiarto Raharjo)
  • Added Korean translation (by Dong Geun)
  • Added Serbian translation (by Ivan Radeljic)
  • Added Swedish translation (by Johan Sommerfeld)
  • New advanced option RSS_LINKS_APPEND_QUERY for tracking traffic from RSS subscribers
  • Add robots meta tag with value noindex for drafts (Issue #1489)
  • New option TAGLIST_MINIMUM_POSTS allows hiding unpopular tags from the tag index page (Issue #1484)
  • New options CREATE_FULL_ARCHIVES and CREATE_DAILY_ARCHIVE which allow to create non-hierarchical archives and archives for days, respectively (Issue #1494)
  • New plugin for creating image thumbnails, and a corresponding reST plugin (Issue #1527)

Bugfixes

  • Handle over-and-under-lined titles in rst for guessing title (Issue #1539)
  • Don't apply colorbox to figures if they are of islink class. (Issue #1536)
  • Turned minify_lines into a no-op (Issue #1497)
  • Don’t classify unpublished posts as pages (Issue #1577)
  • Fixed a TranslatableSetting.langformat race condition
  • Fixed TranslatableSetting instantiation in TranslatableSetting.langformat (Issue #1571)
  • Fixed rss.xsl path for blogs not deployed to server root (Issue #1563)
  • Respect SHOW_UNTRANSLATED_POSTS = False in archives and for untranslated source files (Issue #1360)
  • Make sure drafts don’t appear in sitemaps with multiple languages (Issue #1489)
  • Make site.posts_per_file cover all languages (Issues #1270, #1489)
  • Fix ANNOTATIONS not working at all (Issue #1477)
  • Fix asking questions with Unicode chars in Python 2 (Issue #1476)
  • Use ADDITIONAL_METADATA with the two-file format (Issue #1471)
  • Make previewimage compatible with sites deployed to subdirectories (Issue #1473)
  • Make sitemaps work on sites deployed to subdirectories (Issue #1472)
{}
Official Pelican News » Python ( Feed )
Wednesday, 19 November 2014
Pelican 3.5 released

Today we are pleased to announce the release of Pelican 3.5. Highlights of the improvements contained in this release follow below.

For those who are new to Pelican, please refer to the Quickstart Guide. There is also a Tutorials page available, which currently includes a link to a Pelican

Today we are pleased to announce the release of Pelican 3.5. Highlights of the improvements contained in this release follow below.

For those who are new to Pelican, please refer to the Quickstart Guide. There is also a Tutorials page available, which currently includes a link to a Pelican installation screencast.

Highlights

  • Introduce ARTICLE_ORDER_BY and PAGE_ORDER_BY settings to control the order of articles and pages.
  • Include time zone information in dates rendered in templates.
  • Expose the reader name in the metadata for articles and pages.
  • Allow storing static files in the same directory as content source files, without causing the raw content sources to be published.
  • Introduce the {attach} internal link syntax for placing a static file in the same output directory as the document that links to it.
  • Prevent Pelican from raising an exception when there are duplicate pieces of metadata in a Markdown file.
  • Introduce the TYPOGRIFY_IGNORE_TAGS setting to add HTML tags to be ignored by Typogrify.
  • Add the ability to use - in date formats to strip leading zeros. For example, %-d/%-m/%y will now result in the date 9/8/12.
  • Ensure feed generation is correctly disabled during quickstart configuration.
  • Fix PAGE_EXCLUDES and ARTICLE_EXCLUDES from incorrectly matching sub-directories.
  • Introduce STATIC_EXCLUDE setting to add static file excludes.
  • Fix an issue when using PAGINATION_PATTERNS while RELATIVE_URLS is enabled.
  • Fix feed generation causing links to use the wrong language for month names when using other locales.
  • Fix an issue where the authors list in the simple template wasn't correctly formatted.
  • Fix an issue when parsing non-string URLs from settings.
  • Improve consistency of debug and warning messages.

For a full list of changes, see: https://github.com/getpelican/pelican/compare/3.4.0...3.5.0

Upgrading from previous releases

While we do everything we can to maximize backwards compatibility and ensure smooth Pelican upgrades, it's possible that you may encounter un-anticipated wrinkles. If you run into problems, please reach out via the #pelican channel on IRC, and we will update this post with any upgrade tips contributed by the Pelican community.

{}
Official Nikola News » Python ( Feed )
Sunday, 02 November 2014
Nikola v7.2.0 is out!

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.2.0. It features many bugfixes, and also some new useful features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input

On behalf of the Nikola team, I am pleased to announce the immediate availability of Nikola v7.2.0. It features many bugfixes, and also some new useful features.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn IPython Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

Find out more at the website: http://getnikola.com/

Downloads

Get it on GitHub and PyPI.

Changes

Features

  • Added support for fancy dates via moment.js (Issue #1256)
  • Updates: jQuery v1.11.1, Bootstrap v3.3.0
  • Allow presets usage with nikola deployDEPLOY_COMMANDS is now a dict of {preset: commands} (Issue #1452)
  • New GLOBAL_CONTEXT_FILLER setting, functions listed there will be called with the local context and the template name before template rendering. (Issue #1451)
  • New USE_CDN_WARNING setting to block warnings about potential USE_CDN misuse (defaults to True)
  • nikola check -l will warn about mixed-security (HTTP on HTTPS)
  • New ConfigPlugin category (without any specific behavior by default)
  • New meta property “previewimage” for use with Open Graph (Issue #1421)
  • Expose publishing date, tags, and more in Open Graph
  • XSL Transform RSS into pretty and helpful webpages when opened in browsers (Issue #1411)

Bugfixes

  • Don’t pull by default in github_deploy (Issue #1464)
  • disabled hyphenation for paragraphs with inline math (Issue #1461)
  • Support filters for all tasks (Issue #1459)
  • Don’t check cache/ in nikola check -l (Issue #1447)
  • Fix new_post for pandoc format (Issue #1445)
  • Fix STORY_INDEX generation (Issue #1444)
  • Fix bootswatch creation version check (Issue #1441)
  • Never rebase while pulling in github_deploy
  • Handle better new_post --format=pandoc when pandoc is not defined (Issue #1422)
  • Open Graph properly uses latest RDFa in HTML – fixes validation
  • Fix sitemap generation (Issue #1397 via #1032)
  • Use destination folder names as titles for titleless listings
  • Fixed problems with installation from .tar.gz under Windows (Issue #1417)
  • Fixed encoding problems in WordPress urlmap writer (Issue #1416)
  • Added back atom:link in RSS feeds
  • Fixed Nikola-based page redirects in Python 2 (Issue #1414)
  • Fixed files/*.php (skip post/story-specific filters) (Issue #1403)
  • Warn about missing / in BASE_URL differently (explicit request to fix the config file)
  • Fix broken auto -b option (Issue #1437)
{}
Offical Harp News » Node.js ( Feed )
Tuesday, 23 September 2014
Harp v0.14.0 – Implicit Autoprefixing
Harp v0.14.0 – Implicit Autoprefixing

A new release of Harp is available today. Harp now takes care of vendor prefixing for you, via the fantastic Autoprefixer.

Create any .sass, .scss, .less, or .styl file…

// main.scss
h1 

Harp v0.14.0 – Implicit Autoprefixing

A new release of Harp is available today. Harp now takes care of vendor prefixing for you, via the fantastic Autoprefixer.

Create any .sass, .scss, .less, or .styl file…

// main.scss
h1 {
  font-feature-settings: "liga";
  transition: color 0.25s;
}

…and it will be preprocessed and prefixed automatically.

/* main.css */
h1 {
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga";
  font-feature-settings: "liga";
  -webkit-transition: color 0.25s;
  transition: color 0.25s
}

Get started

You shouldn’t have to think about vendor prefixing or configuring your preprossors while building static sites and apps. To get this taken care of for you, install the latest version of Harp:

npm install -g harp

Note you may need to preface this with sudo depending on your setup. From there, make sure to take a look at Harp’s getting started guide.

Appropriate prefxing

To help keep unnecessary prefixes out, Harp and Autoprefixer only add the prefixes you actually need. For example, when you use the transition property, the -moz- prefix is actually no longer necessary. Therefore, it won’t be included:

h1 {
  -webkit-transition: color 0.25s;
  transition: color 0.25s
}

That’s one less thing you need to keep track of, and can even lighten your CSS over time as vendor prefixes are deprecated.

Preprocessor updates

We prefer to keep all of Harp’s preprocessors up-to-date. Since the last release, LESS and Stylus were updated with minor bug fixes.

Going forward, we’ll apply this same approach to Autoprefixer, too.

Publish your project

Harp also helps power the Harp Platform, a front-end publishing integrated with Dropbox. It’s the fastest way to deploy your new project—you’ll never need to worry about manually compiling your files again.

Thanks

We love contributions to Harp and Terraform; Autoprefixer integration was suggested by @lunelson and kindly implemented by @geelen.

If you’re interested in contributing to Harp, just open an issue or comment on an existing one and let’s chat.

What’s next for Harp

We’re on track for more regular updates to Harp, and will be publishing a roadmap soon:

Let us know if you’d like to be involved.

{}
Official Nikola News » Python ( Feed )
Sunday, 21 September 2014
5000 commits to Nikola!

Nikola, the static site genrator, has just hit 5000 commits! The lucky commit was a99ef7a, with the message Document new previewimage metadata and was authored by Daniel Aleksandersen (Aeyoun).

During 2.5 years, 103 different people committed to the project. The top 10 committers are:

Nikola, the static site genrator, has just hit 5000 commits! The lucky commit was a99ef7a, with the message Document new previewimage metadata and was authored by Daniel Aleksandersen (Aeyoun).

During 2.5 years, 103 different people committed to the project. The top 10 committers are:

Top 10 Nikola committersRoberto AlsinaChris “Kwpolska” WarrickDaniel AleksandersenNiko WenselowskiPuneeth ChagantiDamián AvilaClaudio CanepaIvan Teohschettino72Areski Belaid0.0200.0400.0600.0800.01000.01200.01400.01600.01800.02000.02200.02400.02526262.6199.5961538461320142.047743468179.01923076922432.4911322249158.44230769219329.3923594616137.8653846156516.5974267617117.2884615385215.297941409396.71153846154614.69817893976.13461538463413.498653998455.55769230773713.798535233634.98076923083713.798535233614.4038461538Top 10 Nikola committers25261320224193655246343737Commits

According to OpenHub.Net, there are 54 active developers contributing code in the past year — making Nikola a large open source project, with its contributors count being in the top 2% of all OpenHub teams.

Using data generated by David A. Wheeler’s SLOCCount, 12,002 source lines of code were produced (including tests and internal code). 95.1% of codebase is Python, with the remaining 4.9% split between JavaScript, CSS, Shell, and XSLT.

Over the years, a total of 1426 issues were opened, 778 of which are already closed. 38 versions were released, including the most recent one, v7.1.0, released 15 days ago. The first ever release was version v1.1. It already contained many features still present to this day, and it also used the doit tool to do its job. Here’s a screenshot of the original page:

Nikola v1.1 Demo Site

In celebration of this milestone, the demo site from version 1.1 is now online.

Thanks for all the commits — and here’s to the next five thousand!

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn IPython Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (which is rebuilding only what has been changed).

{}
Official Nikola News » Python ( Feed )
Saturday, 06 September 2014
Nikola v7.1.0 released!

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.1.0.

Nikola v7.1.0 is a bugfix/feature release. It fixes quite a few bugs of v7.0.1 discovered in the intervening 3 months (sorry it took so long!), and also adds a few more features.

Get it!

Nikola v7.

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.1.0.

Nikola v7.1.0 is a bugfix/feature release. It fixes quite a few bugs of v7.0.1 discovered in the intervening 3 months (sorry it took so long!), and also adds a few more features.

Get it!

Nikola v7.1.0 is available for download at GitHub and PyPI.

Changelog

Features

  • Error out when reST gists cannot be downloaded (Issue #1402)
  • Added a “Skip to content” link for accessibility (Issue #1345)
  • Added minify_lines filter to strip leading whitespace and empty lines
  • Added Google Closure Compiler JavaScript filter
  • Print full tracebacks for conf.py errors
  • Added USE_SLUGIFY (defaults to True). If it’s False, Nikola allows and generates almost any Unicode character in page URLs (Issue #1321)
  • sources for .html files are now copied as .src.html (Issue #1354)
  • Copy files/*.html verbatim (skip filters)
  • Don’t generate STORY_INDEX if there is a conflicting story
  • Added support for enclosures (via optional enclosure metadata tag) (Issue #1322)

Bugfixes

  • Fixed some margins for RTL text (Issue #1399)
  • Fixed sitemapindex filtering of non-sitemap XMLs
  • rebuild posts when metadata changes (Issue #1319)
  • Allow + in slugs (Issue #1344)
  • fix error message when tags that are too similar are found (Issues #1343, #1344)
  • serve .svgz with content-encoding: gzip (Issue #1380)
  • html5.js file for ancient IE now works outside of / (Issue #1372)
  • PHP compiler now removes metadata comments the usual way (Issue #1374)
  • PHP compiler’s permalinks were .html instead of .php (Issue #1373)
  • Fixed importing WordPress blogs outside of / (Issue #1368)
  • Fixed importing WordPress blogs without slugs (Issue #1364)
  • don’t forget query parts of links (Issue #1369)
  • Made posts that are directive-only work properly (Issue #1351)
  • Made mathjax work with stories (Issue #1355)
  • Fixed regeneration after change of NAVIGATION_LINKS
  • Made nikola bootswatch_theme compatible with Jinja themes
  • Fixed submenus in Jinja themes (Issue #1327)
  • Quietly ignore empty lines in bundles files
  • Fixed wrong filter order in post_list plugin (Issue #1365)
{}
Offical Harp News » Node.js ( Feed )
Wednesday, 20 August 2014
Harp v0.13.0 – Upgrading Harp to Node v0.10.x
Harp v0.13.0 – Upgrading Harp to Node v0.10.x

Harp v0.13.0 was recently released, which includes the Sass indented syntax. This preprocessor requires a more recent version of Node, which you may need to install.

If you are running Node v0.8.x or lower, you may be receiving an error message

Harp v0.13.0 – Upgrading Harp to Node v0.10.x

Harp v0.13.0 was recently released, which includes the Sass indented syntax. This preprocessor requires a more recent version of Node, which you may need to install.

If you are running Node v0.8.x or lower, you may be receiving an error message like this upon trying to install Harp (but with a lot more lines):

npm WARN engine harp@0.13.0: wanted: {"node":">=0.10"} (current: {"node":"v0.8.26","npm":"1.2.30"})
…
npm ERR! not ok code 0

Upgrading to Node v0.10.x will solve the problem.

Upgrading Node

First, check which version of Node you’re running:

node --version

If you get v0.10.x or higher (where x is any number), then you are ready. If you get v0.8.x, you will need to upgrade to the latest version of Node. Just visit the Node website, download, and install the latest version.

Installing Harp

Now when you check Node’s version:

node --version

You should receive at least v0.10.x To install Harp, run:

npm install -g harp

You may need to use sudo npm install -g harp depending on your setup.

What’s next?

Take a look at the release notes for Harp v0.13.0 if you’re interested in playing with the new .sass indented syntax preprocessor, or review Harp’s five simple rules and get started on your static site!

{}
Offical Harp News » Node.js ( Feed )
Monday, 11 August 2014
Harp v0.13.0 – Sass Indented Syntax Support
Harp v0.13.0 – Sass Indented Syntax Support

A new release of Harp is available today. We’re happily adding one of Harp’s most-requested features: built-in preprocessing of Sass’ indented syntax.

Now, you can write .sass files and they will be implicitly preprocessed as .c

Harp v0.13.0 – Sass Indented Syntax Support

A new release of Harp is available today. We’re happily adding one of Harp’s most-requested features: built-in preprocessing of Sass’ indented syntax.

Now, you can write .sass files and they will be implicitly preprocessed as .css files, without any configuration necessary. This works exactly the same as with .scss, .styl, and .less files.

Build a Harp application with Sass

Updating Node

This is the first version of Harp to require Node v0.10.x. First, check which version of Node you are running:

node --version

If you get v0.10.x (where x is any number), then you are ready. If you get v0.8.x, you will need to upgrade to the latest version of Node. Just visit the Node website, download, and install the latest version.

Installing Harp

Now you’re ready to install Harp.

npm update -g harp

You may need to use sudo npm install -g harp depending on your setup. (You may also want to take a look at the quick start guide.) Now, you’re ready to try out Harp v0.13.0.

Using Sass’ indented syntax

I’ve put together a simple Harp boilerplate with a .sass stylesheet for you to try out. You can try it out using Harp’s --boilerplate command. To initialise a new project in a my-proj/ folder, from the hb-simple-sass boilerplate, use the following command:

# Create the new app
harp init --boilerplate hb-default-sass my-proj

# Serve it at http://localhost:9000
harp server my-proj

Now, the code for your new, Sass-based boilerplate is stored in the my-proj/ folder, and is available in your browser at localhost:9000.

All the features you know from SCSS are available in Sass, some with a more concise syntax:

=large-text
  font-size: 2em

body
  background: darken(tomato, 20%)

h1
  +large-text

There’s more examples in the full documentation for .sass.

Using .sass with other libraries

Sass’ .sass files can still import .scss files, and vice-versa. This means you can still use your favourite Sass libraries like Bourbon or Foundation 5 even if you’d prefer to write your site or app using the indented syntax.

We wrote about trying out Harp with Foundation or Bourbon & Neat, and it will work the same with the new .sass support.

Preprocessor updates

Every CSS preprocessor has also been upgraded for this release of Harp.

Publish your project

Harp also helps power the Harp Platform, a front-end publishing platform integrated with Dropbox. It’s the fastest way to deploy your new project—you’ll never need to flatten your Sass source files.

What’s next for Harp

We haven’t been posting on the Harp blog as much, but we have been just as involved with the community and are happy to see Harp more popular than ever. We have more planned for Harp in the near future. If you’d like to be the first to know about it, follow Harp on Twitter.

{}
Offical Hexo News » Node.js ( Feed )
Saturday, 12 July 2014
Hexo 2.8 Released

Hexo 2.8 was rewritten, brings you better performance and many improvements. The following is the highlights in this version. You can check detail on GitHub.

Faster Processing Speed

Before Hexo 2.8, all source files have to be processed each time you use Hexo. In Hexo 2.8, the entire databa

Hexo 2.8 was rewritten, brings you better performance and many improvements. The following is the highlights in this version. You can check detail on GitHub.

Faster Processing Speed

Before Hexo 2.8, all source files have to be processed each time you use Hexo. In Hexo 2.8, the entire database will be saved to db.json so Hexo don’t have to process all files again. Also, a new data type “skip“ was added for processors to detect whether a file was changed or not.

Generating was also changed in Hexo 2.8. You can check the elapsed time of each file in console now. However, I found multi-process generating didn’t affect generating speed a lot. Thus, multi_thread and max_open_file setting are deprecated in Hexo 2.8.

Draft Publish

You don’t have to enter full file name to publish a post anymore. Draft publish system is rewritten in Hexo 2.8. new_post_name setting will be applied until drafts are published. Besides, you can choose which layout to apply when publishing.

$ hexo publish [layout] <filename>

A new API post.publish was added to help you publish drafts more easily.

hexo.post.publish({slug: 'hello-world', layout: 'post'}, function(err, target){
// ...
});

File name and permalink now share a more universal variable system. Every variables in file name can also be read in permalink. Here’s a config for example:

permalink: :type/:title/
new_post_name: :type/:title.md

When you create a post, the post will be saved to source/_posts/test/Hello-World.md and the URL will be http://localhost:4000/test/Hello-World/.

$ hexo new "Hello World" --type test

Multi-language Support

With the new permalink introduced in the previous section, it’s much easier to create a multi-language site. For example:

permalink: :lang/:title/
new_post_name: :lang/:title.md

Then you can create a post with --lang option:

$ hexo new "Hello World" --lang en
# => This post will be saved to source/_posts/en/Hello-World.md
# => URL: http://localhost:4000/en/Hello-World/
$ hexo new "你好世界" --lang tw
# => This post will be saved to source/_posts/tw/你好世界.md
# => URL: http://localhost:4000/tw/你好世界/

You can define the default value of permalink variables in permalink_defaults setting. For example, we define the defualt language as English.

permalink_defaults:
lang: en
{}
Offical Hexo News » Node.js ( Feed )
Friday, 13 June 2014
Hexo 2.7 Released

Hexo 2.7 has been released with three new features. I’m going to introduce them below.

Fragment Caching

Although Hexo is fast, it may become slow if you have thousands of source files or complicated categories or tags. Before the data model upgraded, I borrowed a feature from Ruby on Rails:

Hexo 2.7 has been released with three new features. I’m going to introduce them below.

Fragment Caching

Although Hexo is fast, it may become slow if you have thousands of source files or complicated categories or tags. Before the data model upgraded, I borrowed a feature from Ruby on Rails: Fragment Caching.

Fragment Caching saves contents within a fragment and serves the cache when the next request come in. A fragment will only be processed once. It can reduce database queries and decrease generation time significantly. For instance, a Hexo site with 300+ source files needs 6 minutes to generate. In Hexo 2.7, it only need 10 seconds!

It can be used in header, footer, sidebar or static contents that won’t be changed during generating. For example:

<%- fragment_cache('header', function(){
return '<header></header>';
}); %>

By using fragment_cache helper, contents in the function will be cached.

Partial helper also supports Fragment Caching, you only need to add a {cache: true} option when using partial.

<%- partial('header', {}, {cache: true}) %>

Landscape is updated and supports Fragment Caching now. You can check this commit to see what’s changed.

Relative Link is supported since Hexo 2.7. But your theme needs some modifications to support it. However, it’s not as hard as you think. You just need to replace the following contents in templates

<%- config.root %><%- path %>

with url_for helper.

<%- url_for(path) %>

url_for helper will add config.root automatically for you. If you enable relative_link setting, it’ll add a relative path.

Landscape is updated for Relative Link. You can check this commit to see what’s changed.

Server Middleware

Server Middleware would be familiar if you have ever used Connect or Express before. Connect passes a request through functions called middleware. You can make response to the coming in request in middleware.

In Hexo, middleware is served as a type of filter. You can add middleware by registering a new filter. For example:

hexo.extend.filter.register('server_middleware', function(app){
app.use(function(req, res, next){
res.setHeader('X-Powered-By', 'Hexo');
next();
});
});

This middleware add a header X-Powered-By and passes the request to the next middleware.

{}
Official Pelican News » Python ( Feed )
Monday, 30 June 2014
Pelican 3.4 released

Today we are pleased to announce the release of Pelican 3.4, which is one of the more significant updates Pelican has ever seen. Take a look at the changelog and the Pelican 3.4 milestone issues list to see all the features, fixes, and miscellaneous improvements that are included in this release.<

Today we are pleased to announce the release of Pelican 3.4, which is one of the more significant updates Pelican has ever seen. Take a look at the changelog and the Pelican 3.4 milestone issues list to see all the features, fixes, and miscellaneous improvements that are included in this release.

Major highlights

Faster rebuild times

Thanks to a new caching mechanism and selective output writing, rebuilding a site can take just a few seconds. Tinkering with posts and themes is now even easier.

Fixed locale and encoding issues

Finally URLs can include, for example, localized month names.

Improved documentation, both in style and content

The documentation has been ported to the new ReadTheDocs theme, including a functional search bar and a navigation side panel. A quickstart section is now provided to jump-start your Pelican experience.

Support for multiple post authors

The new :authors: metadata field makes it possible to easily manage multi-user sites.

Upgrading from previous releases

While we do everything we can to maximize backwards compatibility and ensure smooth Pelican upgrades, it's possible that you may encounter un-anticipated wrinkles. If you run into problems, please reach out via the #pelican channel on IRC, and we will update this post with any upgrade tips contributed by the Pelican community.

{}
Official Nikola News » Python ( Feed )
Saturday, 07 June 2014
Nikola v7.0.1 released!

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.0.1.

Nikola v7.0.1 is a bugfix release. It fixes some bugs found in the original v7.0.0 release — including, but not limited to, symlinks and Unicode output under Windows; Jinja themes’ assets; date formats, an

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.0.1.

Nikola v7.0.1 is a bugfix release. It fixes some bugs found in the original v7.0.0 release — including, but not limited to, symlinks and Unicode output under Windows; Jinja themes’ assets; date formats, and more.

Get it!

Nikola v7.0.1 is available for download at GitHub and PyPI.

Changelog

Features

  • added -e, --edit parameter to new_post and new_page to open $EDITOR after creation (Issue #1294)
  • added scanned signal (after posts are scanned) (via Issue #1291)
  • added missing initialized event (after tasks are loaded) (Issue #1291)

Bugfixes

  • sanitized dates generated by new_post by forcing an ISO 8601-esque format of YYYY-mm-dd HH:MM:SS (Issues #1284, #1313)
  • made github_deploy compatible with Python 3 (Issue #1311)
  • rebuild stuff on TranslatableSettings’ change (Issue #1297)
  • made bootstrap-jinja and bootstrap3-jinja work again, assets were missing (Issue #1309)
  • ignore non-utf8-encoded .html files in sitemaps (Issue #1308)
  • fixed missing assets in Windows (Issue #1306)
  • locales are ignored if there is no config (via Issue #1304)
  • “fixed” a weird bug which tried to find the __file__ of __builtin__
  • made nikola init locale-independent (via Issues #1288, #1304)
  • fixed theme/plugin installation under Python 2.6 (Issue #1298)
  • removed colorama and color support under Windows due to Unicode problems (Issue #1288)
  • made files/assets/css/code.css work again (Issue #1290)
{}
Official Nikola News » Python ( Feed )
Friday, 16 May 2014
Nikola v7.0.0 released!

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.0.0 (after 10 days of testing in RC1).

Nikola v7.0.0 is the first major release since 8 months. As such, we had many things that could be changed. There are some things that you might need to change on your si

On behalf of the Nikola team, I am pleased to announce the release of Nikola v7.0.0 (after 10 days of testing in RC1).

Nikola v7.0.0 is the first major release since 8 months. As such, we had many things that could be changed. There are some things that you might need to change on your site, especially if you have a custom theme. Here is a short and incomplete list of the most important changes:

Key Changes since v6.4.0

  • New dependencies: natsort (natural sorting in galleries) and dateutil (replaces pytz)

  • Many deprecated options were removed.

  • SCHEDULE_FORCE_TODAY, EXTRA_PLUGINS and ENABLED_EXTRAS are now removed and have no effect.

  • Two options were changed:

    • HIDE_SOURCELINK → SHOW_SOURCELINK (inverted)
    • HIDE_UNTRANSLATED_POSTS → SHOW_UNTRANSLATED_POSTS (inverted)
  • READ_MORE_LINK is split into INDEX_READ_MORE_LINK and RSS_READ_MORE_LINK. Moreover, new tags, like (remaining_)reading_time and (remaining_)paragraph_count, were added.

  • Added options: FORCE_ISO8601, LOGO_URL, SHOW_BLOG_TITLE (logo support), GENERATE_RSS, ROBOTS_EXCLUSIONS, CONTENT_FOOTER_FORMATS, RSS_PLAIN, UNSLUGIFY_TITLES (for meta extraction from filenames).

  • Certain settings are now translatable. As of now, the settings are:

    BLOG_AUTHOR, BLOG_TITLE, BLOG_DESCRIPTION, LICENSE, CONTENT_FOOTER, SOCIAL_BUTTONS_CODE, SEARCH_FORM, BODY_END, EXTRA_HEAD_DATA, NAVIGATION_LINKS, READ_MORE_LINK.

  • There are many changes to themes. The base theme now offers a stylish look and is usable on sites, through a new stylesheet. The HTML code is now more semantic and sectioned, making it easier to style sites. Some templates are also renamed or removed.

  • The basic Jinja themes (base-jinja, bootstrap-jinja, bootstrap3-jinja) are now shipped with Nikola. Please remove any leftover copies from your themes/ folders.

  • You now can (and should!) specify a timezone offset in post dates, using a UTC±00:00 syntax. (warning: UTC-03:00 means 3 hours east of UTC and not west, as is done in some Unix tools!) You can also use ISO 8601 dates (and if you want to do that, you can set FORCE_ISO8601=True to get those in new_post and new_page)

  • You now can use the reST metadata format in .meta files, allowing for greater flexibility.

Get it!

Nikola v7.0.0 is available for download at GitHub and PyPI.

Changelog

Features

  • Added UNSLUGIFY_TITLES option for making titles fetched via the filename regexp prettier (Issue #1282)
  • New dependencies: natsort (natural sorting in galleries) and dateutil (replaces pytz)
  • Nikola.commands are now the user-friendly wrappers from console (Issue #1177)
  • Add a github_deploy command to deploy to GitHub pages (Issue #1208)
  • Remove tidy filter (it was broken due to tidy being ancient) (Issue #1164)
  • Added GENERATE_RSS setting to allow disabling RSS in Nikola (Issue #1236)
  • Link listings raw sources if COPY_SOURCES is True (Issue #1214)
  • Much more powerful nikola plugin command (Issue #1189)
  • More powerful console mode allows access to all nikola commands (Issue #830)
  • New `ROBOTS_EXCLUSIONS` option listing resources to exclude from sitemap and include in new generated /robots.txt (Issue #804)
  • Generate sitemapindex containing RSS and sitemap files (Issue #804)
  • Support hooks in templates, for use by plugins (Issue #896)
  • Use readline if available (Issue #1238)
  • Replaced READ_MORE_LINK with INDEX_READ_MORE_LINK and RSS_READ_MORE_LINK (Issue #1222)
  • Added reading_time, remaining_reading_time, paragraph_count, remaining_paragraph_count tags for READ_MORE_LINK (Issue #1220)
  • Add canonical link in listings.
  • Added support for new meta files that are the same format as 1-file metadata, allowing for greater flexibility (Issue #954)
  • Colorbox is now internationalized (Issue #1205)
  • Added LOGO_URL and SHOW_BLOG_TITLE=True settings to facilitate showing off logos (Issue #1122)
  • Create automatic story index pages for subfolders, too (Issue #793)
  • New Slovak translation by Tomáš Prékop
  • Created a MarkdownExtension plugin class (Issue #1175)
  • The base theme produces properly sectioned and semantic HTML5 (Issues #1123, #1137)
  • The base theme comes with a new stylish look by default (Issue #1137)
  • The base theme supports Right-to-Left by using ::dir(rtl) CSS4 rules and <html dir="rtl"> tags where valid (Issue #1146)
  • Bootstrap 2 updated to 2.3.2 (via Issue #1137)
  • Added FORCE_ISO8601 setting that currently makes new_post use ISO 8601 dates (via Issue #1156)
  • Added support for TZ specified in post date (Issue #1118)
  • Make nikola init ask about the site’s settings (Issue #1080)
  • Use natural sorting for files and folders list in listings and galleries (Issue #1144)
  • Added invariance testing (Issue #672)
  • Plugins can inject templates in the system (Issue #1139)
  • nikola import_wordpress now has a --qtranslate option, to parse posts in the qtranslate wordpress plugin format and turn them into multilingual Nikola posts (Issue #1072)
  • nikola console allows for interpreter choice via -b, -i, -p; moreover, support for bpython is not deprecated anymore (Issue #1126)
  • retired tag for posts has been replaced with private (via Issue #686)
  • Changed the default TRANSLATIONS_PATTERN to "{path}.{lang}.{ext}". (Issues #990, #829)
  • Backwards compatibility with v5 is broken. Added backwards-incompatible changes. (Issue #829)
  • Added a CONTENT_FOOTER_FORMATS config option. It is used to format the CONTENT_FOOTER variable properly, for compatibility with the Translatable Settings feature. The variable takes a dict, the keys of which are languages, and values are (args, kwargs). (Issue #1112)
  • Certain settings are now translatable. As of now, the settings are: BLOG_AUTHOR, BLOG_TITLE, BLOG_DESCRIPTION, LICENSE, CONTENT_FOOTER, SOCIAL_BUTTONS_CODE, SEARCH_FORM, BODY_END, EXTRA_HEAD_DATA, NAVIGATION_LINKS, READ_MORE_LINK (the up-to-date list is available in SITE.TRANSLATABLE_SETTINGS) (Issues #851, #1057, #1061, #1112)
  • New Post.author() returns meta 'author' or BLOG_AUTHOR (Issue #1117)
  • Ship base-jinja, bootstrap-jinja, bootstrap3-jinja with Nikola (Issue #1104)
  • Invert HIDE_SOURCELINK and HIDE_UNTRANSLATED_POSTS into SHOW_SOURCELINK and SHOW_UNTRANSLATED_POSTS (Issue #1076)
  • Remove old messages left over for backwards compatibility: (Issues #829, #1105)
    • "More posts about", replaced by "More posts about %s"
    • "Posted", replaced by "Posted:"
    • "Also available in", replaced by "Also available in:"
  • Remove old "sl_SI", "tr_TR" locale aliases (use "sl" and "tr") (Issue #829, #1105)
  • New option RSS_PLAIN to optionally strip HTML from RSS feeds (Issue #1107)
  • Support content key in compilers' create_post (Issue #1098)
  • Use setuptools’ extras feature. Use pip install nikola[extras] to install Nikola with extras (requirements-extras.txt, formerly requirements-full.txt -- note the name change!) (Issue #1089)

Bugfixes

  • Markdown now outputs code in a reST-like fashion (Issue #1063)
  • code.css is back to supporting only pre.code (Issue #1063)
  • Links in monthly archives did not have /index.html if STRIP_INDEXES was set to False (Issue #1263)
  • Fix lxml adding extra root tags being added by lxml by lxml.html.tostring
  • Not having typogrify installed now produces a valid error (Issue #1262)
  • Pages were not rebuilt when DEMOTE_HEADERS was changed (Issue #1261)
  • Removed SCHEDULE_FORCE_TODAY option (Issue #984)
  • Give better error for unknown subcommands (Issue #1233)
  • Handle conf.py for import plugins more generically (Issue #1235)
  • Remove RSS files from the sitemap (Issue #804)
  • nikola deploy works with DEPLOY_FUTURE = True (Issue #1249)
  • Removed EXTRA_PLUGINS and ENABLED_EXTRAS options (Issue #1247)
  • nikola COMMAND -h/--help now outputs command help and not Nikola help (showing the command help is standard behavior) (Issue #1245)
  • Redirect pages should have a body linking to the new location
  • The typogrify filter is now Python 3-compatible (Issue #1244)
  • Fix nikola auto not watching changes in FILES_FOLDERS (Issue #1241)
  • Vimeo and YouTube embedding in reStructuredText is now protocol-relative
  • Don't crash if a unknown kind of path/link is requested (Issue #1236)
  • Don't run clean and list outside sites (Issue #1232)
  • If an invalid language is specified, Nikola now shows a helpful error message instead of a traceback (via Issue #1225)
  • Ensure the locale is set correctly when compiling posts (Issue #1219)
  • Fix site-dependent commands (they tried to run anyways) (Issue #1223)
  • Follow symlinks when walking trees (Issue #1206)
  • bootswatch_theme works again and does not try using server hostname=swatch (Issue #1202)
  • Make markdown extensions not break when markdown is not installed (Issue #1201)
  • hidetitle now works in posts, too (Issue #1188)
  • Refactoring of post translation checking (Issue #1194)
  • Trigger rebuild on gallery changes in auto mode (Issue #1180)
  • Galleries are more usable in non-Bootstrap-based themes (Issue #1137)
  • Removed dependency on pytz because mixing it with dateutil breaks things.
  • Use current system TZ for current_time (Issue #1161)
  • Fix links with full path in RSS for files outside root (Issue #1162)
  • nikola new_post now always outputs a newline at the end of file (Issue #1169)
  • Gallery code cleanup (Issue #1121)
  • USE_FILENAME_AS_TITLE works again (Issue #1073)
  • Rebuild CSS bundles when files change, and also when files are removed (Issue #1153)
  • Don't call links to SITE_URL bad on check when URL_TYPE is 'absolute' (Issue #1147)
  • Trigger rebuilds if URL_TYPE changes (Issue #1095)
  • Eliminate repeated tags in posts (Issue #1142)
  • custom.css not included in bundles
  • Don’t publish email addresses in RSS, use author name via Dublin Core
  • Rebuild a lot of files when TIMEZONE changes (Issue #1110)
  • The init command and the importers now always output to the CWD. Previously, if you had a conf.py file higher in the directory structure, Nikola would put the output of those commands in the directory that contained the file. (Issue #1132)
  • Files with non-ASCII characters in filenames are copied only when needed, and not every build (Issue #1129)
  • Split Twitter Cards and Open Graph, enable the latter by default
  • Load html5shiv.js from remote or local server depending on USE_CDN option
  • Fix dependency issue in listings (Issue #1032)
  • Logging configuration has been fixed. The stderr handler can now only be set to DEBUG or INFO (any higher levels are corrected as INFO), and unwanted (i.e. DEBUG) messages are not shown, as intended. (Issue #1111)
  • Catch keyboard exit while serving so traceback does not show (Issue #1124)
  • Support rescanning posts in the Nikola class (Issue #1100)
  • Use TIMEZONE with nikola new_post and nikola new_page. (Issue #1088)
{}
Official Nikola News » Python ( Feed )
Monday, 05 May 2014
Release Candidate 1 for Nikola v7.0.0 out

In order to make the v7 release as perfect as possible, we hereby provide Nikola v7.0.0-rc1. This is a release candidate. Using and testing it is not mandated, but if you want to test whether your website will work with it, you can test — and report any bugs to us.

Key Changes since v6.4.0

In order to make the v7 release as perfect as possible, we hereby provide Nikola v7.0.0-rc1. This is a release candidate. Using and testing it is not mandated, but if you want to test whether your website will work with it, you can test — and report any bugs to us.

Key Changes since v6.4.0

  • Many deprecated options were removed.

  • SCHEDULE_FORCE_TODAY, EXTRA_PLUGINS and ENABLED_EXTRAS are now removed and have no effect.

  • Two options were changed:

    • HIDE_SOURCELINK → SHOW_SOURCELINK (inverted)
    • HIDE_UNTRANSLATED_POSTS → SHOW_UNTRANSLATED_POSTS (inverted)
  • READ_MORE_LINK is split into INDEX_READ_MORE_LINK and RSS_READ_MORE_LINK. Moreover, new tags, like (remaining_)reading_time and (remaining_)paragraph_count, were added.

  • Added options: FORCE_ISO8601, LOGO_URL, SHOW_BLOG_TITLE (logo support), GENERATE_RSS, ROBOTS_EXCLUSIONS, CONTENT_FOOTER_FORMATS, RSS_PLAIN.

  • Certain settings are now translatable. As of now, the settings are:

    BLOG_AUTHOR, BLOG_TITLE, BLOG_DESCRIPTION, LICENSE, CONTENT_FOOTER, SOCIAL_BUTTONS_CODE, SEARCH_FORM, BODY_END, EXTRA_HEAD_DATA, NAVIGATION_LINKS, READ_MORE_LINK.

  • There are many changes to themes. The base theme now offers a stylish look and is usable on sites, through a new stylesheet. The HTML code is now more semantic and sectioned, making it easier to style sites. Some templates are also renamed or removed.

  • The basic Jinja themes (base-jinja, bootstrap-jinja, bootstrap3-jinja) are now shipped with Nikola. Please remove any leftover copies from your themes/ folders.

  • You can now specify a timezone offset in post dates, using a UTC±00:00 syntax. (warning: UTC-03:00 means 3 hours ahead of UTC and not the reverse, as is done in many Unix tools!) You can also use ISO 8601 dates (and if you want to do that, you can set FORCE_ISO8601=True to get those in new_post and new_page)

  • You can now use the reST metadata format in .meta files, allowing for greater flexibility.

Downloads

Nikola v7.0.0-rc1 is available for download at GitHub and PyPI.

Changelog

Features

  • Add a github_deploy command to deploy to GitHub pages (Issue #1208)
  • Remove tidy filter (it was broken due to tidy being ancient) (Issue #1164)
  • Added GENERATE_RSS setting to allow disabling RSS in Nikola (Issue #1236)
  • Link listings raw sources if COPY_SOURCES is True (Issue #1214)
  • Much more powerful nikola plugin command (Issue #1189)
  • More powerful console mode allows access to all nikola commands (Issue #830)
  • New `ROBOTS_EXCLUSIONS` option listing resources to exclude from sitemap and include in new generated /robots.txt (Issue #804)
  • Generate sitemapindex containing RSS and sitemap files (Issue #804)
  • Support hooks in templates, for use by plugins (Issue #896)
  • Use readline if available (Issue #1238)
  • Replaced READ_MORE_LINK with INDEX_READ_MORE_LINK and RSS_READ_MORE_LINK (Issue #1222)
  • Added reading_time, remaining_reading_time, paragraph_count, remaining_paragraph_count tags for READ_MORE_LINK (Issue #1220)
  • Add canonical link in listings.
  • Added support for new meta files that are the same format as 1-file metadata, allowing for greater flexibility (Issue #954)
  • Colorbox is now internationalized (Issue #1205)
  • Added LOGO_URL and SHOW_BLOG_TITLE=True settings to facilitate showing off logos (Issue #1122)
  • Create automatic story index pages for subfolders, too (Issue #793)
  • New Slovak translation by Tomáš Prékop
  • Created a MarkdownExtension plugin class (Issue #1175)
  • The base theme produces properly sectioned and semantic HTML5 (Issues #1123, #1137)
  • The base theme comes with a new stylish look by default (Issue #1137)
  • The base theme supports Right-to-Left by using ::dir(rtl) CSS4 rules and <html dir="rtl"> tags where valid (Issue #1146)
  • Bootstrap 2 updated to 2.3.2 (via Issue #1137)
  • Added FORCE_ISO8601 setting that currently makes new_post use ISO 8601 dates (via Issue #1156)
  • Added support for TZ specified in post date (Issue #1118)
  • Make nikola init ask about the site’s settings (Issue #1080)
  • Use natural sorting for files and folders list in listings and galleries (Issue #1144)
  • Added invariance testing (Issue #672)
  • Plugins can inject templates in the system (Issue #1139)
  • nikola import_wordpress now has a --qtranslate option, to parse posts in the qtranslate wordpress plugin format and turn them into multilingual Nikola posts (Issue #1072)
  • nikola console allows for interpreter choice via -b, -i, -p; moreover, support for bpython is not deprecated anymore (Issue #1126)
  • retired tag for posts has been replaced with private (via Issue #686)
  • Changed the default TRANSLATIONS_PATTERN to "{path}.{lang}.{ext}". (Issues #990, #829)
  • Backwards compatibility with v5 is broken. Added backwards-incompatible changes. (Issue #829)
  • Added a CONTENT_FOOTER_FORMATS config option. It is used to format the CONTENT_FOOTER variable properly, for compatibility with the Translatable Settings feature. The variable takes a dict, the keys of which are languages, and values are (args, kwargs). (Issue #1112)
  • Certain settings are now translatable. As of now, the settings are: BLOG_AUTHOR, BLOG_TITLE, BLOG_DESCRIPTION, LICENSE, CONTENT_FOOTER, SOCIAL_BUTTONS_CODE, SEARCH_FORM, BODY_END, EXTRA_HEAD_DATA, NAVIGATION_LINKS, READ_MORE_LINK (the up-to-date list is available in SITE.TRANSLATABLE_SETTINGS) (Issues #851, #1057, #1061, #1112)
  • New Post.author() returns meta 'author' or BLOG_AUTHOR (Issue #1117)
  • Ship base-jinja, bootstrap-jinja, bootstrap3-jinja with Nikola (Issue #1104)
  • Invert HIDE_SOURCELINK and HIDE_UNTRANSLATED_POSTS into SHOW_SOURCELINK and SHOW_UNTRANSLATED_POSTS (Issue #1076)
  • Remove old messages left over for backwards compatibility: (Issues #829, #1105)
    • "More posts about", replaced by "More posts about %s"
    • "Posted", replaced by "Posted:"
    • "Also available in", replaced by "Also available in:"
  • Remove old "sl_SI", "tr_TR" locale aliases (use "sl" and "tr") (Issue #829, #1105)
  • New option RSS_PLAIN to optionally strip HTML from RSS feeds (Issue #1107)
  • Support content key in compilers' create_post (Issue #1098)
  • Use setuptools’ extras feature. Use pip install nikola[extras] to install Nikola with extras (requirements-extras.txt, formerly requirements-full.txt -- note the name change!) (Issue #1089)

Bugfixes

  • Links in monthly archives did not have /index.html if STRIP_INDEXES was set to False (Issue #1263)
  • Fix lxml adding extra root tags being added by lxml by lxml.html.tostring
  • Not having typogrify installed now produces a valid error (Issue #1262)
  • Pages were not rebuilt when DEMOTE_HEADERS was changed (Issue #1261)
  • code.css was not rebuilt, even though there were changes in v6.4.0 to its format (via Issue #1050)
  • Removed SCHEDULE_FORCE_TODAY option (Issue #984)
  • Give better error for unknown subcommands (Issue #1233)
  • Handle conf.py for import plugins more generically (Issue #1235)
  • Remove RSS files from the sitemap (Issue #804)
  • nikola deploy works with DEPLOY_FUTURE = True (Issue #1249)
  • Removed EXTRA_PLUGINS and ENABLED_EXTRAS options (Issue #1247)
  • nikola COMMAND -h/--help now outputs command help and not Nikola help (showing the command help is standard behavior) (Issue #1245)
  • Redirect pages should have a body linking to the new location
  • The typogrify filter is now Python 3-compatible (Issue #1244)
  • Fix nikola auto not watching changes in FILES_FOLDERS (Issue #1241)
  • Vimeo and YouTube embedding in reStructuredText is now protocol-relative
  • Don't crash if a unknown kind of path/link is requested (Issue #1236)
  • Don't run clean and list outside sites (Issue #1232)
  • If an invalid language is specified, Nikola now shows a helpful error message instead of a traceback (via Issue #1225)
  • Ensure the locale is set correctly when compiling posts (Issue #1219)
  • Fix site-dependent commands (they tried to run anyways) (Issue #1223)
  • Follow symlinks when walking trees (Issue #1206)
  • bootswatch_theme works again and does not try using server hostname=swatch (Issue #1202)
  • Make markdown extensions not break when markdown is not installed (Issue #1201)
  • hidetitle now works in posts, too (Issue #1188)
  • Refactoring of post translation checking (Issue #1194)
  • Trigger rebuild on gallery changes in auto mode (Issue #1180)
  • Galleries are more usable in non-Bootstrap-based themes (Issue #1137)
  • Removed dependency on pytz because mixing it with dateutil breaks things.
  • Use current system TZ for current_time (Issue #1161)
  • Fix links with full path in RSS for files outside root (Issue #1162)
  • nikola new_post now always outputs a newline at the end of file (Issue #1169)
  • Gallery code cleanup (Issue #1121)
  • USE_FILENAME_AS_TITLE works again (Issue #1073)
  • Rebuild CSS bundles when files change, and also when files are removed (Issue #1153)
  • Don't call links to SITE_URL bad on check when URL_TYPE is 'absolute' (Issue #1147)
  • Trigger rebuilds if URL_TYPE changes (Issue #1095)
  • Eliminate repeated tags in posts (Issue #1142)
  • custom.css not included in bundles
  • Don’t publish email addresses in RSS, use author name via Dublin Core
  • Rebuild a lot of files when TIMEZONE changes (Issue #1110)
  • The init command and the importers now always output to the CWD. Previously, if you had a conf.py file higher in the directory structure, Nikola would put the output of those commands in the directory that contained the file. (Issue #1132)
  • Files with non-ASCII characters in filenames are copied only when needed, and not every build (Issue #1129)
  • Split Twitter Cards and Open Graph, enable the latter by default
  • Load html5shiv.js from remote or local server depending on USE_CDN option
  • Fix dependency issue in listings (Issue #1032)
  • Logging configuration has been fixed. The stderr handler can now only be set to DEBUG or INFO (any higher levels are corrected as INFO), and unwanted (i.e. DEBUG) messages are not shown, as intended. (Issue #1111)
  • Catch keyboard exit while serving so traceback does not show (Issue #1124)
  • Support rescanning posts in the Nikola class (Issue #1100)
  • Use TIMEZONE with nikola new_post and nikola new_page. (Issue #1088)
{}
Offical Harp News » Node.js ( Feed )
Thursday, 03 April 2014
Harp v0.12.1 – Boilerplate support
Harp v0.12.1 – Boilerplate support

A new release of Harp is available, allowing you to initialise any new project with a boilerplate from GitHub.

Boilerplates, -b for short

Thanks to @zeke, harp init is a lot more powerful. Now, you can initialise any proj

Harp v0.12.1 – Boilerplate support

A new release of Harp is available, allowing you to initialise any new project with a boilerplate from GitHub.

Initialise a Harp app with any GitHub repo

Boilerplates, -b for short

Thanks to @zeke, harp init is a lot more powerful. Now, you can initialise any project on GitHub as a boilerplate for Harp. For example, if you wanted to get started with the Remedy boilerplate right from the command like, you can now run:

harp init --boilerplate kennethormandy/hb-remedy
# Downloading boilerplate: https://github.com/kennethormandy/hb-remedy
# Initialized project at /path/to/your/project

Or, use any of the default boilerplates in the Harp Boilerplates repository without needing to specify a user name:

harp init --boilerplate hb-blog
# Downloading boilerplate: https://github.com/harp-boilerplates/hb-blog
# Initialized project at /path/to/your/project

There’s more details in the new documentation for Initializing a Harp Application.

Multihost updated

Multihost is working better than ever thanks to @silentrob. If you have a folder full of Harp Applications or any static sites you’d like to serve, you can run harp multihost on the directory to serve them all at once.

harp multihost path/to/my-apps
# Harp is now serving multiple apps at http://harp.nu:9000

There’s more detailed instructions in the updated Harp Multihost documentation.

Installing the latest version

You can update to the latest version of Harp with:

npm update -g harp

You may need to use sudo npm update -g harp depending on your setup. If you haven’t installed Harp yet, get started with

npm install -g harp

and take a look at the quick start guide. Now, you’re ready to play with what’s new in Harp v0.12.1.

Bugfixes

Many issues have been taken care of thanks to community contributions. Thanks to everyone who’s opened a an issue or pull request on Harp or Terraform!

  • Fixed BOM encoding issue for Markdown files, thanks to @ryanlewis
  • Clarified that Terraform is MIT licensed, thanks to @108ium
  • Tested every preprocessor for special characters
  • Properly allow dot characters in the filename, thanks to @gadr

If you’re interested in getting helping contribute to Harp at any level, we’d be more than happy to have you. Just open an issue on GitHub and we’ll get the discussion started.

Preprocessors

Almost every preprocessor has been upgraded for this release of Harp.

{}
Offical Harp News » Node.js ( Feed )
Monday, 10 March 2014
Harp Weekly – Community Checkin
Harp Weekly – Community Checkin

This Harp Weekly contains projects from the community: new event, features, and ways to deploy your static projects.

Prototyping Harp’s Live Reload and Compass support with Gulp

Harp is awesome. Only missing two things my workflow has grown accus

Harp Weekly – Community Checkin

This Harp Weekly contains projects from the community: new event, features, and ways to deploy your static projects.

Prototyping Harp’s Live Reload and Compass support with Gulp

Harp is awesome. Only missing two things my workflow has grown accustomed to – Compass and Live Reload. … I just couldn't wait for either. Orlin Bozhinov, orlin/statica

Orlin has put together a gulp-harp package of sorts. Rather than make it a traditional gulp plugin—which would go against their philosophy—instead it brings in some features was eager to have added.

We’re looking forward to having Live Reload support built into Harp in the future, and hopefully libsass will eventually support Compass. If, however, you’re interested in Gulp and Harp, you might like to take a look at this package.

Polyglot 2014 in Vancouver

Polyglot is an Unconference in Vancouver, BC. This year, their site was built with Harp. Last year, there was a talk on the Harp Platform by @sintaxi. We’re looking forward to chatting with more people about Harp this year, so let us know if you’ll be in the area for the event!

Photo by Adron Hall

Polyglot is co-organised by the WealthBar team. They’ve done some interesting things with Harp in the past, like building a static app that used the browser’s audio API, and clickable prototypes to test parts of their product. (Which, if we’re lucky, they’ll write about in the future!)

CodeDay

CodeDay is a 24-hour hack-a-thon for students interested in technology and programming, at any skill level. There are events being held in Seattle, San Francisco, Phoenix, Boston, and more. If you’re interested, or know a student who might be, take a look at their site, which was built using Harp.

Let us know on Twitter or send me an email if you’re a student interested in using Harp during the event. We’ll do what we can to help.

Deploy Harp apps to Docker through Octohost

If you’re looking to release a static application or site through Docker, Octohost is looking to help you. Darron has put together a quick screencast that shows you how to get a Harp application online using their command line tools.

Next Harp Weekly

Harp Weekly returns next week with a new theme. Make sure to follow Harp on Twitter to be notified first.

{}
Offical Harp News » Node.js ( Feed )
Monday, 03 March 2014
Harp Weekly – Three Static Patterns
Harp Weekly – Three Static Patterns

This edition of Harp Weekly includes plenty of patterns you can use when building a static site with Harp.

Nested Layouts

Raymond Camden of Adobe has become a staple of Harp Weekly, and I couldn’t be happier about it! Last week, he recorded a screencast,

Harp Weekly – Three Static Patterns

This edition of Harp Weekly includes plenty of patterns you can use when building a static site with Harp.

Nested Layouts

Raymond Camden of Adobe has become a staple of Harp Weekly, and I couldn’t be happier about it! Last week, he recorded a screencast, and this week he will show you how you can use nested layouts with Harp.

Writing short-form with Harp

being able to code natively in Sass and Jade rather than CSS and HTML is frickin’ awesome.

Short Form Blog wrote—briefly, as you might expect—about some of the benefits of Harp, and deploying to the Harp Platform.

A client-side redirects recipe

Redirects are important if you’re moving an existing site over to Harp. We’re looking at the best way to build this into Harp—or how to build on contributions from the community. In the meantime, there’s a new recipe on a workaround for adding client-side redirects.

Adding next and previous links to your posts

Raymond also wrote about adding next and previous links to your static blog. This information is already available through the _data.json you’re writing, and Raymond will show you how to put it to good use:

You can also try out the Baseline or Remedy Harp boilerplates, which have this feature built-in.

npm update

It’s worth noting that there was a change made to npm this week that may require some changes to your setup. If you’re receiving a SELF_SIGNED_CERT_IN_CHAIN error when you try and install something through npm, this blog post should help.

Next Harp Weekly

The next edition of Harp Weekly will feature community projects—let me know if you’ve built something with Harp and would like to see it featured! Follow Harp on Twitter to get the latest updates on Harp.

{}
Official Nikola News » Python ( Feed )
Saturday, 01 March 2014
Nikola v6.4.0 released!

We’re pleased to announce the release of Nikola v6.4.0.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn IPython Notebook

We’re pleased to announce the release of Nikola v6.4.0.

What is Nikola?

Nikola is a static site and blog generator, written in Python. It can use Mako and Jinja2 templates, and input in many popular markup formats, such as reStructuredText and Markdown — and can even turn IPython Notebooks into blog posts! It also supports image galleries, and is multilingual. Nikola is flexible, and page builds are extremely fast, courtesy of doit (rebuilding only what has been changed).

Find out more at the website: http://getnikola.com/

Key Changes since v6.3.0

  • The code.css (and all*.css) files have been revamped to support dark themes and Markdown properly. Please remove those files from your output directory and run nikola build to get the fixes.
  • nikola auto supports livereload v2.1.0.
  • Added nikola new_page, equivalent to nikola new_post -p.
  • Deploys to sub-directories (eg. http://example.com/blog/) are now fully supported and bug-free.

Get it!

Nikola is available for download at GitHub and PyPI.

Debian Packages

In the v6.3.0 announcement, it was promised that an install_bs3 command would be added to the Debian packages. The v6.3.0 packages were released yesterday and they contain the promised patch. Please use it to install the theme if you need it.

Committers

$ git log v6.3.0..v6.4.0 --pretty='format:%an'|sort|uniq -c|sort \
> --reverse
    144 Chris “Kwpolska” Warrick
     83 Roberto Alsina
     19 Ramiro Morales
     12 Thibauld Nion
     11 Daniel Aleksandersen
      9 Eric Meaney
      8 Ondrej Grover
      4 Evgeni Golov
      3 Tim Chase
      2 Casey M. Bessette
      1 Puneeth Chaganti
      1 Ivan Teoh
      1 Dav Clark

Changelog

Features

  • Add nikola new_page command (equivalent to nikola new_post -p) (Issue #1060)
  • Add LESS_OPTIONS and SASS_OPTIONS for specifying additional parameters to LESS/Sass compilers (Issue #1020)
  • Warn users about bootswatch_theme being incompatible with bootstrap3-gradients
  • Add link://filename/foo/bar.rst syntax to refer to the post generated from foo/bar.rst (Issue #1035)
  • Log messages are colorized (colorama is required under Windows) (Issue #1044)
  • Template filters are configurable via the TEMPLATE_FILTERS config variable (Issue #1038)
  • Added Hindi translation by Sean Pue
  • Livereload v2.1.0 is supported and frozen as the version to use due to backwards-incompatible updates (Issue #1023)
  • Support :linenos: and :number-lines: in listings (Issue #1010)
  • Support :linenos: in code blocks for Sphinx compatibility (Issue #1010)
  • New link:///foo links which always point to absolute paths (/foo in that case) (Issue #986)
  • Bootstrap 3 has been updated to v3.1.1 (Issue #1015)
  • New --browser/-b option on the serve command to open instantly in a web browser (Issue #997)
  • SASS/LESS files and targets file will be processed from site root (Issue #941)

Bugfixes

  • lastdeploy time recording was broken, changed to ISO format (Issue #1083)
  • Avoid undefined behaviour if NAVIGATION_LINKS is missing keys for a translation (Issue #1082)
  • Make livereload actually rebuild the site when changes are made (Issue #1067)
  • Fix filename encodings in WordPress imports (Issue #1053)
  • nikola check supports URL_TYPE="absolute" and URL_TYPE="full_path" (Issue #1046)
  • Fix URL_TYPE="absolute" and URL_TYPE="full_path" on non-root sites (Issue #1046)
  • Avoid running bundle tasks twice (Issue #1032)
  • Fix post links in RSS feeds for sites outside of webserver root (Issue #986)
  • Only run sitemap once (Issue #1032)
  • Fix a bug with some multilingual pages
  • Normalize paths (Issue #1028)
  • Fix drafts being leaked in feeds (Issues #934, #971)
  • If two tags generate the same slug, they are the same tag (Issue #1022)
  • Assume UTF-8 if user's locale doesn't have any encodings attached (Issue #1026 via #1021)
  • Support PRETTY_URLS for tag files (Issue #655)
  • Change code.css and rst.css to have sane output everywhere (Issues #913, #1009, #1050)
  • Fix image URLs in galleries for sites outside of webserver root (Issue #986)
  • Fix link:// in RSS contents (Issue #952)
  • HIDE_SOURCELINK was set to True sometimes (Issue #1004)
  • Properly import cool URIs from WordPress, instead of just slugify-ing the path (Issue #693)
  • Fixed SASS/LESS errors when more than one theme in chain has a targets file (Issue #941)
  • Guard against empty list-items in base templates (Issue #936)
{}
Offical Harp News » Node.js ( Feed )
Monday, 24 February 2014
Harp Weekly – Slides
Harp Weekly – Slides

Each Harp Weekly includes helpful resources for creating static sites and client-side applications with Harp, the open source web server with built-in preprocessing.

Raymond’s talk

Raymond Camden of Adobe presented on Harp this past week, and then again in this live

Harp Weekly – Slides

Each Harp Weekly includes helpful resources for creating static sites and client-side applications with Harp, the open source web server with built-in preprocessing.

Raymond’s talk

Raymond Camden of Adobe presented on Harp this past week, and then again in this live screencast. It’s a great introduction to Harp and the Harp Platform. He also has more notes from his talk available. Consider sharing it with someone you think would enjoy trying out Harp!

Sochi Harp app

Harp Sochi Tipping app by @torgeir

Torgeir Thoresen used Harp to build an Olympics standings app, which includes some slick SVG animations.

Harp Slideshow template

Harp slideshow template by @zeke

Zeke Sikelianos has put Harp to great use again with this slideshow template, complete with Markdown, iframe embed, and code highlighting support.

If you’re considering giving a talk about Harp, static applications, preprocessors, or something else you think we might like, get in touch and we’ll do our best to promote your talk or meet up.

Next Harp Weekly

Another release of Harp is around the corner. If you’re interested in contributing to Harp, feel free to open or comment on an issue on GitHub to get started.

{}
Offical Harp News » Node.js ( Feed )
Monday, 17 February 2014
Harp Weekly – Events and Calendars
Harp Weekly – Events and Calendars

Each Harp Weekly collects articles, tutorials, and community projects for designers and developers building static sites and client-side applications.

Harp at the Acadiana Adobe User Group

Raymond Camden is giving a talk on Harp at the Acadian

Harp Weekly – Events and Calendars

Each Harp Weekly collects articles, tutorials, and community projects for designers and developers building static sites and client-side applications.

Harp at the Acadiana Adobe User Group

Raymond Camden is giving a talk on Harp at the Acadiana Adobe User Group tomorrow. The event is taking place from 6pm at The Switch, 100 Central St., Lafayette, LA, and will also be streamed online.

Harp is great for building mobile web applications, blogs, docs, games, marketing sites, presentations. Pretty much anything with a front end. Ray Camden will give us an introduction to Harp, how easy it is to implement, and some cool demos.

If you’re not in LA, like us, you can watch the live stream here.

Dynamic Static Site Strategies at London JS Conf

Harp got a shout-out at London JS Conf this past week during Phil Hawksworth’s talk, Dynamic Static Site Strategies. His slides are available here.

Harp at London.js
Photo via Remy Sharp

Make sure to let us know if you’re hosting a meet up or speaking about Harp at an event so we can help share it!

Add a Dynamic Calendar to a Harp site

In addition to his talk, Raymond has also been writing some great blog posts about using Harp, including this one, which shows you how to add a dynamic calendar to a static site. They’ll be especially useful if you’re using EJS.

Libsass’ Plans

We keep a close eye on all the preprocessors that Harp supports. If you’re interested in finding out more about Libsass, the implantation of Sass that Harp uses, there’s a discussion going on about how it will work towards parity with the Ruby version.

Efficient Docker Containers using Nginx and Harp

Darron Froese wrote a blog post about compiling and deploying Harp sites through Docker. You can read it here, or check out the resulting project on GitHub.

Harp at Static Showdown

Congratulations to everyone who participated in Static Showdown, it was a fun event. Harp did well there, too: Rob Ellis from the Harp Platform was a judge for the event, and contestants used Harp to help them build apps efficiently.

Make sure to tag your entry with “Harp” if you used it, or let just let us know and we’ll highlight it in a future edition of Harp Weekly.

Next Harp Weekly

There’s a new release of Harp coming soon, with some great contributions from the community. Make sure to follow @HarpWebServer on Twitter to be notified first.

{}
Official Pelican News » Python ( Feed )
Tuesday, 04 February 2014
I18N Subsites plugin released

Pelican has supported article and page translations since version 2.6. However, this functionality does not include translations of themes or the site name, something many have asked for.

The new I18N Subsites plugin makes it simple to:

  • override settings for each language, e.g.

Pelican has supported article and page translations since version 2.6. However, this functionality does not include translations of themes or the site name, something many have asked for.

The new I18N Subsites plugin makes it simple to:

  • override settings for each language, e.g. SITENAME or MENUITEMS
  • translate and localize themes using jinja2.ext.i18n
  • automatically create translated subsites such as http://example.com/fr/

The new plugin is available in the Pelican plugin repository.

A demo site has been put up to showcase the plugin. You can use the demo site source as a reference for using the plugin in your own site.

Although this plugin has been tested, it is quite possible that you will find some bugs or inconvenient behavior as it is very new. Do not hesitate to file an issue!

Finally, I would like to thank the Pelican developers for implementing and designing Pelican so well that making this plugin was straightforward, fast, and fun.

{}
Offical Harp News » Node.js ( Feed )
Monday, 03 February 2014
Harp Weekly – Harp v0.11.2
Harp Weekly – Harp v0.11.2

A new version of Harp was released this week. Whether you using the Harp Platform and Dropbox, keep GitHub projects in one main directory, or use Harp as a headless web server, the latest version of Harp includes updates to Multihost that will be useful to you.

Y

Harp Weekly – Harp v0.11.2

A new version of Harp was released this week. Whether you using the Harp Platform and Dropbox, keep GitHub projects in one main directory, or use Harp as a headless web server, the latest version of Harp includes updates to Multihost that will be useful to you.

You can install this new version of Harp using:

sudo npm install -g harp

You may leave off sudo if you’re on Windows or already have admin privileges. If you’re new to Harp, get started quickly here.

Harp v0.11.2 – Generic Multihost

Harp’s Multihost mode serves every subdirectory within the directory you specify. If you run harp multihost inside a folder, all the projects inside will be available in the browser as subdomains of harp.nu.

Harp’s multihost list view

Once you run harp multihost, you can visit your local server in the browser (localhost:9000 by default) and see the list of projects. Visiting any entry will take you to that project, served at a subdomain of .harp.nu. So, in this example, the sintaxi/ directory would be available at sintaxi.harp.nu:9000. We’ll have more examples of how you can use Multihost in the docs this week.

All updates in v0.11.2

The especially curious may also review the commit log.

Static poetry

The expressions are learned, the cues hinted and stored
We learn and predict and build the image of our affection

Ethan Joachim Eldridge

This week, the developer of the WordPress to Harp script wrote a post about a poetry blog he started with Harp.

Banishing .html extensions

With Harp, if you want your source content files to work as a static generated site, then you must refer to urls using .html.

I don't like this.

Remy Sharp, Harp Static

We love feedback! If you’re not using Harp to serve the sites you compile with it, presently, you may need to choose between a clean directory structure, and hard-coding .html in your links. (There’s a GitHub issue discussion on this, too.)

In the meantime, Remy has put together a pack called Harp Static, useful if you want a kind of strict mode, something witch Harp doesn’t have right now.

Other solutions to this problem include:

Next Harp Weekly

The next edition of Harp Weekly will be right after Static Showdown. Make sure to post how you’re using Harp; we’ll help share your entry through @HarpWebServer on Twitter.

{}
Offical Harp News » Node.js ( Feed )
Monday, 27 January 2014
Harp Weekly – Harp for Static Showdown
Harp Weekly – Harp for Static Showdown

Each Harp Weekly collects helpful resources for creating static sites and client-side applications with Harp, the open source web server with built-in preprocessing.

Static showdown

Static Showdown is a “a worldwide 48 hour hackathon featuring static w

Harp Weekly – Harp for Static Showdown

Each Harp Weekly collects helpful resources for creating static sites and client-side applications with Harp, the open source web server with built-in preprocessing.

Static showdown

Static Showdown is a “a worldwide 48 hour hackathon featuring static web apps.” If you’re familiar with Node Knockout, the concept is similar: you and your team have from midnight on February 8th GMT until the end of the 9th to build an app—without writing any backend code.

This means you could use Hoodie, Kinvey, Firebase, Parse, or others, for your static app’s backend, as necessary. The front end could be handled by Angular, Ember, Backbone or any other front end framework of your choice! Harp will serve these applications, and take care of all the preprocessing for you.

As one Static Showdown entrant put it,

@HarpWebServer + @angularjs + localStorage + @goinstant == @staticshowdown heaven

Krish Dholakiya

Since your team will be on a time crunch, you might want to use a CSS framework or mixin library, too—Harp works great with Foundation 5 or Bourbon.

Rob Ellis judges Static Showdown

Rob Ellis, co-creator of Harp, also wrote about how the he will be representing the Harp Platform by helping to judge Static Showdown.

Harp Platform Landing Page

The Harp Platform provides effortless web publishing through Dropbox, and uses Harp in production so you get all the benefits of running it locally like Clean URLs and built-in preprocessing.

The Harp Platform landing page got a great refresh this week, and now features some kind words by users of both Harp and the Harp Platform!

Harp Platform landing page updated

Harp Buildpack for Heroku

If you’d like to deploy a Harp app to Heroku, there’s now a fantastic resource to help you, put together (appropriately) by Zeke Sikelianos of Heroku. The code is available on GitHub.

The sample Buildpack site

On Documentation

Some potential contributors to Harp have expressed interest in helping with the documentation, which we greatly appreciate. We will be open sourcing the docs in the very near future.

In the meantime, if you’d like to write about Harp—deploying a Harp application somewhere, using a preprocessor, or exploring advanced uses of some of Harp’s features, for example—we’ll make sure to promote your posts and link to them in the documentation!

To get the latest updates on Harp, follow @HarpWebServer on Twitter.

{}
Offical Harp News » Node.js ( Feed )
Monday, 20 January 2014
Harp Weekly – Static Ghosts and Draft Posts
Harp Weekly – Static Ghosts and Draft Posts

This edition of Harp Weekly used to be a draft. I wrote about how you can create draft posts for your static blog, too. Of course, it’s not a draft any longer, which means there’s more Harp links from this past week worth checking out.

Ghost’s defaul

Harp Weekly – Static Ghosts and Draft Posts

This edition of Harp Weekly used to be a draft. I wrote about how you can create draft posts for your static blog, too. Of course, it’s not a draft any longer, which means there’s more Harp links from this past week worth checking out.

Ghost’s default theme as a static blog

In a decision that dramatically altered my sleep schedule for the remainder of the week, I decided to turn Ghost’s default theme into a boilerplate for Harp. This means you can now run Casper with no backend.

Casper running with Harp in the browser

I’ve done my best to have it match the features currently available in Ghost. For example, you can create pages or posts, add custom header images, and modify the templates with EJS and the styles using Sass.

This boilerplate is a fork of the MIT Licensed Casper; the the source code for the Harp version is available on GitHub here.

Build URLs on the Harp Platform

The Harp Platform, which allows you to publish static sites and client-side apps through Dropbox, introduced the Build URL feature, which allows you to see a previously published version of your site, served by Harp. Find out more on the Harp Platform blog.

Synth, API first framework

Jon Abrams is working on Synth, a web framework for synthesizing API-first web apps that also have web front-ends. It uses Harp for its preprocessing. Read more about it—appropriately—in the project’s README.

Harp all the things

Rob Ellis wrote about moving his personal projects over to Harp. If you’ve got a handful of projects with outdated codebases, it might be just the motivation you need to make them static.

Recipe: Add Next / Previous links to blog posts

After a request on GitHub, the Harp boilerplates Baseline and Remedy both had next and previous post links added. Take a look at the quick examples of how to add them; a more comprehensive recipe is coming soon.

Remedy boilerplate

Flippin’ Awesome’s Best of JS2013

Flippin’ Awesome included Harp among its Best of JavaScript in 2013 list. There’s some great tools and patterns listed that work great with Harp, too: Cordova / PhoneGap 3.0, Backbone, Ember, Angular, React, and more.

Next Harp Weekly

Next Harp Weekly will help you get ready for Static Showdown, a 48 hour competition for creating static web apps. Harp would be the perfect tool to help with your entry.

Until then, follow @HarpWebServer on Twitter for the latest.


pluto.models/1.4.0, feed.parser/1.0.0, feed.filter/1.1.1 - Ruby/2.0.0 (2014-11-13/x86_64-linux) on Rails/4.2.0 (production)