Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
f20d95c
feat: reposition homepage to research + consulting (v1)
sidneyswift Jun 2, 2026
e66d338
feat: use real customer logo strip on homepage
sidneyswift Jun 2, 2026
674ed3b
fix: resolve userjourney audit findings (P0-P2)
sidneyswift Jun 2, 2026
d99e320
feat: consolidate research into /research, rebuild pages on design sy…
sidneyswift Jun 2, 2026
0b5f9ec
feat: unify /blog + /research into one content hub at /blog
sidneyswift Jun 2, 2026
ecc37db
fix(blog): de-dupe post titles, modernize body headers, fix dark CTA …
sidneyswift Jun 2, 2026
93230b5
feat(platform): surface the plugins marketplace
sidneyswift Jun 2, 2026
5ffc157
feat(platform): frame marketplace as deeper bundles, link from skills…
sidneyswift Jun 2, 2026
a1c11d0
docs(plan): resolve Part D — plugin=packaging, skill=authoring unit, …
sidneyswift Jun 2, 2026
2479e23
docs(plan): correct routing rule — author location is public/private …
sidneyswift Jun 2, 2026
473e08d
docs(plan): refine to simplest architecture — library + self-containe…
sidneyswift Jun 2, 2026
1e0efba
docs: collapse skills/plugins to single-repo architecture
sidneyswift Jun 2, 2026
eb09567
docs: skills worktree portability plan + packaging landscape
sidneyswift Jun 3, 2026
a9ddab2
docs: note catalog scripts vendored as per-skill closures (94 copies)
sidneyswift Jun 3, 2026
5bc842e
docs: log 14->6 deal skills workflow-stage fold
sidneyswift Jun 3, 2026
3fcc179
fix(marketing): address PR #20 review comments
sidneyswift Jun 3, 2026
8fe189b
docs(marketing): add Music Flamingo skills proposal; update skills co…
sidneyswift Jun 3, 2026
12b02f0
fix(marketing): suppress expected theme hydration warning on <html>
sidneyswift Jun 3, 2026
f2cba26
feat(marketing): problem-led homepage reorder + buyer-focused copy
sidneyswift Jun 3, 2026
0fe318a
feat(marketing): sharper, more specific homepage hero + problem copy
sidneyswift Jun 4, 2026
719a185
refactor(marketing): tighten homepage section headers + merge Build s…
sidneyswift Jun 4, 2026
a0b6175
fix(marketing): white CTA buttons had invisible text in light mode
sidneyswift Jun 4, 2026
5f21aab
docs(marketing): add WEBSITE.md — reference review, site audit, ticke…
sidneyswift Jun 13, 2026
e50e5bf
feat(marketing): P0 + early P1 — stats, logos, newsletter, contact fo…
sidneyswift Jun 13, 2026
c47aa46
feat(marketing): contact forms, credibility blocks, receipts, owned-b…
sidneyswift Jun 13, 2026
0ae7581
feat(marketing): diligence sample, blog beats+bylines, verb stamps, J…
sidneyswift Jun 13, 2026
9af4e05
test(marketing): Playwright e2e suite + WEBSITE.md backlog complete
sidneyswift Jun 13, 2026
d412054
docs(marketing): add DESIGN-AUDIT.md — visual/UI audit vs references
sidneyswift Jun 13, 2026
abd2acc
feat(marketing): design Tier 1 — illustration system, accent color, f…
sidneyswift Jun 13, 2026
0e25040
feat(blog): give each post its own topic-specific cover art
sidneyswift Jun 13, 2026
5a4af6c
fix(blog): never flash empty cover — beat-color placeholder + eager-l…
sidneyswift Jun 14, 2026
3b267c2
feat(ia): restructure into Resources/Products/Consulting + Recoup OS
sidneyswift Jun 14, 2026
dd71728
feat(recoup-os): set price to $99/year
sidneyswift Jun 14, 2026
08cd7ce
chore(ia): clean up stale /platform references after the restructure
sidneyswift Jun 14, 2026
08f59fc
chore: track ARTICLES.md content backlog + skills thumbnail asset
sidneyswift Jun 14, 2026
f83d158
chore: remove historical logs and stale planning docs
sidneyswift Jun 14, 2026
4e2f5ba
chore: track referances/ teardown material (tenex, every, pm-world)
sidneyswift Jun 14, 2026
6e98c46
feat(nav): make the menu a left sidebar drawer (Every-style)
sidneyswift Jun 14, 2026
3013217
feat(recoup-os): rebuild page to mirror the pm-world landing structure
sidneyswift Jun 14, 2026
22dbe2d
copy(recoup-os): hero headline → "A record label in a box."
sidneyswift Jun 14, 2026
3265e37
feat(home): remove hero showpiece image
sidneyswift Jun 14, 2026
45595c5
feat(home): remove hero data-boundary line
sidneyswift Jun 14, 2026
e3c1cc2
feat(home): full-screen cinematic hero with generated background
sidneyswift Jun 14, 2026
17d3c33
feat(header): light header over the homepage hero, dark on scroll
sidneyswift Jun 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"extends": ["next/core-web-vitals"],
"ignorePatterns": [".next/", "node_modules/", "public/"]
}
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,9 @@ yarn-error.log*
# typescript
*.tsbuildinfo
next-env.d.ts

