TypeScript monorepo with REST API architecture.
- Node.js:
>=22 - pnpm:
10.28.0
pnpm install
pnpm devpnpm dev- Start all apps in development modepnpm build- Build all apps and packagespnpm lint- Lint all code (Biome + ESLint)pnpm format- Format all code (Biome)pnpm checktypes- Type check all TypeScriptpnpm test- Run all tests
pnpm secrets:scan:staged- Scan staged files for secrets (gitleaks)pnpm secrets:scan- Scan entire repository for secrets (gitleaks)pnpm deps:osv- Scan dependencies for vulnerabilities (OSV Scanner)pnpm deps:audit- Run pnpm audit for dependency vulnerabilities
GitHub Actions workflows automate quality checks:
Runs on all pull requests to ensure code quality:
- Executes
pnpm lint(Biome + ESLint) - Catches linting errors before merge
- Can be manually triggered via
workflow_dispatch
Runs on all pull requests and pushes to main:
- Secret scanning - Scans repository with gitleaks and TruffleHog
- Dependency scanning - Checks for vulnerabilities with OSV Scanner and pnpm audit
- Git history scan - Scans entire git history for exposed secrets
- All checks must pass for CI to succeed
See Security Guide for complete details.
apps/- Applications (API, Web, Docs)packages/- Shared packages (core, react, ui, utils)devtools/- Shared development tooling (eslint, react, typescript configs)
Full documentation: https://basilic-docs.vercel.app/docs
- Getting Started - 15-minute setup guide
- AI-Driven Development - Recommended workflow with Cursor
- Monorepo Structure - Package organization
- API Development - REST API with OpenAPI and client generation
- Portability Strategy - Zero vendor lock-in
- Security Guide - Security baseline and secret scanning
- Deployment Guide - Deployment options and strategies
- Publishing Guide - Publishing packages to npm
- Cursor Setup Guide - Configure IDE and MCP servers
- Cursor Rules - Coding standards
- Architecture - Architecture overview