Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
113 commits
Select commit Hold shift + click to select a range
d8c70ca
fix(docs): add /docs redirect to /docs/overview for GitHub Pages
bromso Apr 23, 2026
e5df38d
docs: add research plugin design doc
bromso Apr 23, 2026
c090922
docs: add research plugin implementation plan
bromso Apr 23, 2026
c4948c0
feat(research): scaffold plugin structure with shared resources
bromso Apr 23, 2026
ec35956
docs(research): replace stub pages with full Double Diamond documenta…
bromso Apr 23, 2026
59895ab
feat(research): add discover skill (phase 1)
bromso Apr 23, 2026
f74dfd1
feat(research): add define skill (phase 2)
bromso Apr 23, 2026
103159e
feat(research): add design skill (phase 3)
bromso Apr 23, 2026
fc0132a
feat(research): add deliver skill (phase 4)
bromso Apr 23, 2026
7b04b6e
feat(research): add quality gate hooks
bromso Apr 23, 2026
cf8ceab
feat(research): register plugin in marketplace
bromso Apr 23, 2026
fbab143
docs: add development plugin design doc
bromso Apr 23, 2026
3a153c6
feat(development): scaffold plugin structure with shared resources
bromso Apr 23, 2026
00489bb
feat(development): add plan skill
bromso Apr 23, 2026
37fb932
docs(development): add workflow and utility skill documentation
bromso Apr 23, 2026
3814cf8
feat(development): add build skill
bromso Apr 23, 2026
365d906
feat(development): add test skill
bromso Apr 23, 2026
2c77fdc
feat(development): add debug skill
bromso Apr 23, 2026
ebc70c0
feat(development): add review skill
bromso Apr 23, 2026
fb065b1
feat(development): add ship skill
bromso Apr 23, 2026
43f2fb8
feat(development): register plugin in marketplace
bromso Apr 23, 2026
a9231bf
fix: resolve merge conflict in marketplace.json
bromso Apr 23, 2026
3706117
feat(marketing): scaffold plugin with manifest, hooks, and MCP config
bromso Apr 23, 2026
0918822
feat(marketing): add shared templates — RACE guide, brief, campaign p…
bromso Apr 23, 2026
c501f40
feat(marketing): add Phase 0 Strategy skills (5 skills)
bromso Apr 23, 2026
d4d6455
feat(marketing): add Phase 1 Reach skills (9 skills)
bromso Apr 23, 2026
26e1c9e
feat(marketing): add Phase 2 Act skills (7 skills)
bromso Apr 23, 2026
02ba963
feat(marketing): add Phase 3 Convert skills (7 skills)
bromso Apr 23, 2026
30b9364
feat(marketing): add Phase 4 Engage skills (5 skills)
bromso Apr 23, 2026
bbe5269
feat(marketing): add utility skills (4 skills)
bromso Apr 23, 2026
1f3d13c
feat(marketing): add documentation pages for all phases and utilities
bromso Apr 23, 2026
2db0527
feat(branding): scaffold plugin structure with shared resources
bromso Apr 23, 2026
d49ba4c
docs(branding): add brand creation and audit documentation
bromso Apr 23, 2026
0b34ad3
feat(branding): add discover skill (phase 1)
bromso Apr 23, 2026
a171984
feat(branding): add strategy skill (phase 2)
bromso Apr 23, 2026
a30cf48
feat(branding): add verbal skill (phase 3)
bromso Apr 23, 2026
68c526f
feat(branding): add visual skill (phase 4)
bromso Apr 23, 2026
d0ea0e3
feat(branding): add guidelines skill (phase 5)
bromso Apr 23, 2026
f2cbd32
feat(branding): add audit skill (utility)
bromso Apr 23, 2026
1afc88e
feat(branding): register plugin in marketplace
bromso Apr 23, 2026
3a74db5
fix(docs): escape angle bracket in branding audit page
bromso Apr 23, 2026
20c0781
fix: resolve merge conflict in marketplace.json
bromso Apr 23, 2026
34e0dc5
feat(accessibility): scaffold plugin structure with shared resources
bromso Apr 23, 2026
ff9b40a
docs(accessibility): add WCAG-EM audit workflow documentation
bromso Apr 23, 2026
7377a5c
feat(accessibility): add scope skill (phase 1)
bromso Apr 23, 2026
e9dc3eb
feat(accessibility): add evaluate skill (phase 2)
bromso Apr 23, 2026
ed6ff17
feat(accessibility): add report skill (phase 3)
bromso Apr 23, 2026
c73d3c0
feat(accessibility): add remediate skill (phase 4)
bromso Apr 23, 2026
4a03dea
feat(accessibility): add retest skill (phase 5)
bromso Apr 23, 2026
a12a3c4
feat(accessibility): add checklist skill (utility)
bromso Apr 23, 2026
caed322
feat(accessibility): register plugin in marketplace
bromso Apr 23, 2026
46dceee
fix: resolve merge conflict in marketplace.json
bromso Apr 23, 2026
67e539f
feat(pm): scaffold plugin with manifest, hooks, and MCP config
bromso Apr 23, 2026
9590e40
feat(pm): add shared templates — Scrum guide, charter, user story, re…
bromso Apr 23, 2026
9ae7fb7
feat(pm): add Phase 0 Initiate skills (5 skills)
bromso Apr 23, 2026
be4b476
feat(pm): add Phase 1 Plan skills (7 skills)
bromso Apr 23, 2026
8636630
feat(pm): add Phase 2 Sprint skills (5 skills)
bromso Apr 23, 2026
c3666b5
feat(pm): add Phase 3 Review skills (5 skills)
bromso Apr 23, 2026
0c32402
feat(pm): add Phase 4 Improve skills (5 skills)
bromso Apr 23, 2026
2b02eb4
feat(pm): add utility skills (5 skills)
bromso Apr 23, 2026
0aebc2a
feat(pm): add documentation pages for all phases and utilities
bromso Apr 23, 2026
ae102c9
feat(coaching): scaffold plugin structure with shared resources
bromso Apr 23, 2026
bf028c5
docs(coaching): add domain-specific mentorship documentation
bromso Apr 23, 2026
7ca4582
feat(coaching): add ux coaching skill
bromso Apr 23, 2026
a20fc04
feat(coaching): add code coaching skill
bromso Apr 23, 2026
6cb23b3
feat(coaching): add copy coaching skill
bromso Apr 23, 2026
4b42f6a
feat(coaching): add a11y coaching skill
bromso Apr 23, 2026
ac8d95c
feat(coaching): add strategy coaching skill
bromso Apr 23, 2026
6c0b639
feat(coaching): register plugin in marketplace
bromso Apr 23, 2026
1c371f7
fix: resolve merge conflict in marketplace.json
bromso Apr 23, 2026
340615a
feat(legal): scaffold plugin with manifest, hooks, and MCP config
bromso Apr 23, 2026
3ca421d
feat(leadership): scaffold plugin structure with shared resources
bromso Apr 23, 2026
54a0d70
docs(leadership): add leadership development and management tools doc…
bromso Apr 23, 2026
437e52d
feat(legal): add shared templates — lifecycle guide, contract, compli…
bromso Apr 23, 2026
bf4edce
feat(leadership): add 5 phase skills (assess, vision, build, develop,…
bromso Apr 23, 2026
67fabb7
feat(leadership): add 7 utility skills (one-on-one, feedback, decisio…
bromso Apr 23, 2026
9c740c0
feat(leadership): register plugin in marketplace
bromso Apr 23, 2026
e292b7a
feat(legal): add Phase 0 Assess skills (5 skills)
bromso Apr 23, 2026
70994da
fix: resolve merge conflict in marketplace.json
bromso Apr 23, 2026
79a795a
feat(legal): add Phase 1 Draft skills (8 skills)
bromso Apr 23, 2026
4102acd
feat(legal): add Phase 2 Review skills (6 skills)
bromso Apr 23, 2026
164560c
feat(legal): add Phase 3 Comply skills (7 skills)
bromso Apr 23, 2026
903ac34
feat(legal): add Phase 4 Govern skills (5 skills)
bromso Apr 23, 2026
e50ec30
feat(legal): add utility skills (4 skills)
bromso Apr 23, 2026
675bd0e
feat(legal): add documentation pages for all phases and utilities
bromso Apr 23, 2026
488a508
docs: add design and implementation plans for marketing, PM, and lega…
bromso Apr 23, 2026
449b8af
docs: update artifact paths to .metapowers/ directory
bromso Apr 23, 2026
d0f8b61
refactor: migrate all artifact paths to unified .metapowers/ directory
bromso Apr 23, 2026
e3c3e48
fix: update remaining cross-domain artifact paths to .metapowers/
bromso Apr 23, 2026
876ecd6
fix: resolve merge conflicts keeping .metapowers/ paths
bromso Apr 23, 2026
ce029b1
fix(docs): add legal domain to sidebar navigation
bromso Apr 23, 2026
e443669
feat(docs): add storage pages for design, research, and marketing
bromso Apr 23, 2026
fdb8153
feat(docs): add storage pages for branding, project-management, and l…
bromso Apr 23, 2026
bd7d1bb
docs: add .metapowers unified storage design and plan docs
bromso Apr 23, 2026
10dca05
feat(docs): add storage pages for coaching, leadership, and accessibi…
bromso Apr 23, 2026
63d404d
feat(docs): add storage page for development
bromso Apr 23, 2026
9d33597
docs: split artifacts and storage into separate pages across all domains
bromso Apr 23, 2026
a78297d
fix: resolve merge conflicts keeping split artifacts/storage pages
bromso Apr 23, 2026
7d7734d
feat(docs): add examples pages for design, research, and marketing
bromso Apr 23, 2026
c1f012a
feat(docs): add examples pages for branding, project-management, and …
bromso Apr 23, 2026
28968d3
docs(overview): add content for What is Metapowers, Comparisons, Guid…
bromso Apr 23, 2026
43fe393
fix: resolve merge conflicts
bromso Apr 23, 2026
bdc5445
feat(docs): add examples pages for coaching, leadership, and accessib…
bromso Apr 23, 2026
c4828eb
feat(docs): add examples page for development
bromso Apr 23, 2026
55e96e5
docs(overview): add meta-skills documentation (status, init, report)
bromso Apr 23, 2026
9affbd5
feat(metapowers): scaffold meta plugin with domain registry
bromso Apr 23, 2026
4909d5e
feat(metapowers): add status skill
bromso Apr 23, 2026
6679d1e
feat(metapowers): add init skill
bromso Apr 23, 2026
84c5c8d
feat(metapowers): add report skill
bromso Apr 23, 2026
1f1c38a
feat(metapowers): register meta plugin in marketplace
bromso Apr 23, 2026
1960cf6
Merge remote-tracking branch 'origin/main' into feat/fumadocs-app
bromso Apr 23, 2026
dc9f3b3
feat(docs): redesign landing page with domain cards, stats, and how-i…
bromso Apr 23, 2026
ef93c63
Merge remote-tracking branch 'origin/main' into feat/fumadocs-app
bromso Apr 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
359 changes: 338 additions & 21 deletions apps/docs/app/(home)/page.tsx
Original file line number Diff line number Diff line change
@@ -1,29 +1,346 @@
import Link from "next/link";
import {
Palette,
Search,
Megaphone,
Sparkles,
Kanban,
Scale,
GraduationCap,
Crown,
Eye,
Code,
Terminal,
FolderOpen,
Zap,
ArrowRight,
} from "lucide-react";
import type { LucideIcon } from "lucide-react";

export default function HomePage() {
function GitHubIcon({ className }: { className?: string }) {
return (
<svg
viewBox="0 0 24 24"
fill="currentColor"
className={className}
aria-hidden="true"
>
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z" />
</svg>
);
}

interface Domain {
name: string;
icon: LucideIcon;
methodology: string;
skills: number;
description: string;
href: string;
}

const domains: Domain[] = [
{
name: "Design",
icon: Palette,
methodology: "Design Thinking",
skills: 9,
description:
"Five-phase design thinking process for component design, writing to Figma canvas via MCP.",
href: "/docs/design",
},
{
name: "Research",
icon: Search,
methodology: "Double Diamond",
skills: 4,
description:
"Structured discovery and validation through divergent and convergent thinking.",
href: "/docs/research",
},
{
name: "Development",
icon: Code,
methodology: "Dev Workflow",
skills: 6,
description:
"Plan, build, test, debug, review, and ship with structured development workflows.",
href: "/docs/development",
},
{
name: "Accessibility",
icon: Eye,
methodology: "WCAG-EM",
skills: 6,
description:
"WCAG 2.1 audit methodology — scope, evaluate, report, remediate, and retest.",
href: "/docs/accessibility",
},
{
name: "Marketing",
icon: Megaphone,
methodology: "RACE Framework",
skills: 37,
description:
"Full growth marketing lifecycle — strategy, reach, act, convert, and engage.",
href: "/docs/marketing",
},
{
name: "Branding",
icon: Sparkles,
methodology: "Brand Lifecycle",
skills: 6,
description:
"Brand creation from discovery to guidelines — verbal identity, visual system, and assets.",
href: "/docs/branding",
},
{
name: "Project Management",
icon: Kanban,
methodology: "Scrum",
skills: 32,
description:
"Sprint-based project management — initiate, plan, sprint, review, and improve.",
href: "/docs/project-management",
},
{
name: "Legal",
icon: Scale,
methodology: "Legal Lifecycle",
skills: 35,
description:
"Full legal operations — assess, draft, review, comply, and govern.",
href: "/docs/legal",
},
{
name: "Coaching",
icon: GraduationCap,
methodology: "Domain Coaching",
skills: 5,
description:
"Expert feedback across UX, code, copy, accessibility, and strategy disciplines.",
href: "/docs/coaching",
},
{
name: "Leadership",
icon: Crown,
methodology: "Leadership Dev",
skills: 12,
description:
"Build and lead teams — assess, vision, build, develop, sustain, plus day-to-day tools.",
href: "/docs/leadership",
},
];

const stats = [
{ value: "10", label: "Domains" },
{ value: "152+", label: "Skills" },
{ value: "10", label: "Methodologies" },
{ value: "MIT", label: "Licensed" },
];

const steps = [
{
number: "01",
title: "Install",
command: "claude install bromso/metapowers",
description: "Add all domains to Claude Code in one command.",
},
{
number: "02",
title: "Run a skill",
command: "/design:empathize DatePicker",
description: "Each skill guides you through a proven methodology.",
},
{
number: "03",
title: "Get artifacts",
command: ".metapowers/design/DatePicker/",
description: "Structured outputs accumulate across phases.",
},
];

function DomainCard({ domain }: { domain: Domain }) {
const Icon = domain.icon;
return (
<main className="flex flex-1 flex-col items-center justify-center px-4 text-center">
<h1 className="mb-4 text-4xl font-bold">Metapowers</h1>
<p className="mb-8 max-w-lg text-lg text-fd-muted-foreground">
Metaprompting plugins for Claude Code — structured workflows for design,
coding, research, and more.
<Link
href={domain.href}
className="group relative flex flex-col rounded-xl border border-fd-border bg-fd-card p-6 transition-all duration-200 hover:border-fd-primary/30 hover:shadow-lg hover:shadow-fd-primary/5"
>
<div className="mb-4 flex items-center gap-3">
<div className="flex h-10 w-10 items-center justify-center rounded-lg bg-fd-primary/10">
<Icon className="h-5 w-5 text-fd-primary" />
</div>
<div>
<h3 className="font-semibold text-fd-foreground">{domain.name}</h3>
<p className="text-xs text-fd-muted-foreground">
{domain.methodology}
</p>
</div>
</div>
<p className="mb-4 flex-1 text-sm leading-relaxed text-fd-muted-foreground">
{domain.description}
</p>
<div className="flex gap-4">
<Link
href="/docs/overview"
className="rounded-lg bg-fd-primary px-6 py-3 text-sm font-medium text-fd-primary-foreground transition-colors hover:bg-fd-primary/90"
>
Get Started
</Link>
<a
href="https://github.com/bromso/metapowers"
className="rounded-lg border border-fd-border px-6 py-3 text-sm font-medium transition-colors hover:bg-fd-accent"
target="_blank"
rel="noopener noreferrer"
>
GitHub
</a>
<div className="flex items-center justify-between">
<span className="rounded-md bg-fd-secondary px-2.5 py-1 text-xs font-medium text-fd-secondary-foreground">
{domain.skills} skills
</span>
<ArrowRight className="h-4 w-4 text-fd-muted-foreground transition-transform duration-200 group-hover:translate-x-1 group-hover:text-fd-primary" />
</div>
</Link>
);
}

export default function HomePage() {
return (
<main className="flex flex-col">
{/* Hero */}
<section className="flex flex-col items-center px-6 pb-16 pt-24 text-center md:pb-24 md:pt-32">
<div className="mb-6 inline-flex items-center gap-2 rounded-full border border-fd-border bg-fd-secondary/50 px-4 py-1.5 text-sm text-fd-muted-foreground">
<Zap className="h-3.5 w-3.5" />
<span>Claude Code plugins for structured workflows</span>
</div>
<h1 className="mb-6 max-w-3xl text-5xl font-bold tracking-tight text-fd-foreground md:text-6xl lg:text-7xl">
Metapowers
</h1>
<p className="mb-10 max-w-2xl text-lg leading-relaxed text-fd-muted-foreground md:text-xl">
Structured workflows for every discipline — from design to legal.
Claude Code plugins powered by proven methodologies.
</p>
<div className="flex flex-col gap-3 sm:flex-row sm:gap-4">
<Link
href="/docs/overview"
className="inline-flex items-center justify-center gap-2 rounded-lg bg-fd-primary px-8 py-3 text-sm font-medium text-fd-primary-foreground transition-colors hover:bg-fd-primary/90"
>
Get Started
<ArrowRight className="h-4 w-4" />
</Link>
<a
href="https://github.com/bromso/metapowers"
className="inline-flex items-center justify-center gap-2 rounded-lg border border-fd-border px-8 py-3 text-sm font-medium text-fd-foreground transition-colors hover:bg-fd-accent"
target="_blank"
rel="noopener noreferrer"
>
<GitHubIcon className="h-4 w-4" />
GitHub
</a>
</div>
</section>

{/* Stats */}
<section className="border-y border-fd-border bg-fd-card/50">
<div className="mx-auto grid max-w-4xl grid-cols-2 divide-x divide-fd-border md:grid-cols-4">
{stats.map((stat) => (
<div
key={stat.label}
className="flex flex-col items-center gap-1 px-6 py-8"
>
<span className="text-2xl font-bold text-fd-foreground md:text-3xl">
{stat.value}
</span>
<span className="text-sm text-fd-muted-foreground">
{stat.label}
</span>
</div>
))}
</div>
</section>

{/* Domain Cards */}
<section className="mx-auto w-full max-w-6xl px-6 py-16 md:py-24">
<div className="mb-12 text-center">
<h2 className="mb-3 text-3xl font-bold text-fd-foreground md:text-4xl">
Every discipline, one toolkit
</h2>
<p className="mx-auto max-w-2xl text-fd-muted-foreground">
Each domain implements an industry-standard methodology as a set of
slash commands. Run a skill, follow the process, get structured
artifacts.
</p>
</div>
<div className="grid gap-4 sm:grid-cols-2 lg:grid-cols-3">
{domains.map((domain) => (
<DomainCard key={domain.name} domain={domain} />
))}
</div>
</section>

{/* How It Works */}
<section className="border-y border-fd-border bg-fd-card/50">
<div className="mx-auto max-w-5xl px-6 py-16 md:py-24">
<div className="mb-12 text-center">
<h2 className="mb-3 text-3xl font-bold text-fd-foreground md:text-4xl">
How it works
</h2>
<p className="mx-auto max-w-xl text-fd-muted-foreground">
Install once, use everywhere. Each skill guides you through a
proven methodology step by step.
</p>
</div>
<div className="grid gap-8 md:grid-cols-3">
{steps.map((step) => (
<div key={step.number} className="flex flex-col">
<div className="mb-4 flex items-center gap-3">
<span className="flex h-8 w-8 items-center justify-center rounded-lg bg-fd-primary/10 text-sm font-bold text-fd-primary">
{step.number}
</span>
<h3 className="font-semibold text-fd-foreground">
{step.title}
</h3>
</div>
<div className="mb-3 rounded-lg border border-fd-border bg-fd-background p-4">
<div className="flex items-center gap-2 text-xs text-fd-muted-foreground">
{step.number === "03" ? (
<FolderOpen className="h-3.5 w-3.5" />
) : (
<Terminal className="h-3.5 w-3.5" />
)}
<span>
{step.number === "03" ? "output" : "terminal"}
</span>
</div>
<code className="mt-2 block text-sm text-fd-foreground">
{step.number !== "03" && (
<span className="text-fd-muted-foreground">$ </span>
)}
{step.command}
</code>
</div>
<p className="text-sm text-fd-muted-foreground">
{step.description}
</p>
</div>
))}
</div>
</div>
</section>

{/* Footer */}
<footer className="mx-auto flex w-full max-w-6xl flex-col items-center gap-4 px-6 py-12 text-center text-sm text-fd-muted-foreground sm:flex-row sm:justify-between sm:text-left">
<p>
Built by{" "}
<a
href="https://github.com/bromso"
className="font-medium text-fd-foreground hover:text-fd-primary"
target="_blank"
rel="noopener noreferrer"
>
Jonas Broms
</a>
</p>
<div className="flex items-center gap-4">
<span>MIT License</span>
<a
href="https://github.com/bromso/metapowers"
className="inline-flex items-center gap-1.5 font-medium text-fd-foreground hover:text-fd-primary"
target="_blank"
rel="noopener noreferrer"
>
<GitHubIcon className="h-4 w-4" />
Source
</a>
</div>
</footer>
</main>
);
}
2 changes: 1 addition & 1 deletion apps/docs/app/docs/[[...slug]]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export default async function Page(props: PageProps) {
<DocsBody>
<MDX
components={getMDXComponents({
a: createRelativeLink(source, page),
a: createRelativeLink(source as any, page),
})}
/>
</DocsBody>
Expand Down
1 change: 1 addition & 0 deletions apps/docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"@types/node": "25.6.0",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"lucide-react": "^1.9.0",
"tailwindcss": "^4.0.0",
"typescript": "^5.7.0"
}
Expand Down
Loading
Loading