Skip to content

Minimalistic Static-Site Generator (similar to Jekyll) but in JavaScript

Notifications You must be signed in to change notification settings


Folders and files

Last commit message
Last commit date

Latest commit



23 Commits

Repository files navigation

JSekyll - minimalistic Static Site Generator in JavaScript

Contact: Robert Nowotniak <>

I have abandoned this project, and I've decided to move to a different SSG

This tool is a minimalistic Static Site Generator inspired by Jekyll. Thanks to its simplicity it allows to keep all processing under your control. However, only a subset of Jekyll features is supported. Neither it is 100% compatible with original Jekyll.

Implemented features

  • Two run modes: build / serve
  • Serving site locally in dev mode (Express JavaScript lib)
  • MarkDown support with (Marked JS lib)
  • Liquid templates support (LiquidJS)
  • Live Reload (browser-sync)
  • Load data from _data/*.yml
  • Process files selectively
  • Multi-language support
  • Page variables: {{ page.var }}
  • _layouts/ directory
  • _includes/ directory
  • _config.yml configuration file (to liquid vars site.var)
  • Multi-files support
  • Frontmatter support

Example site


$ ./jsekyll.js -s tests/testpage1/ build 

building site tests/testpage1/ -> ./_site
Loading _config.yml and _data/*.yml
  permalink: '/:categories/:year/:title/',
  title: 'My test website',
  email: '',
  layout: 'layout1',
  defaults: [
    { scope: [Object], values: [Object] },
    { scope: [Object], values: [Object] }
  highlighter: 'none',
  kramdown: {
    input: 'GFM',
    highlighter: false,
    syntax_highlighter: false,
    syntax_highlighter_opts: { disable: true }
-> Processing
Yaml: { title: 'Page 2', permalink: '/page2/' }
Writing ./_site//page2//index.html
-> Processing
Yaml: { title: 'debug' }
Writing ./_site/debug/index.html
-> Processing index.html
Yaml: { myval: 5, title: 'My test page' }
html file
Writing ./_site/index.html
-> Processing
Yaml: { title: 'Page 1', permalink: '/page1/' }
Writing ./_site//page1//index.html
-> Processing index-pl.html
Yaml: { title: 'My website - Polish version', permalink: '/pl/' }
Writing ./_site//pl//index.html

Serve and test

$ ./jsekyll.js s -P 5000
serving site

Test site screenshot

TODO perhaps some day in the future

  • themes
  • plugins

Not supported and not planned

Simply because I was never using these in Jekyll:

  • SCSS



Minimalistic Static-Site Generator (similar to Jekyll) but in JavaScript







No releases published


No packages published