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:
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:
Standard informational articles, 1,500 words, friendly tone.
Amazon product review format, condensed structure.
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
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.
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:
Extra section prompt
Shapes what gets covered in each H2 section.
Extra introduction prompt
Shapes how the article opens.
Extra outline prompt
Suggests the H2 structure for the article.
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
Content type settings
Per-keyword settings (when adding to queue)
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:
Preview
Read the full article as it will appear on the site.
Approve
Schedules the article for the next available publish slot.
Reject
Adds a note and sends the article back for re-queuing or discard.
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.
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.