Ketryon Doc
⌘K

Architecture

How apps/* and packages/* fit together.

Layout

apps/
  web/    Public marketing site (indexed, SEO-tracked)
  smm/    Internal social content pipeline
  seo/    Internal SEO performance dashboard
  dir/    Internal directory of links, tools, and projects
  doc/    Internal documentation (this app)
packages/
  ui/     @ketryon/ui — shared components, no build step
  sound/  @ketryon/sound — shared interaction-sound config

Package conventions

Both packages/* entries follow the same shape — main/types pointing straight at ./src/index.ts, no build step, consumed by each app's next.config.ts via transpilePackages:

{
  "main": "./src/index.ts",
  "types": "./src/index.ts",
  "exports": { ".": "./src/index.ts" }
}

Data storage

Not every app needs a database. smm and dir are backed by Neon Postgres via Drizzle ORM; seo reads from Google Search Console/GA4 APIs directly; this app reads markdown files straight off disk — no database at all.