# playwright e2e
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
506 changes: 506 additions & 0 deletions ARTICLES.md

Large diffs are not rendered by default.

163 changes: 163 additions & 0 deletions IA-PLAN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
# Site IA Restructure Plan — Offerings & Navigation

> Status: IMPLEMENTED (2026-06-14). Reorganizes the marketing site around three
> offerings with a "learn → build/use → done-for-you" funnel. Supersedes the
> header-nav rationale in `lib/nav.ts` and the bundled `/platform` page.
>
> Shipped defaults: dropdown-only Products (no `/products` page), `/developers`
> kept standalone, `/blog` URL kept (nav labeled "Resources"), Recoup OS priced
> at $99/year. `/platform` 301-redirects to `/skills`.

---

## 1. The model

**Three offerings, one funnel:**

```
Resources → Products → Consulting
(learn) (build it yourself OR use the hosted version) (have us do it)
```

The "build vs. use" fork lives **inside Products** (this is the real choice a
buyer makes), which is what removes the old "Platform vs. Chat" confusion:

```
Products
├── Skills → install & run it yourself
│ └── Recoup OS → the flagship paid mega-plugin (all skills, one download)
└── Chat → the hosted web app, nothing to install
```

**Value ladder (low commitment → high):**
free individual skills → **Recoup OS** (paid bundle) → **Chat** (hosted) →
**Consulting** (done for you).

---

## 2. Naming decisions (locked)

| Decision | Choice | Why |
|---|---|---|
| Web app name | **Chat** | Concrete, matches `chat.recoupable.com`; "Platform" was umbrella fog. |
| Products umbrella | **Products** | Now unambiguous because Chat is *inside* it, not a sibling. |
| Flagship SKU | **Recoup OS** | One downloadable mega-plugin = all skills bundled (PM-OS analogy). Gets its own page. |
| Content hub | **Resources** | "Learn" tier of the funnel. |
| Retire | **"Platform"** as a label | It was an umbrella, never a single offering. |

---

## 3. Route map

### New / changed routes

| Route | Page | Source today | Action |
|---|---|---|---|
| `/` | Home | `app/page.tsx` | Reframe around 3 offerings + funnel |
| `/resources` | Resources hub | `/blog` | Label as Resources; keep `/blog` working (alias or rename) |
| `/products` | Products overview | — | **New** — splits into Skills + Chat |
| `/skills` | Skills index | half of `/platform` | **New** — open skills, plugins, MCP, API; features Recoup OS |
| `/recoup-os` | Recoup OS product page | — | **New** — flagship paid download, launch-style |
| `/chat` | Chat (web app) landing | half of `/platform` + `appUrl` | **New** — hosted workspace, CTAs into `chat.recoupable.com` |
| `/consulting` | Consulting | `app/consulting/page.tsx` | Keep |

### Migrations / redirects
- `/platform` → split. Redirect `/platform` → `/products` (301). Salvage its
copy: engine/Chat half → `/chat`; skills/plugins/MCP/API half → `/skills`.
- `/developers` → fold into `/skills` (API/MCP section) **or** keep as the deep
API-docs entry linked from `/skills`. (Decision below.)
- `/partners` → keep; link from `/consulting` (partnerships are a consulting
motion). Secondary nav.

