Skip to content

twilson63/bam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

69 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

BAM

bam

The easiest static site generator on the planet. ⚑️ Now with Bun support for blazing-fast performance!

πŸš€ Quick Install

One-line Installation (Recommended)

macOS/Linux

curl -fsSL https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.sh | sh

Windows (PowerShell)

iex (irm https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.ps1)

Alternative Installation Methods

Using wget:

wget -qO- https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.sh | sh

Install specific version:

curl -fsSL https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.sh | sh -s -- --version v2.0.0

Install to custom directory:

INSTALL_DIR=$HOME/bin curl -fsSL https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.sh | sh

Traditional Installation

Via npm:

npm install bam -g

Via Bun:

bun install -g bam-ssg

✨ Features

  • Lightning Fast: Powered by Bun for 5x faster builds
  • Simple: Minimal configuration, maximum productivity
  • Multiple Templates: Skeleton, Bootstrap, Reveal.js, Angular, Pagedown
  • Live Reload: Development server with hot reloading
  • Markdown Support: GitHub Flavored Markdown out of the box
  • Cross-Platform: Works on macOS, Linux, and Windows

πŸ“– Quick Start

Create a new site with http://getskeleton.com

bam new mysite
bam new mysite bootstrap

Create a new site with http://revealjs.org

bam new mysite reveal

Run in development mode

cd mysite
bam run

Open http://localhost:3000 in your browser.

Generate static site

bam gen

Your static site will be in the gen folder.

Serve the generated site

bam serve

Open http://localhost:8080 to view your generated site.

πŸ“ Project Structure

mysite/
β”œβ”€β”€ assets/          # Static assets (CSS, JS, images)
β”œβ”€β”€ layouts/         # Page layouts (EJS templates)
β”œβ”€β”€ pages/           # Content pages (Markdown, HTML, EJS)
β”œβ”€β”€ gen/             # Generated static site (after bam gen)
└── package.json     # Project configuration

🎨 Working with Pages

Create pages in the pages/ directory using:

  • Markdown (.md) - For content-focused pages
  • HTML (.html) - For custom layouts
  • EJS (.ejs) - For dynamic templates

Example pages/about.md:

---
title: About Us
layout: default
---

# About Our Company

We build amazing static sites with BAM!

πŸš€ Templates

BAM comes with several built-in templates:

  • skeleton - Minimal, responsive CSS framework (default)
  • bootstrap - Twitter Bootstrap for rapid development
  • reveal - Reveal.js for presentations
  • angular - Angular.js single-page applications
  • pagedown - Markdown-focused documentation sites

⚑ Performance

The modernized BAM with Bun support provides:

  • 5x faster startup time
  • 5x faster build times for 100+ pages
  • 50% reduction in memory usage
  • Standalone executables (no Node.js required)

πŸ”§ Advanced Usage

Environment Variables

# Development mode
BAM_ENV=development bam run

# Custom port
BAM_PORT=4000 bam run

# Production build
BAM_ENV=production bam gen

Uninstall

# If installed via curl
curl -fsSL https://raw.githubusercontent.com/twilson63/bam/master/scripts/install.sh | sh -s -- --uninstall

# If installed via npm
npm uninstall -g bam

πŸ“š Documentation

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“„ License

MIT

πŸ‘ Credits

Created by Tom Wilson (@twilson63)

Modernized with Bun support by the BAM community


Built with ❀️ using Bun - The fastest JavaScript runtime

About

Easiest Static Web Generator on the Planet (beta)

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors