Skip to main content

Static Site Generator

Project description

Nib is a static site generator, written in Python, geared toward creating a simple site or blog, with the ability to generate metadata pages based on content attributes. It understands concepts like tags, archives, and paging series of individual entries into larger blocks of content. It is designed to be easily extended to create new content types with customized behaviors.

Concept

Nib uses a pluggable content pipeline that differentiates between “resources” like CSS or Javascript, and “documents” such as static pages or blog posts. The two pipelines are similar, are executed in parallel, and define multiple hooks where plugins can process a subset of entities, and even remove entities or generate new ones at runtime.

An example site generated from the default wizard and templates is available at http://nib.noswap.com

Requirements

  • Python 3.2

Installation

To install the latest official release:

$ pip3 install nib

or to install the version currently checked out from source:

$ python3 setup.py install

Getting Started

Once Nib is installed, you can generate basic configuration and site using the built-in wizard:

$ mkdir somesite && cd somesite $ nib wizard …

Once the wizard is complete, you should have a site configuration file, some example documents (a page and two blog posts), and a minimal site theme consisting of resources (favicon, CSS, and robots.txt), and templates:

$ ls config.nib documents/ resources/ templates/

$ ls documents about.md links/ posts/

$ ls resources favicon.ico main.less robots.txt

$ ls templates feed.xml list.html macros.html page.html post.html posts.html

To build the site:

$ nib … Done

The resulting HTML and resources will be in the site/ directory:

$ ls config.nib documents/ resources/ site/ templates/

$ ls site 2012/ about.html archive.html favicon.ico feed.xml index.html links/ main.css posts/ robots.txt tags/

To test the resulting site, Nib can run a simple HTTP server, as well as open the local server in your preferred web browser:

$ nib serve Serving site on port 8000… press Ctrl-C to terminate. ^C Done

or:

$ nib serve –port 9000 –browse Serving site on port 9000… press Ctrl-C to terminate. Opening http://localhost:9000 in web browser… ^C Done

License

Nib is licensed under the MIT license. See the LICENSE file for details.

Credits

Nib is developed by [John Reese](http://noswap.com) as a labor of love. It builds on top of many fine projects from the open source community, such as:

Inspiration for Nib its design is thanks to [Oben Sonne](http://obensonne.bitbucket.org/) and his project [Poole](http://bitbucket.org/obensonne/poole).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Nib-0.4.7.tar.gz (20.1 kB view details)

Uploaded Source

File details

Details for the file Nib-0.4.7.tar.gz.

File metadata

  • Download URL: Nib-0.4.7.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Nib-0.4.7.tar.gz
Algorithm Hash digest
SHA256 14e79803f2b7f3280db263eb8fb0665356d8c20a612dd7f4c5bec1e89701d7fa
MD5 b2baeac9e7758b4d39c82f6a707694de
BLAKE2b-256 7ee6fa7942e8f61ed3f02853d0e82b0bd16234c521a18ab54f4bb892816c9172

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page