diff --git a/TASKS.md b/TASKS.md index 014c3e5..ecef832 100644 --- a/TASKS.md +++ b/TASKS.md @@ -100,9 +100,9 @@ Propose TASK update - [x] T211 Create Home Page - [x] T212 Create Why Page -- [ ] T213 Publish Manifesto v1 -- [ ] T214 Publish Specification v1 -- [ ] T215 Publish Workflow v1 +- [x] T213 Publish Manifesto v1 +- [x] T214 Publish Specification v1 +- [x] T215 Publish Workflow v1 --- @@ -110,13 +110,13 @@ Propose TASK update ## RESOURCES -- [ ] T316 Create Resources Index -- [ ] T317 Publish Templates -- [ ] T318 Publish Example Documents -- [ ] T319 Publish Long Context Examples -- [ ] T320 Publish Repository Examples -- [ ] T321 Publish Planning Examples -- [ ] T322 Publish FAQ +- [x] T316 Create Resources Index +- [x] T317 Publish Templates +- [x] T318 Publish Example Documents +- [x] T319 Publish Long Context Examples +- [x] T320 Publish Repository Examples +- [x] T321 Publish Planning Examples +- [x] T322 Publish FAQ --- diff --git a/src/content/resources/example-documents.mdx b/src/content/resources/example-documents.mdx new file mode 100644 index 0000000..74ec597 --- /dev/null +++ b/src/content/resources/example-documents.mdx @@ -0,0 +1,80 @@ +--- +title: 'Example Documents' +version: 'v1' +description: 'Concrete examples of REPL Works document outputs.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Example Documents + +## Sample IDEAS.md + +# IDEAS + +## Idea Summary + +- Build a project memory system for AI development. + +## Problem + +- Teams lose context between sessions. +- Architecture drifts when knowledge is only in conversation. + +## Key Benefits + +- Durable project memory. +- Reusable documentation. + +## Next Steps + +- Define content collections. +- Create the first manifesto and workflow. + +## Sample ARCHITECTURE.md + +# ARCHITECTURE + +## PROJECT + +REPL Works Website + +## PURPOSE + +Documentation platform for REPL Works. + +## PRODUCT TYPE + +Documentation Platform + +## USER ACTIONS + +- Read +- Navigate +- Learn +- Apply + +## PRIMARY JOURNEY + +Home → Why → Manifesto → Specification → Workflow → Resources → Showcase → GitHub + +## Sample TASKS.md + +# TASKS + +## FOUNDATION + +- Initialize Astro project. +- Configure Tailwind. +- Enable content collections. + +## CORE CONTENT + +- Publish Manifesto v1. +- Publish Specification v1. +- Publish Workflow v1. + +## NEXT STEPS + +- Create Resources index. +- Publish templates. +- Publish example documents. diff --git a/src/content/resources/faq.mdx b/src/content/resources/faq.mdx new file mode 100644 index 0000000..099a565 --- /dev/null +++ b/src/content/resources/faq.mdx @@ -0,0 +1,32 @@ +--- +title: 'FAQ' +version: 'v1' +description: 'Key questions about REPL Works and its content model.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# FAQ + +## What is REPL Works? + +REPL Works is a project memory standard for AI development. It organizes documentation, tasks, and architecture so projects survive sessions and model changes. + +## Why Git as memory? + +Git provides durable history, clear change context, and a shared source of truth. It makes project memory explicit and versioned outside the model. + +## Why separate AGENTS / ARCHITECTURE / TASKS? + +Separation keeps responsibility clear: + +- AGENTS define interaction and automation, +- ARCHITECTURE defines project intent, +- TASKS define execution steps. + +## Why LONG_CONTEXT.md exists? + +LONG_CONTEXT.md captures the essential state needed to resume a project. It lets a new session bootstrap the model without losing history. + +## Why models are replaceable? + +Models should be tools, not project owners. REPL Works stores project memory externally so the project is not locked to any single model. diff --git a/src/content/resources/index.mdx b/src/content/resources/index.mdx new file mode 100644 index 0000000..6ec3cdf --- /dev/null +++ b/src/content/resources/index.mdx @@ -0,0 +1,26 @@ +--- +title: 'Resources' +version: 'v1' +description: 'Entry point for REPL Works Resources.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Resources + +The REPL Works Resources section organizes practical support materials for project memory. + +- **Templates** — reusable document structures for consistent project artifacts. +- **Example Documents** — concrete sample files for common REPL Works outputs. +- **Long Context Examples** — session recovery summaries for different project sizes. +- **Repository Examples** — Git-first repository layouts aligned to REPL Works. +- **Planning Examples** — planning runtime outputs that separate strategy from work. +- **FAQ** — concise answers to core REPL Works concepts. + +## Navigate + +- [Templates](/resources/templates) +- [Example Documents](/resources/example-documents) +- [Long Context Examples](/resources/long-context-examples) +- [Repository Examples](/resources/repository-examples) +- [Planning Examples](/resources/planning-examples) +- [FAQ](/resources/faq) diff --git a/src/content/resources/long-context-examples.mdx b/src/content/resources/long-context-examples.mdx new file mode 100644 index 0000000..ce988e3 --- /dev/null +++ b/src/content/resources/long-context-examples.mdx @@ -0,0 +1,41 @@ +--- +title: 'Long Context Examples' +version: 'v1' +description: 'Session recovery examples for REPL Works projects.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Long Context Examples + +## Small Project Recovery + +When resuming a small project, provide a concise summary of intent, recent decisions, and next actions. + +- Project: launch a documentation site. +- Current state: Astro site scaffolded, manifesto published. +- Goal: publish Resources and Showcase sections. +- Next actions: add resources content and verify build. + +> Use this summary at the start of a new session to bootstrap the model. + +## Mid-Scale Project Recovery + +Capture context across several documents and progress checkpoints. + +- Project scope: documentation platform with content collections and publishing workflow. +- Completed: home, why, manifesto, specification, workflow. +- In progress: resources layer and showcase examples. +- Constraints: static MDX only, no runtime logic. +- Key decisions: Git-first memory, content-first model, modular task phases. + +## Large-Scale Compressed Context Format + +Provide a compressed, high-level snapshot for large projects. + +- Project: REPL Works website. +- Status: core content published, resources publishing phase active. +- Architecture: content collections, MDX, static site. +- Policies: one prompt one task, task-per-commit. +- Immediate next task: create resources index and resource documents. + +> This format is designed for fast AI session bootstrapping and recovery. diff --git a/src/content/resources/planning-examples.mdx b/src/content/resources/planning-examples.mdx new file mode 100644 index 0000000..78962c8 --- /dev/null +++ b/src/content/resources/planning-examples.mdx @@ -0,0 +1,28 @@ +--- +title: 'Planning Examples' +version: 'v1' +description: 'Examples of planning runtime outputs for REPL Works.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Planning Examples + +## Idea Refinement Flow + +1. Input: broad concept or problem statement. +2. Output: clarified idea summary and benefits. +3. Next step: convert idea into architecture or tasks. + +## Architecture Decision Flow + +1. Input: project purpose and user actions. +2. Output: architecture sections and product boundaries. +3. Next step: publish ARCHITECTURE.md and align content collections. + +## Task Breakdown Flow + +1. Input: defined project goal. +2. Output: ordered tasks with completion rules. +3. Next step: execute the next task and keep tasks granular. + +This separation keeps planning distinct from implementation. diff --git a/src/content/resources/repository-examples.mdx b/src/content/resources/repository-examples.mdx new file mode 100644 index 0000000..4532f5a --- /dev/null +++ b/src/content/resources/repository-examples.mdx @@ -0,0 +1,68 @@ +--- +title: 'Repository Examples' +version: 'v1' +description: 'Example repository structures for REPL Works.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Repository Examples + +## Minimal Repo + +```text +src/ + content/ + layouts/ + pages/ + lib/ +package.json +astro.config.mjs +TASKS.md +ARCHITECTURE.md +``` + +## Full Production Repo + +```text +src/ + assets/ + components/ + content/ + manifesto/ + specification/ + workflow/ + resources/ + showcase/ + layouts/ + pages/ + styles/ +package.json +tsconfig.json +astro.config.mjs +README.md +TASKS.md +ARCHITECTURE.md +``` + +## Multi-Service Repo (Conceptual) + +```text +services/ + web/ + src/ + package.json + TASKS.md + ARCHITECTURE.md + docs/ + src/ + package.json + ARCHITECTURE.md +packages/ + ui/ + shared/ +README.md +TASKS.md +ARCHITECTURE.md +``` + +This structure keeps documentation and code aligned under Git-first project memory. diff --git a/src/content/resources/templates.mdx b/src/content/resources/templates.mdx new file mode 100644 index 0000000..57edda6 --- /dev/null +++ b/src/content/resources/templates.mdx @@ -0,0 +1,96 @@ +--- +title: 'Templates' +version: 'v1' +description: 'Reusable REPL Works document templates.' +publishedAt: '2026-06-07T00:00:00Z' +--- + +# Templates + +## IDEAS.md Template + +```md +# IDEAS + +## Idea Summary + +- One sentence description. + +## Problem + +- Why this matters. + +## Key Benefits + +- Benefit 1 +- Benefit 2 + +## Next Steps + +- Action 1 +- Action 2 +``` + +## ARCHITECTURE.md Template + +```md +# ARCHITECTURE + +## Purpose + +- High-level goal of the project. + +## Product Type + +- What this project is and is not. + +## User Actions + +- Primary user actions. + +## Primary Journey + +- User flow through the product. +``` + +## TASKS.md Template + +```md +# TASKS + +## Current Position + +- What is already done. + +## Next Priorities + +- Task 1 +- Task 2 + +## Work Rules + +- One Prompt = One Task +- One Task = One Commit +``` + +## PITCHING_SCRIPT.md Template + +```md +# PITCHING SCRIPT + +## Opening + +- One sentence hook. + +## Problem + +- What is broken today. + +## Solution + +- What REPL Works delivers. + +## Call to Action + +- What the listener should do next. +``` diff --git a/src/pages/[collection]/[slug].astro b/src/pages/[collection]/[slug].astro index 243f753..7cc3250 100644 --- a/src/pages/[collection]/[slug].astro +++ b/src/pages/[collection]/[slug].astro @@ -5,7 +5,7 @@ import { collectionTitles, isContentCollection, } from '../../lib/site'; -import { getCollection, getEntry } from 'astro:content'; +import { getCollection, getEntry, render } from 'astro:content'; import DocumentLayout from '../../layouts/DocumentLayout.astro'; export async function getStaticPaths() { @@ -35,6 +35,8 @@ if (!entry) { } const rendered = entry.rendered ?? null; +const contentResult = !rendered ? await render(entry) : null; +const Content = contentResult?.Content ?? null; const metadata = entry.data ?? {}; --- @@ -46,6 +48,10 @@ const metadata = entry.data ?? {}; { rendered ? (
+ ) : Content ? ( +
+ +
) : (

This document is available once the collection publish content.

diff --git a/src/pages/[collection]/index.astro b/src/pages/[collection]/index.astro index f5b1847..95cac35 100644 --- a/src/pages/[collection]/index.astro +++ b/src/pages/[collection]/index.astro @@ -21,7 +21,8 @@ const collectionTitle = collectionTitles[collection]; const collectionDescription = collectionDescriptions[collection]; const entries = await getCollection(collection); -const entry = entries[0] ?? null; +const indexEntry = entries.find((item) => item.id === 'index') ?? null; +const entry = indexEntry ?? entries[0] ?? null; const rendered = entry?.rendered ?? null; const contentResult = entry && !rendered ? await render(entry) : null; const Content = contentResult?.Content ?? null;