Introducing Tinman, the shiniest blog engine in Oz!
Let's get started
Tinman is a tiny static-ready blog engine inspired by the toto library.
A basic tinman blog looks like this:
example
├── articles
│ └── 2014-08-01-the-shiniest-blog-engine-in-oz.md
└── public
└── style.css
You can grab a copy on npm:
npm install -g tinman
You can also check out the source code, follow issues, and much more over on GitHub.
Usage
Create a new blog
$ tinman create
Blog title: myblog
Your blog is ready! To get started:
cd myblog/
tinman server
$ tinman create myblog
# Generate example templates to play with as well
$ tinman create myblog --with-templates
Generate a new article
$ tinman new
Title: This is my first blog post
Article generated at: articles/2014-07-05-this-is-my-first-blog-post.md
Run your blog on a local webserver
$ tinman server
Server listening on port 3000...
$ tinman server --port 1337
Server listening on port 1337...
Build your blog as a static site
$ tinman build
Blog successfully built to: build/
$ tinman build --output-dir www
Blog successfully built to: www
Why?
Blogging is weird. Sometimes we run entire web servers just to host a couple words. That's odd, but sometimes it's necessary, Tinman gets that.
Other times we use industrial-grade static site generators to spit out a few files. These tools are really awesome for some things, but they get in the way for others.
Tinman isn't like that. Tinman is small, simple, and opinionated.
Writing Articles
Articles are written in Markdown and use YAML Front Matter to set various options.
---
title: Hello, World!
date: 2014-06-22
---
Once upon a time...
Extra customization
If you're feeling the need to customize your blog further, you can edit
the default templates that Tinman uses. Just add the --with-templates
option when calling tinman create
.
Tinman also supports the notion of "plugins," which are just simple helper functions you can call from your templates.
There's some more about this on GitHub.
Static Files
Tinman will automatically copy static assets (images, stylesheets,
javascripts) from the "public" directory (default: public/
). It
doesn't need to be any more difficult than that.
You can throw images in there, audio files, even complete HTML documents.
Even cooler, any JS or CSS you throw in there will be automatically inserted into your main layout with Tinman.
What else?
Not much! Tinman's pretty simple. It takes the same "10 second blog engine for hackers" spirit behind toto and adds a couple nifty features.
Be sure to check us out on GitHub.