Skip to content

Add drafts staging area for work-in-progress posts#11

Merged
rdavid1099 merged 1 commit into
mainfrom
chore-add-drafts
Jun 5, 2026
Merged

Add drafts staging area for work-in-progress posts#11
rdavid1099 merged 1 commit into
mainfrom
chore-add-drafts

Conversation

@rdavid1099

Copy link
Copy Markdown
Contributor

Problem

There was no safe place to keep in-progress drafts locally without risking them leaking into the build output or getting committed to the repo accidentally.

Solution

Adds _posts/drafts/ as a gitignored, build-skipped staging area. A new EXCLUDED_THEME_DIRS set in build.js tells listThemeDirs() to ignore the folder entirely, so anything sitting in drafts never renders, never appears on the homepage, and never generates a public /drafts/ directory on the site.

The workflow is: drop a draft into _posts/drafts/ to work on it locally, then move it into a real _posts/<theme>/ folder when it's ready to publish. At that point it builds normally with no extra steps.

CLAUDE.md is updated to document the convention alongside the rest of the _posts/ architecture notes.

Notes

The exclusion is name-based ("drafts"), not path-based, so a theme folder literally named drafts would also be excluded. That's an acceptable tradeoff given the convention is now documented.

# Problem

There was no safe place to keep in-progress drafts locally without risking them leaking into the build output or getting committed to the repo accidentally.

# Solution

Adds `_posts/drafts/` as a gitignored, build-skipped staging area. A new `EXCLUDED_THEME_DIRS` set in `build.js` tells `listThemeDirs()` to ignore the folder entirely, so anything sitting in drafts never renders, never appears on the homepage, and never generates a public `/drafts/` directory on the site.

The workflow is: drop a draft into `_posts/drafts/` to work on it locally, then move it into a real `_posts/<theme>/` folder when it's ready to publish. At that point it builds normally with no extra steps.

CLAUDE.md is updated to document the convention alongside the rest of the `_posts/` architecture notes.

# Notes

The exclusion is name-based (`"drafts"`), not path-based, so a theme folder literally named `drafts` would also be excluded. That's an acceptable tradeoff given the convention is now documented.
@rdavid1099 rdavid1099 merged commit c08d5b7 into main Jun 5, 2026
1 check passed
@rdavid1099 rdavid1099 deleted the chore-add-drafts branch June 5, 2026 22:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant