USER GUIDE

ActiveSite Documentation

What it is, how it works, and how to configure your projects and content types.

What is ActiveSite?

ActiveSite is a content production dashboard that automates the creation and publishing of SEO articles across multiple websites. You add keywords or article titles, configure how you want them written, and ActiveSite handles the rest — generating the content, formatting it correctly for your site, and publishing it to GitHub on a schedule you control.

It’s designed for people managing content across several sites at once, where manually writing, formatting, and committing articles is a time sink that gets in the way of everything else.

The core idea

Every website you manage in ActiveSite is a Project. Each project connects to:

  • link A content provider — the AI writing service that generates your articles
  • hub A GitHub repository — where your site’s files live
  • schedule A publishing schedule — how often new articles go live (daily, a few times a week, weekly, or manually)

You add keywords or article titles to a project’s queue. ActiveSite generates the articles automatically on your schedule, formats them correctly for your site, and commits them to GitHub — where your site rebuilds and publishes them live.

What sites does it work with?

ActiveSite works with any static site that stores content as markdown files in a GitHub repository. This includes sites built with:

Jekyll — GitHub Pages standard
Hugo — fast, large content sites
Eleventy — lightweight, customizable
Astro — modern content-heavy sites
Hexo — popular for dev blogs
Bridgetown — modern Jekyll successor
VitePress — documentation sites
Docusaurus — docs and blog sites

Any other SSG that uses markdown files with YAML front matter is also supported. When you create a project, you select your SSG and ActiveSite pre-fills sensible defaults for that platform — folder structure, front matter format, and image paths — which you can customize to match your site.

Projects and Content Types

Each project can have multiple Content Types. A content type defines what kind of article gets written and how it’s formatted. For example, a single website might have:

Blog Post

Standard informational articles, 1,500 words, friendly tone.

Product Review

Amazon product review format, condensed structure.

Listicle

Ranked list format (best X, top 10 Y) with specific instructions per list item.

Each content type has its own article format, writing defaults (length, tone, point of view, language), front matter template, and prompt settings. When you add a keyword to the queue, you select which content type to use.

How articles get generated

The queue

When you add keywords or article titles to a project, they sit in a queue — nothing is generated immediately. Generation is tied to your publishing schedule, so you never accidentally create a burst of articles you didn’t plan for.

You can add keywords one at a time, paste in a list (one per line), or import a CSV file:

best survey tools, Listicle
how to improve response rates, Blog Post
Typeform review, Product Review

The second column is the content type name. If left blank, the project’s default content type is used.

The schedule

Each project has a publishing schedule — for example, one article per day at 9:00am Toronto time. When the scheduled time arrives, ActiveSite picks the next keyword from the queue, sends it to the content provider, and waits for the article.

Once generated, the article is either published immediately (Automated mode) or held for your review (Draft mode). You can also trigger generation manually from the queue page.

The two publishing modes

bolt AUTOMATED

Publish immediately

The article is generated and committed to GitHub without any manual step. The moment generation completes, your site goes live with the new post.

Best for high-volume projects where you trust the output quality.

visibility DRAFT MODE

Review before publishing

Generated articles sit in a review queue. You read the draft, then approve or reject it with a note. Rejected articles can be re-queued or discarded.

Best for sites where voice and quality need a human check.

AI prompt enhancement

By default, articles are generated using your project’s voice and tone settings. For more control over how each article is structured, you can enable AI prompt enhancement.

When enabled, ActiveSite makes a quick call to Claude (Haiku model) just before generating each article. Claude reads the keyword and your site context and writes article-specific instructions that get passed to the content provider alongside the keyword — tailoring each article’s prompt to that specific keyword.

You can enable or disable individual fields:

tune

Extra section prompt

Shapes what gets covered in each H2 section.

tune

Extra introduction prompt

Shapes how the article opens.

tune

Extra outline prompt

Suggests the H2 structure for the article.

tune

List item prompt

For listicles, shapes how each individual list item is written.

This feature is off by default and can be toggled per project and per content type.

How articles are formatted and committed

Front matter

Every static site uses a metadata block at the top of each markdown file called front matter. In ActiveSite, you define a front matter template using placeholder variables:

---
layout: post
title: "{{title}}"
date: {{date}}
author: "{{author}}"
description: "{{description}}"
image: "{{featured_image}}"
---

ActiveSite fills in the placeholders automatically at publish time. Static values like author and layout are configured once in project settings. Dynamic values like title, date, and featured_image come from the article itself.

Filenames

All supported SSGs use the same filename convention for blog posts:

YYYY-MM-DD-slugified-title.md

ActiveSite generates this filename automatically from the article’s title and scheduled publish date. No manual renaming needed.

Images

When the content provider generates images, ActiveSite downloads them and commits them to your repository in the images folder you configured (e.g. assets/images/posts/). Image references in the article are automatically rewritten to use the correct relative path for your site.

The GitHub commit

Everything lands in your repository as a single clean commit — the markdown post file and all its images together. This keeps your Git history clean and matches what a developer would commit manually.

What you configure, and where

Project settings

check_circle Site name and domain
check_circle Which SSG you're using — sets sensible defaults for paths and front matter
check_circle GitHub connection (repository, branch, posts folder, images folder)
check_circle Publishing schedule (frequency and time)
check_circle Content provider connection
check_circle Voice and tone — description of your site's writing style and audience
check_circle Draft mode on/off and notification email
check_circle AI prompt enhancement on/off

Content type settings

check_circle Name (your label, e.g.

Per-keyword settings (when adding to queue)

check_circle The keyword or article title
check_circle Which content type to use
check_circle Optional custom title (overrides the AI-generated title)
check_circle Optional outline prompt (specific H2 structure)
check_circle Optional reference URLs (sources to draw from)
check_circle Optional specific publish date (overrides the project schedule)

The review queue

If draft mode is enabled, all generated articles appear in the review queue before publishing. The queue shows all pending articles across all your projects in one place.

For each article you can:

article

Preview

Read the full article as it will appear on the site.

check_circle

Approve

Schedules the article for the next available publish slot.

cancel

Reject

Adds a note and sends the article back for re-queuing or discard.

edit

Edit the title

Override the AI-generated title before approving.

Multiple GitHub accounts

ActiveSite supports connecting multiple GitHub accounts. Each project can use a different account and repository — so if you manage sites across different GitHub organizations or personal accounts, each project connects to wherever that site’s repository lives.

security

For security, each project stores its own GitHub token separately. A fine-grained token scoped to the specific repository with Contents read/write access is recommended over a classic personal access token.