Getting Started with Zetta
Zetta is a lightweight, file-based blog engine built on Bun. It requires no database — articles are plain JavaScript files, and content syncs automatically from a Git repository.
Quick Start
- Clone the repo and install dependencies:
git clone <your-zetta-repo>
cd zetta
bun install
- Start the server:
bun run server.js
Your blog is now running at http://localhost:3000.
Configuration
Zetta is configured entirely through environment variables:
| Variable | Description |
|---|---|
PORT |
Server port (default: 3000) |
ARTICLES_REPO_URL |
Git repo URL for articles content |
TEMPLATES_REPO_URL |
Git repo URL for custom templates |
GIT_TOKEN |
Access token for private repos |
WEBHOOK_SECRET |
Secret for the POST /webhook endpoint |
SYNC_INTERVAL |
Polling interval in seconds (default: 300) |
Docker
docker build -t zetta .
docker run -p 8080:8080 \
-e ARTICLES_REPO_URL=https://github.com/you/blog-articles.git \
-e GIT_TOKEN=your_token \
zetta
What's Next?
- Read Writing Articles to learn the article format
- Read Custom Templates to customize your blog's look