smol

Very smol website builder

Usage no npm install needed!

<script type="module">
  import smol from 'https://cdn.skypack.dev/smol';
</script>

README

Smol

Static site generator with a bare minimum set of features.

  • Generate html from markdown sources
  • Support for ejs templates
  • Page metadata (front-matter)
  • Default theme
  • Admin panel with authentication
  • Online markdown editor
  • Image upload
  • No database, everthing is file based

For a more complete feature set see smolpress.

Install

Requires node.js >= 10.0

npm install -g smol
cd blog
smol init
export SMOL_VAULT_PASSWORD=yourpassword
smol start

Alternate installation (that doesn't involve the global smol command):

git clone https://github.com/mihaifm/smol blog
cd blog
npm install
export SMOL_VAULT_PASSWORD=yourpassword
node index.js

Visit localhost:3939 to view your blog and localhost:3939/admin to manage posts.

Authentication

Smol provides a single user that is created when visiting /admin. User data is stored in a text file (data/vault.txt) which is encrypted with the password available in the SMOL_VAULT_PASSWORD environment variable.

Environment variables

  • SMOL_VAULT_PASSWORD - encryption password for the "vault" containing user data.
  • SMOL_PORT - server port. Default: 3939
  • SMOL_SRC_PATH - path to the markdown page sources. Default: source
  • SMOL_OUTPUT_PATH - path to the generated static files. Default: public
  • SMOL_DATA_PATH - path to the data folder. Default: data