### Unchanged (secondary)
`/pricing`, `/trust`, `/audit`, `/diligence`, `/company`, `/company/about`,
`/company/vision`, `/company/recoup-records`, `/privacy-policy`,
`/terms-of-use`.

---

## 4. Navigation spec

Header is now a hamburger menu (all breakpoints). Proposed grouped structure:

```
Resources
Products
├─ Recoup OS (/recoup-os) ← featured
├─ Skills (/skills)
└─ Chat (/chat)
Consulting
Pricing
Trust
```

**Footer** keeps: Company/About/Vision/Recoup Records, Developers/API Docs,
Partners, Audit, Privacy, Terms, socials, newsletter.

`lib/nav.ts` changes from a flat list to a grouped structure (items may have
`children`). Header renders groups as labeled sections inside the menu panel.

---

## 5. Page specs

### `/recoup-os` (flagship, launch-style)
- Hero: what Recoup OS is (all skills, one install), price, primary CTA (Buy /
Download), secondary CTA (see what's inside).
- "What's inside" — the skill categories it bundles.
- How it installs (one command / download) + supported hosts (Claude, Cursor, Codex).
- Proof: we run it on our own label (link `/company/recoup-records`).
- Pricing block + FAQ (JSON-LD).
- Close: mantra + CTA.

### `/skills` (Products → Skills index)
- Lead: the open/free individual skills (current skills strip content).
- **Recoup OS** feature band → links to `/recoup-os`.
- Plugins (individual, à la carte) + marketplace.
- API / MCP developer surface at the bottom → link to `/developers` docs.

### `/chat` (Products → Chat)
- The hosted workspace value prop (no install), screenshots/usage.
- Pull the "one engine / Ask anything" demo content from today's `/platform`.
- Primary CTA → `chat.recoupable.com`; pricing link.

### `/products` (overview, optional)
- Two-card fork: **Skills** (build it yourself) vs **Chat** (use it hosted),
with Recoup OS called out under Skills. Mostly a router; could be a dropdown
only and skip a standalone page (decision below).

### `/resources` (= today's `/blog`)
- No structural change; relabel + ensure nav/footer point here. Beats, per-post
covers, newsletter all stay.

### `/` (home)
- Reframe the "How we work" section to the 3 offerings + funnel.
- Add a Products fork (Skills/Recoup OS vs Chat).
- Keep stats, proof, mantra, objections.

---

## 6. Open decisions (need a call before build)

1. **`/products` page or dropdown-only?** Recommend dropdown-only at first
(Skills + Chat are the real pages); add `/products` overview later if needed.
2. **`/developers`**: keep as standalone API-docs entry, or fully fold into
`/skills`? Recommend keep standalone, link from `/skills`.
3. **`/resources` vs keep `/blog` URL**: rename with redirect, or keep `/blog`
and just relabel nav to "Resources"? Recommend keep `/blog`, relabel nav
(no SEO/link churn).
4. **Recoup OS pricing**: needed for `/recoup-os` + `/pricing`. Placeholder vs real number?

---

## 7. Build phases (atomic tickets)

- **IA-01** `lib/nav.ts` → grouped structure (Products → Recoup OS/Skills/Chat); update Header menu to render groups.
- **IA-02** Create `/recoup-os` page (flagship) + copy in `lib/copy/`.
- **IA-03** Create `/skills` page; migrate skills/plugins/MCP/API copy from `/platform`; feature Recoup OS.
- **IA-04** Create `/chat` page; migrate hosted-app + engine demo copy from `/platform`.
- **IA-05** Redirect `/platform` → `/products` (or `/skills`); update internal links + sitemap + footer.
- **IA-06** Relabel Resources in nav/footer; confirm `/blog` funnel framing.
- **IA-07** Home: reframe "How we work" to 3 offerings + Skills/Chat fork.
- **IA-08** Pricing: add Recoup OS SKU.
- **IA-09** e2e: update nav test (grouped menu), add `/recoup-os`, `/skills`, `/chat` smoke tests; sitemap entries.
Loading