A production-ready SvelteKit starter template built with shift-left quality practices. Catch bugs early, ship with confidence.
This template embraces the shift-left methodology—integrating quality gates at every stage of development rather than catching issues in production. Every commit is linted, every push is tested, and every merge is validated through CI/CD.
Fail fast, fix early.
flowchart LR
Code --> PreCommit["Pre-commit: lint-staged"]
PreCommit --> PrePush["Pre-push: E2E tests + Coverage"]
PrePush --> CI["CI Pipeline"]
CI --> Sentry["Sentry Monitoring"]
CI --> Deploy
| Stage | Trigger | Actions |
|---|---|---|
| Pre-commit | git commit |
Prettier + ESLint on staged files |
| Pre-push | git push |
Full Playwright E2E test suite with coverage |
| CI/CD | Push/PR to main | Lint, type-check, test, build |
| Runtime | Production | Sentry error tracking & performance monitoring |
Core
Styling
Quality
Observability
Validation
HTTP
Install dependencies:
pnpm install
Start the development server:
pnpm dev
Build for production:
pnpm build
Preview the production build:
pnpm preview
| Command | Description |
|---|---|
pnpm dev |
Start development server |
pnpm build |
Build for production |
pnpm preview |
Preview production build |
pnpm check |
Run type checks |
pnpm lint |
Lint and check formatting |
pnpm format |
Format code with Prettier |
pnpm test |
Run E2E tests |
pnpm test:show-report |
Open Monocart test report |
pnpm coverage:show-report |
Open V8 coverage report |
E2E tests collect V8 code coverage using Playwright's built-in coverage API and Monocart Reporter.
Report Formats
./coverage/e2e/v8/index.html./coverage/e2e/lcov/code-coverage.lcov.info./coverage/e2e/cobertura/code-coverage.cobertura.xmlCreate a .env file with the following variables:
VITE_API_BASE_URL=your-base-api
VITE_SENTRY_DSN=your-sentry-dsn
SENTRY_DSN=your-sentry-dsn
SENTRY_ORG=your-sentry-org
SENTRY_PROJECT=your-sentry-project
SENTRY_AUTH_TOKEN=your-sentry-auth-token
GitHub Actions workflow triggers on push and pull requests to main: