pnpm workspace with apps/web, apps/api, apps/collab, and packages/shared; strict TypeScript base config, repo-wide ESLint (flat) + Prettier, Vitest per package, and root scripts lint/typecheck/test/ build. @dorfteich/shared ships a first health-response helper consumed by apps/api to prove workspace linking. Existing markdown docs are reformatted once by the new Prettier setup. Closes #1 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
27 lines
912 B
JavaScript
27 lines
912 B
JavaScript
// Repo-wide ESLint flat config. Packages inherit these rules; add
|
|
// package-specific overrides here (scoped by `files`) rather than with
|
|
// per-package config files, so rules stay consistent across the monorepo.
|
|
import js from '@eslint/js';
|
|
import tseslint from 'typescript-eslint';
|
|
import prettier from 'eslint-config-prettier';
|
|
|
|
export default tseslint.config(
|
|
{
|
|
ignores: ['**/dist/**', '**/node_modules/**', '**/coverage/**', '**/*.gen.ts'],
|
|
},
|
|
js.configs.recommended,
|
|
...tseslint.configs.recommended,
|
|
prettier,
|
|
{
|
|
rules: {
|
|
// Unused values are usually bugs; underscore-prefix marks intentional ones.
|
|
'@typescript-eslint/no-unused-vars': [
|
|
'error',
|
|
{ argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
|
|
],
|
|
// `any` defeats the shared Zod/type contracts between client and server.
|
|
'@typescript-eslint/no-explicit-any': 'error',
|
|
},
|
|
},
|
|
);
|