Helix
Helix is a versatile and powerful static site generator designed for developers who need a seamless and efficient workflow. With support for multiple template engines like EJS, Handlebars, and Pug, Helix allows you to create dynamic, content-rich websites with ease. Its intuitive CLI and live reloading server make development fast and enjoyable, while its modular architecture ensures your projects stay scalable and maintainable.
Inspired by Douglas Matoso's nanogen.
Features
- Support for Multiple Template Engines: Use EJS and Markdown to create your pages.
- Flexible Layouts: Apply consistent headers, footers, and navigation across multiple pages using layout files.
- Partials Support: Reuse common components across your site for cleaner, more maintainable code.
- Global Site Configuration: Manage site-wide settings with a global config file.
- JSON Data Integration: Easily iterate over JSON data to generate dynamic pages, such as a project list.
- Live Reloading Development Server: Instantly preview changes as you develop with a built-in dev server.
- CSS/JS Preprocessor Support: Integrate your favorite CSS and JavaScript pre-processors for a modern development workflow.
- Chalk-Powered Console Output: Enjoy better console output with enhanced readability and error handling.
Installation
To install Helix globally using npm:
npm install -g helix-static-gen
Or using Yarn:
yarn add -g helix-static-gen
Usage
Initialize a New Site
To initialize a new Helix site, simply run:
helix-static-gen init
This will create a new project structure with the necessary files to get started.
Start the Development Server
To start the local development server with live reloading:
helix-static-gen start -p 3000
You can specify a different port if needed using the -p flag.
Build the Site
To build your site into the public folder:
helix-static-gen build
This will process your templates, apply layouts, and generate static HTML files.
Example
Here is a basic example of how to use Helix:
Initialize your project:
helix-static-gen initCreate a Markdown file in the
pagesdirectory:# Welcome to My Site This is my awesome site powered by Helix!Start the development server:
helix-static-gen startOpen your browser and navigate to
http://localhost:3000to see your site in action.
Docs
Read the full documentation for detailed guides, API references, and more examples.
Authors
- Melvin Joseph Mani - Initial work - melvinjmani
License
Helix is licensed under the MIT License.