mirror of
https://github.com/reconurge/flowsint.git
synced 2026-11-08 14:35:41 -06:00
.eslintrc.cjs + .eslintignore replaced by a single eslint.config.ts. Requires ESLint 9 — flat config's TS-file loading and the plugins' flat presets aren't available on 8.x, and v8 -> v9 is the only jump that's actually clean: eslint-plugin-react (react/recommended, jsx-runtime, and the two rules this project deliberately disables — prop-types, display-name) hard-crashes on ESLint 10 (calls the removed context.getFilename() API, confirmed by trying it — no released or canary version fixes this). eslint-plugin-react-hooks and typescript-eslint both declare and work fine on 10, but react doesn't, so 9.39.5 is the newest version where all three plugins actually work together. Every devDependency in this stack now pinned to an exact version rather than a caret range, deliberately: this exact combination is what got verified, and a silent minor/patch bump on any one of them is exactly how this session hit the v10 breakage. Rule set is unchanged, not just reorganized — verified the finding count is identical before/after (129 problems: 0 errors, 129 warnings; 112 of them no-explicit-any, matching the pre-migration count exactly) by resolving each plugin's flat preset explicitly (tsPlugin.configs['flat/recommended'], react.configs.flat.recommended + ['jsx-runtime'], reactHooks.configs.flat.recommended — the plain .recommended, not recommended-latest, since eslintrc's 'plugin:react-hooks/recommended' resolved to that same rule set, not the newer superset) instead of guessing at equivalents. tsc --noEmit output is also byte-identical before/after. package.json's lint/lint:check scripts drop the now-meaningless --ext flag — flat config determines matched files via the config's own `files` patterns, not CLI extension lists (confirmed harmless either way, but keeping it would just be dead noise). CI's per-file ratchet invocation (yarn eslint <files>) and lint-staged's prettier-only setup are untouched — neither depended on the config file format.
flowsint-app
The folder for the flowsint client, a web application built with Vite and React. The main libraries used are:
- TanstackQuery
- TanstackRouter
- XYflow
- react-force-graph
Project setup
Install
$ npm install
Development
$ npm run dev
This will start the development server at http://localhost:5173
Build
$ npm run build
This will create a production build in the dist folder.
Preview
$ npm run start
This will start the production build locally.