Back to Blog

Getting Started with jam-gen

· Documentation Team · 2 min read
tutorialguidesetup

Getting Started with jam-gen

This guide walks you through setting up your first jam-gen site from scratch.

Prerequisites

Before you begin, ensure you have:

  • Node.js 22 or later
  • npm or pnpm
  • Git

Tip: Use nix develop if you’re using NixOS for a pre-configured development environment.

Quick Start

Get a site running in under a minute:

# Clone the repository
git clone https://github.com/your-org/jam-gen.git
cd jam-gen

# Install dependencies
npm install

# Start the development server
npm run dev

Visit http://localhost:4321 to see your site.

Project Structure

A jam-gen project follows this structure:

your-site/
├── content/
│   ├── blog/
│   │   └── my-first-post.md
│   └── pages/
│       └── about.md
├── site.json
└── (optional) theme/

Content Organization

Blog Posts

Place your blog posts in content/blog/. We recommend naming files with dates:

content/blog/
├── 2026-01-01-hello-world.md
├── 2026-01-15-another-post.md
└── draft-upcoming-feature.md

Static Pages

Pages live in content/pages/:

content/pages/
├── about.md
├── contact.md
└── privacy.md

Frontmatter Schema

Every content file needs frontmatter:

---
title: Required - Your post title
description: Optional - SEO description
date: 2026-01-05T10:00:00-06:00
author: Optional - Author name
tags: [optional, list, of, tags]
draft: false  # Set true to hide from listings
---

Important: Always include the timezone in dates (e.g., -06:00 for CST) to ensure consistent scheduling.

Choosing a Theme

jam-gen ships with three themes:

ThemeCommandDescription
Minimalistnpm run theme:minimalistClean, content-focused
Noirnpm run theme:noirDark, developer-focused
Boldnpm run theme:boldNeubrutalist, creative

Switch themes instantly:

npm run theme:noir

Building for Production

Generate static files:

npm run build

Your site will be in the dist/ directory, ready for deployment.

For a specific theme:

npm run build --theme=noir

Next Steps

  • Check out the Component Showcase to see available components
  • Read the FAQ for common questions
  • Explore the Blog for more tutorials

Happy building with jam-gen!