Lektor vs Easystatic

Lektor and Easystatic are both open source static site generators. Lektor is written in Python and Easystatic is written in JavaScript.

Property Lektor Easystatic
Language Python JavaScript
Templates Jinja2 EJS
License BSD-3-Clause Apache-2.0

Lektor benefits

Lektor is a static content management system that runs offline, written in Python.

  • Deploy Anywhere Because Lektor builds out 100% static HTML you can deploy them to any host (including S3, github pages, any web host, etc.).
  • Cross Platform It runs on Linux, OSX and Windows.
  • 100% File Based All source data is well structured and can be tracked in a version control system or cloud storage like Dropbox.
  • Flat-File Database All source data is stored in a flat-file tree database and can be freely queried. The layout of that data is completely configurable.
  • Customizable Admin Lektor comes fully equipped with a flexible and beautiful admin interface so you can edit your pages without having to touch the raw sources.
  • Dependency Tracking The build process intelligently tracks page dependencies such that it only rebuilds pages that have changed.
  • Image Tools Create thumbnails and give convenient access to EXIF data.
  • Plugin System Lektor supports loading plugins that can customize a wide range of functionality.
  • Python API The build system is written in Python and provides a documented API to extend it and integrate into other apps.
  • Multilingual We can speak multiple languages and allow you to easily create localized websites.

Easystatic benefits

Easystatic uses Markdown It for web pages, EJS and PostCSS + Autoprefixer for layout, Browsersync for cross-device testing...

Why use Easystatic?

  1. It advocates convention over configuration
  2. It's JavaScript-based, no need to have Ruby/Go/PHP installed
  3. It's build around modern mainstream front-end tools such as PostCSS, Babel, Browsersync
  4. It contains a build-in development server with "live reload"
  5. It can scaffold the basic site layout for you based on Material Design Lite (MDL)

How to Use

$ npm install -g easystatic
$ es start <path>

...where <path> is the folder with *.md files, or an empty folder. For example:

$ es start mysite.com

This command launches your site in a browser and starts watching for modifications in source files (<path>/*.md, <path>/assets/*.*).

How to Deploy

Here is an example of how you can deploy your site to GitHub Pages:

$ es deploy mysite.com --repo=username/mysite.com --domain=mysite.com

For more info, please visit www.easystatic.com