Skip to content

Contributing

This is a small, config-driven dashboard template. Contributions that add a new provider adapter, fix a bug, or improve docs are welcome. Contributions that add multi-tenant auth, a plugin marketplace, or other scope well beyond “single-owner ops dashboard” are probably better as a fork — open an issue first if you’re unsure.

  • Commits: Conventional Commits, one line, no body unless there’s a reason. Enforced by commitlint + Husky.
  • Tests: live under src/tests/, mirroring the source tree — do not colocate *.test.ts beside implementation files. Vitest globals are enabled.
  • Formatting/linting: npm run format (Prettier, single quotes, printWidth: 140), npm run lint (ESLint). Both should pass before opening a PR.
  • Build: npm run build should pass.
  • CI: .github/workflows/ci.yml runs test, lint, and build on every PR.
  • Add mocked tests for provider adapters — never gate a PR on hitting a real external service.

See the dedicated guide for the full step-by-step process.

This tool collects aggregate operational signals only. A new adapter must not change that. See the architecture page for the full data-safety rules.

Never commit credentials, API keys, service-role keys, .env, or projects.config.json. See the security page for how to report a vulnerability.