Blazing fast HMR and easy to set up / configure.
Note: tsconfig.vite.json
is configuration for the Vite process itself, which runs in Node.
See tsconfig.json
. Note that TS is configured to use the installed language server in the repo/workspace itself rather than the global/user-level VSC language server.
Saving devs from themselves, one rule at a time. This repo includes additional plugins for setting up React- and React Hooks-specific rules.
Making ESLint play nice with TypeScript.
Takes care of the formatting so I don't have to think about it. Note that the .prettierrc
specified in the workspace will be respected by the Prettier VSC extension.
(Later: revisit whether I want to enforce single/double quotes or whether I'd like to force wrap prose lines)
Basically a drop-in replacement for npm
, but much, much faster.
Vite automatically supports CSSM with no setup, although additional configuration is available in vite.config.ts
if needed. Any file ending in .module.css
will automatically be considered a CSS Module.
See App.module.css
for example.
Not included here, since there is so much framework-specific configuration when setting up framework projects.
- Next
- maybe Astro
- Cross-platform: React Native or Electron
- TODO : Vercel / fly.io / Cloudflare / something else? (haven't found a great solution to this yet)
TODO / Don't know yet, still looking
Strong library candidates for solving various problems:
- Hooks for browser APIs: react-use
- Data fetching, state management, mutation: react-query / TanStack Query, maybe swr
- Accessible component libraries w/ unopinionated styling: Headless UI, Radix UI, Chakra UI
- Complex component logic (e.g. Autocomplete): hooks from Material UI
- Error tracking: Sentry, obvs
- Rendering markdown + syntax highlighting (like for blogs): Nextra
- Table component: React Table / TanStack Table
- Form state management: formik and react-hook-form both seem perfectly acceptable, although the latter is pulling ahead in recent years.
- Animations: Framer Motion
- Charts: probably recharts
- Super fancy data viz: d3
- Hotkeys: react-hotkeys (unmaintained since mid-2022, but still seems to work well enough)
To handle pre-commit hooks and such.
Current thoughts: Playwright for more complex tests, vitest for unit tests?
Everything is set to "latest," but these should probably be pinned after initial installation.