{"repo":"mourner/tinyjam","free":true,"listed":false,"github":"https://github.com/mourner/tinyjam","clone":"git clone https://github.com/mourner/tinyjam.git","description":"A radically simple, zero-configuration static site generator in JavaScript","language":"JavaScript","stars":168,"topics":["static-site-generator","ejs-templates","markdown","javascript"],"license":"ISC","category":"docs-static-sites","readme_excerpt":"tinyjam A bare-bones, zero-configuration static site generator that deliberately has no features , an experiment in radical simplicity. Essentially a tiny, elegant glue between EJS templates and Markdown with freeform structure (enabling incremental adoption) and convenient defaults, written in under 120 lines of JavaScript. - Example - Documentation - Getting started - Data files - Templates - Command line - Node.js API - FAQ Example An example template: Browse the full example and see the generated website. Documentation Getting started Tinyjam doesn't impose any folder structure, processing any data files ( .md and .yml ) and templates ( .ejs ) it encounters and copying over anything else. Data files All .md and .yml files inside the working directory are interpreted as data , available for any templates all at once as JavaScript objects. For example, given the following folder structure: A template in this folder will have the contents available as: Markdown is rendered according to the GitHub Flavored Markdown specification. Templates Tinyjam uses EJS (through yeahjs, a fast EJS subset), a templating system where you can use plain JavaScript, so it's both powerful and easy to learn. All .ejs files it encounters are rendered with the collected data in the following way: - .ejs files are rendered as .html . - item.ejs has a special meaning: all data files in the same folder (e.g. .md ) are rendered with this template as .html with the corresponding file's data. - Templates","default_branch":null,"files":null,"tree":[],"storefront":"/r/mourner","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mourner/tinyjam/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}