Kalenuxer Guide

Getting Started with Kalenuxer

Set up your first Kalenuxer project in minutes. This guide covers prerequisites, project structure, running your first build, and understanding the output.

Prerequisites

Before you begin, make sure you have the following installed on your machine:

  • Node.js 18 or higher — the Kalenuxer CLI runs on Node.js. Version 22 is recommended.
  • git — required to clone the repository.
Note: Kalenuxer is tested and developed on Node.js 22. While Node.js 18 is the minimum supported version, using the latest LTS release is recommended for best compatibility.

Step 1: Clone the repository

Clone the Kalenuxer repository to your local machine:

Terminal
git clone https://github.com/emirbaycan/kalenuxer.gitcd kalenuxer

No additional installation step is required. Kalenuxer has minimal dependencies and the CLI is invoked directly with Node.js.

Step 2: Project structure

All websites live inside the websites/ directory. Each site has its own subdirectory with a consistent layout:

Directory layout
websites/ your-site/ site/ HTML templates, CSS, JS, images source files datas/ JSON language and asset data files store/ Build timestamp tracking (auto-generated) dist/ Build output — do not edit manually

The site/ directory holds your source files organized by type: site/html/, site/css/, site/js/, and site/template/. The datas/ directory holds per-language JSON files that supply variables to the template engine.

Step 3: Your first build

Run the following command from the root of the cloned repository:

Terminal
node run.js <site-name> prepare release

Each argument has a specific role:

ArgumentExampleDescription
site-namemysiteThe subdirectory name under websites/ that you want to build.
actionprepareRuns the full build pipeline: CSS, JS, images, HTML templates, pages.
modereleaseProduces minified, versioned production output. Use debug for unminified output.
Tip: If you do not have an FTP server configured, add the -unsafe flag to skip upload errors and complete the local build: node run.js <site-name> prepare release -unsafe

Step 4: Understanding the output

After a successful build, all output files are written to the dist/release/ directory inside your site folder:

Output structure
websites/your-site/dist/release/ index.html homepage product/foo.html product pages css/ main.abc123.css versioned, minified stylesheet js/ main.def456.js versioned, minified script img/ optimised images

HTML files are generated from your site/html/ source files after template includes are resolved and variables are substituted from the language JSON files. CSS and JS files are minified and given content-hash suffixes so browsers always load fresh versions after a deploy.

The dist/ directory is entirely managed by the build system. Never edit files inside it directly — they will be overwritten on the next build.

Want a custom build pipeline?

We can design and implement custom build and deployment systems tailored to your specific stack and workflow requirements.