Skip to content
LautstarkPublic

About

The versions of vite, vitest, typescript and Playwright the Lautstark apps share, and the configuration they extend

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

@lautstark/toolchain

The versions of vite, vitest, typescript and Playwright the Lautstark apps build and test with, and the configuration they share — declared once, here, so the apps cannot drift apart.

Until 2026-09-16 each app pinned the four itself, and they had: vite 6 beside vite 8, vitest 2 beside 4. Two of those were held back by a real reason (vite-node in a Python harness) and the other two by nobody looking. This package is the "nobody looking" half: an app that extends it has whatever version this package declares, and Renovate moves the version here, once, as a fix(deps): that is tagged as a patch and reaches every app through the family's shared-packages rule - a github: pin, like every package in the family; there is no registry.

Use

npm install -D github:Lautstark/toolchain#v1.0.0

and drop vite, vitest, typescript and @playwright/test from your own devDependencies: they arrive through this package, and their binaries land in node_modules/.bin the same as before.

// tsconfig.json
{ "extends": "@lautstark/toolchain/tsconfig.json", "compilerOptions": { "types": ["vite/client", "node"] }, "include": ["src", "tests", "e2e"] }
// vitest.config.ts
import { vitestConfig } from '@lautstark/toolchain/vitest';
export default vitestConfig({ include: ['tests/unit/**/*.test.ts'], setupFiles: ['./tests/unit/setup.ts'] });
// playwright.config.ts
import { playwrightConfig } from '@lautstark/toolchain/playwright';
export default playwrightConfig({ port: 4174 });

Anything an app passes wins over the default, one level deep. What is not here is deliberate: a vite.config.ts is product identity — plugins, entry points, the base path — and stays with the product.

Releasing

Like every package in the family: from the commit subjects, on push to main, by CI. A dependency bump is fix(deps): and a patch; a change to one of the shared configs that an app has to react to is feat!:. See @lautstark/sicherung's RELEASING.md for the flow and the one-time account setup, which are the same here.

About

The versions of vite, vitest, typescript and Playwright the Lautstark apps share, and the configuration they extend

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages