Skip to main content
Glama
astatineRS
by astatineRS
README.md
# Nexoraa

**The open AI-workforce platform.** Map the 137 AI jobs hiding in your business across 7
departments, deploy them as runnable skills in dependency order, and own everything.

A full, sellable SaaS — premium marketing site, an animated interactive **Nexus** map, a
gated **skill library** (36 runnable skills covering all 137 jobs), **pricing** with Stripe
checkout, **auth**, and a personal **rollout dashboard** — plus the open engine (skills +
audit CLI + MCP server) it's built on.

Live surfaces: `/` landing · `/explore` interactive map · `/skills` + `/skills/[...]` gated
library · `/pricing` · `/signin` `/signup` · `/dashboard`.

## Stack
- **Next.js 16** (App Router, RSC) · **React 19** · **TypeScript** (strict)
- **Tailwind CSS v4** design tokens · **Framer Motion** (`motion`) for all animation
- **Stripe** subscriptions (key-gated) · **jose** JWT sessions · PBKDF2 password hashing
- Content-driven: reads `content/skilltree.json` (the taxonomy) and `content/skills/*.md`
  (the skill files) at request time. The open engine lives in `content/engine/`.

## Quick start
```bash
pnpm install
pnpm dev            # http://localhost:3000  (Turbopack)
pnpm build && pnpm start
```

## Configuration (all optional — the app runs open without any of these)
| Env var | Enables |
|---|---|
| `STRIPE_SECRET_KEY` | Live checkout on `/pricing` (otherwise a clear "not configured" notice; the open core stays free) |
| `AUTH_SECRET` | Signing key for session JWTs (a dev default is used otherwise) |

Auth is demo-grade (file-backed user store at `content/.users.json`, git-ignored). Swap
`src/lib/users.ts` for a real database in production.

## Architecture
```
src/app/            routes (landing, explore, skills, pricing, dashboard, auth, /api/*)
src/components/      map (Nexus + explore), marketing, skills, pricing, dashboard, auth, ui, site
src/lib/            data + skills loaders, session, entitlement, stripe, map model
content/
  skilltree.json    7 departments · 34 functions · 137 jobs (tools + autonomy level)
  skills/           36 SKILL.md files (Foundation + 34 function skills), MIT
  engine/           the Python engine: audit CLI, KB scaffolder, LLM runner, MCP server
```

### Gating
Free previews every skill (~40% of the file) and the whole map. **Pro/Team** unlock the full
skill files. Entitlement is a single source of truth in `src/lib/entitlement.ts`, driven by a
signed session cookie; Stripe checkout upgrades the plan on success.

### The Nexus map
`src/components/map/nexus.tsx` — an animated radial SVG: a central Company Brain hub with the
7 departments orbiting; selecting a department fans its functions out with staggered,
spring-eased motion. Powers both the hero (auto-cycling) and `/explore` (interactive with a
live detail panel, search, deep-links, and autonomy legend).

## The open engine (`content/engine`)
Same taxonomy, runnable from a terminal or any MCP client:
```bash
cd content            # the engine package sits alongside skilltree.json + skills/
python3 -m engine stats                   # 137 jobs · 36 skills
python3 -m engine audit --out tree.json   # inspect your stack; import into /dashboard
python3 -m engine mcp                     # stdio MCP server exposing all skills
```

## License
MIT. Own everything you build.