-
Notifications
You must be signed in to change notification settings - Fork 0
Development
github-actions[bot] edited this page Jun 26, 2026
·
1 revision
Monorepo managed with pnpm workspaces and Turborepo.
- Node.js 20+
- pnpm 9+
git clone https://github.com/madebyaris/rankmyseo.git
cd rankmyseo
pnpm install| Command | Description |
|---|---|
pnpm build |
Build all packages |
pnpm test |
Run Vitest across workspace |
pnpm typecheck |
TypeScript check all packages |
pnpm lint |
ESLint |
pnpm dev:playground |
API server on :3456
|
pnpm dev:dashboard |
Reference dashboard on :5174
|
rankmyseo/
├── apps/
│ ├── dashboard/ # Reference UI (shadcn shell + @rankmyseo/ui widgets)
│ └── playground/ # Demo API server + seed data
├── packages/
│ ├── core/ # Schemas, engines, ports
│ ├── storage/ # SQLite repos
│ ├── datasource/ # GSC, fixture, PSI
│ ├── scheduler/ # Ingestion jobs
│ ├── server/ # HTTP routes
│ ├── server-hono/ # Hono adapter
│ ├── react/ # Hooks + provider
│ ├── ui/ # Widget components + CSS
│ ├── agent/ # AI agent tools
│ └── cli/ # rankmyseo CLI
Terminal 1 — API:
pnpm dev:playgroundTerminal 2 — Dashboard:
pnpm dev:dashboardOpen http://localhost:5174. Default tenant/project headers match playground seeds.
Playground loads rankmyseo.config.ts from repo root (or app directory). See Configuration.
pnpm test # all
pnpm --filter @rankmyseo/core testTests use fixture datasource — no external API keys required.
- Create under
packages/<name>/ - Add to
pnpm-workspace.yamlif needed - Reference workspace deps as
"@rankmyseo/foo": "workspace:*" - Export from
package.json"exports"field
SQLite file created on first server start. Blog posts, keywords, snapshots, dashboard config, audits — all in rms_* tables.
Reset: delete the .db file and restart playground (seeds re-run).
- Fork and branch from
main - Keep changes scoped — one feature per PR
- Run
pnpm build && pnpm test && pnpm typecheck && pnpm lint - Apache-2.0 — contributions under same license
PRD.md is gitignored (product requirements, local only). Public docs live in this wiki and README.md.
See Roadmap-and-License for license and roadmap summary.