From bf32423169363a86c42156be916a8b04042d4331 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Fri, 18 Apr 2025 20:22:56 +0200 Subject: [PATCH 01/10] fix(tsconfig): verbatim module syntax --- tsconfig.base.json | 1 + 1 file changed, 1 insertion(+) diff --git a/tsconfig.base.json b/tsconfig.base.json index daa6b3a..37782bc 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -28,6 +28,7 @@ "noUnusedParameters": false, "checkJs": true, + "verbatimModuleSyntax": true, "forceConsistentCasingInFileNames": true } From fa49ed07db754fffb8be0faa28960ca48b1bd13c Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Tue, 23 Dec 2025 16:30:04 +0100 Subject: [PATCH 02/10] update and introduce react router --- .envrc | 16 +++-- .gitignore | 6 +- biome.json | 26 +++++-- bun.lockb | Bin 148512 -> 197392 bytes flake.nix | 73 ++++++++----------- packages/web/app/app.css | 4 ++ packages/web/app/root.tsx | 75 +++++++++++++++++++ packages/web/app/routes.ts | 3 + packages/web/app/routes/home.tsx | 13 ++++ packages/web/app/welcome/logo-dark.svg | 23 ++++++ packages/web/app/welcome/logo-light.svg | 23 ++++++ packages/web/app/welcome/welcome.tsx | 91 ++++++++++++++++++++++++ packages/web/index.html | 14 ---- packages/web/package.json | 45 ++++++------ packages/web/public/favicon.ico | Bin 3870 -> 15086 bytes packages/web/public/logo192.png | Bin 5347 -> 0 bytes packages/web/public/logo512.png | Bin 9664 -> 0 bytes packages/web/public/manifest.json | 25 ------- packages/web/public/robots.txt | 3 - packages/web/react-router.config.ts | 7 ++ packages/web/src/App.tsx | 29 -------- packages/web/src/index.css | 5 -- packages/web/src/main.tsx | 16 ----- packages/web/src/requireContext.ts | 12 ---- packages/web/tsconfig.json | 14 +++- packages/web/vite.config.ts | 8 ++- tsconfig.base.json | 5 +- 27 files changed, 349 insertions(+), 187 deletions(-) create mode 100644 packages/web/app/app.css create mode 100644 packages/web/app/root.tsx create mode 100644 packages/web/app/routes.ts create mode 100644 packages/web/app/routes/home.tsx create mode 100644 packages/web/app/welcome/logo-dark.svg create mode 100644 packages/web/app/welcome/logo-light.svg create mode 100644 packages/web/app/welcome/welcome.tsx delete mode 100644 packages/web/index.html delete mode 100644 packages/web/public/logo192.png delete mode 100644 packages/web/public/logo512.png delete mode 100644 packages/web/public/manifest.json delete mode 100644 packages/web/public/robots.txt create mode 100644 packages/web/react-router.config.ts delete mode 100644 packages/web/src/App.tsx delete mode 100644 packages/web/src/index.css delete mode 100644 packages/web/src/main.tsx delete mode 100644 packages/web/src/requireContext.ts diff --git a/.envrc b/.envrc index 8106bf9..117c726 100644 --- a/.envrc +++ b/.envrc @@ -1,13 +1,17 @@ -if ! has nix_direnv_version || ! nix_direnv_version 2.2.1; then - source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.2.1/direnvrc" "sha256-zelF0vLbEl5uaqrfIzbgNzJWGmLzCmYAkInj/LNxvKs=" +#!/usr/bin/env bash + +if ! has nix_direnv_version || ! nix_direnv_version 3.1.0; then + source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/3.1.0/direnvrc" "sha256-yMJ2OVMzrFaDPn7q8nCBZFRYpL/f0RcHzhmw/i6btJM=" fi +export DEVENV_IN_DIRENV_SHELL=true + watch_file flake.nix watch_file flake.lock -DEVENV_ROOT_FILE="$(mktemp)" -printf %s "$PWD" > "$DEVENV_ROOT_FILE" -if ! use flake . --override-input devenv-root "file+file://$DEVENV_ROOT_FILE" -then +mkdir -p "$PWD/.devenv" +DEVENV_ROOT_FILE="$PWD/.devenv/root" +printf %s "$PWD" >"$DEVENV_ROOT_FILE" +if ! use flake . --override-input devenv-root "file+file://$DEVENV_ROOT_FILE"; then echo "devenv could not be built. The devenv environment was not loaded. Make the necessary changes to devenv.nix and hit enter to try again." >&2 fi diff --git a/.gitignore b/.gitignore index d2fcaf2..acf6b4a 100644 --- a/.gitignore +++ b/.gitignore @@ -8,8 +8,10 @@ node_modules # testing /coverage -# production -/build +# React Router +.react-router/ +/build/ + # misc .DS_Store diff --git a/biome.json b/biome.json index 7cdcf69..1498ed4 100644 --- a/biome.json +++ b/biome.json @@ -1,7 +1,13 @@ { - "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", - "organizeImports": { - "enabled": true + "$schema": "https://biomejs.dev/schemas/2.3.6/schema.json", + "vcs": { + "enabled": true, + "clientKind": "git", + "useIgnoreFile": true + }, + "files": { + "ignoreUnknown": false, + "includes": ["**", "!**/.react-router"] }, "formatter": { "enabled": true, @@ -20,9 +26,17 @@ } } }, - "vcs": { + "javascript": { + "formatter": { + "quoteStyle": "double" + } + }, + "assist": { "enabled": true, - "clientKind": "git", - "useIgnoreFile": true + "actions": { + "source": { + "organizeImports": "on" + } + } } } diff --git a/bun.lockb b/bun.lockb index d0d030b64ab1db116577c2a829f1235356189430..5faa1c36179477bbfb40a2ca583096c0ba6c32d3 100755 GIT binary patch literal 197392 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 [ + { rel: "preconnect", href: "https://fonts.googleapis.com" }, + { + rel: "preconnect", + href: "https://fonts.gstatic.com", + crossOrigin: "anonymous", + }, + { + rel: "stylesheet", + href: "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap", + }, +]; + +export function Layout({ children }: { children: React.ReactNode }) { + return ( + + + + + + + + + {children} + + + + + ); +} + +export default function App() { + return ; +} + +export function ErrorBoundary({ error }: Route.ErrorBoundaryProps) { + let message = "Oops!"; + let details = "An unexpected error occurred."; + let stack: string | undefined; + + if (isRouteErrorResponse(error)) { + message = error.status === 404 ? "404" : "Error"; + details = + error.status === 404 + ? "The requested page could not be found." + : error.statusText || details; + } else if (import.meta.env.DEV && error && error instanceof Error) { + details = error.message; + stack = error.stack; + } + + return ( +
+

{message}

+

{details}

+ {stack && ( +
+          {stack}
+        
+ )} +
+ ); +} diff --git a/packages/web/app/routes.ts b/packages/web/app/routes.ts new file mode 100644 index 0000000..102b402 --- /dev/null +++ b/packages/web/app/routes.ts @@ -0,0 +1,3 @@ +import { type RouteConfig, index } from "@react-router/dev/routes"; + +export default [index("routes/home.tsx")] satisfies RouteConfig; diff --git a/packages/web/app/routes/home.tsx b/packages/web/app/routes/home.tsx new file mode 100644 index 0000000..28efe48 --- /dev/null +++ b/packages/web/app/routes/home.tsx @@ -0,0 +1,13 @@ +import type { Route } from "./+types/home"; +import { Welcome } from "../welcome/welcome"; + +export function meta(_args: Route.MetaArgs) { + return [ + { title: "New React Router App" }, + { name: "description", content: "Welcome to React Router!" }, + ]; +} + +export default function Home() { + return ; +} diff --git a/packages/web/app/welcome/logo-dark.svg b/packages/web/app/welcome/logo-dark.svg new file mode 100644 index 0000000..dd82028 --- /dev/null +++ b/packages/web/app/welcome/logo-dark.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/web/app/welcome/logo-light.svg b/packages/web/app/welcome/logo-light.svg new file mode 100644 index 0000000..7328492 --- /dev/null +++ b/packages/web/app/welcome/logo-light.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/web/app/welcome/welcome.tsx b/packages/web/app/welcome/welcome.tsx new file mode 100644 index 0000000..f4c185f --- /dev/null +++ b/packages/web/app/welcome/welcome.tsx @@ -0,0 +1,91 @@ +import logoDark from "./logo-dark.svg"; +import logoLight from "./logo-light.svg"; + +export function Welcome() { + return ( +
+
+
+
+ React Router + React Router +
+
+
+ +
+
+
+ ); +} + +const resources = [ + { + href: "https://reactrouter.com/docs", + text: "React Router Docs", + icon: ( + + Welcome + + + ), + }, + { + href: "https://rmx.as/discord", + text: "Join Discord", + icon: ( + + Welcome + + + ), + }, +]; diff --git a/packages/web/index.html b/packages/web/index.html deleted file mode 100644 index 2ce0cce..0000000 --- a/packages/web/index.html +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - Template - - -
- - - diff --git a/packages/web/package.json b/packages/web/package.json index c5bdd78..d6e3b1b 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -4,33 +4,36 @@ "version": "0.0.0", "type": "module", "scripts": { - "dev": "bunx --bun vite", - "build": "tsc -b && vite build", - "lint": "biome lint . && stylelint **/*.css", - "preview": "vite preview", + "build": "react-router build", + "dev": "react-router dev", + "start": "react-router-serve ./build/server/index.js", + "typecheck": "react-router typegen && tsc", "test": "vitest" }, "dependencies": { - "effect": "=3.14.5", - "react": "=19.1.0", - "react-dom": "=19.1.0", + "@react-router/node": "7.10.1", + "@react-router/serve": "7.10.1", + "isbot": "^5.1.31", + "react": "^19.2.3", + "react-dom": "^19.2.3", + "react-router": "7.10.1", "react-hook-form": "7.55.0", - "react-router-dom": "7.4.1", "vite-plugin-top-level-await": "1.5.0" }, "devDependencies": { - "@biomejs/biome": "1.9.4", - "@types/lodash": "4.17.16", - "@types/react": "19.1.0", - "@types/react-dom": "19.1.1", - "@vitejs/plugin-react": "4.3.4", - "meow": "13.2.0", - "stylelint": "16.17.0", - "stylelint-config-standard": "37.0.0", - "typescript": "5.8.2", - "typescript-eslint": "8.29.0", - "vite": "6.2.4", - "vite-plugin-checker": "0.9.1", - "vitest": "3.1.1" + "@react-router/dev": "7.10.1", + "@tailwindcss/vite": "^4.1.13", + "@types/node": "^22", + "@types/react": "^19.2.7", + "@types/react-dom": "^19.2.3", + "tailwindcss": "^4.1.13", + "typescript": "^5.9.2", + "vite": "^7.1.7", + "vite-tsconfig-paths": "^5.1.4", + "@biomejs/biome": "2.3.6", + "stylelint": "16.26.1", + "stylelint-config-standard": "39.0.1", + "vite-plugin-checker": "0.12.0", + "vitest": "4.0.16" } } diff --git a/packages/web/public/favicon.ico b/packages/web/public/favicon.ico index a11777cc471a4344702741ab1c8a588998b1311a..5dbdfcddcb14182535f6d32d1c900681321b1aa3 100644 GIT binary patch literal 15086 zcmeI33v3ic7{|AFEmuJ-;v>ep_G*NPi6KM`qNryCe1PIJ8siIN1WZ(7qVa)RVtmC% z)Ch?tN+afMKm;5@rvorJk zcXnoOc4q51HBQnQH_jn!cAg&XI1?PlX>Kl^k8qq0;zkha`kY$Fxt#=KNJAE9CMdpW zqr4#g8`nTw191(+H4xW8Tmyru2I^3=J1G3emPxkPXA=3{vvuvse_WWSshqaqls^-m zgB7q8&Vk*aYRe?sn$n53dGH#%3y%^vxv{pL*-h0Z4bmb_(k6{FL7HWIz(V*HT#IcS z-wE{)+0x1U!RUPt3gB97%p}@oHxF4|6S*+Yw=_tLtxZ~`S=z6J?O^AfU>7qOX`JNBbV&8+bO0%@fhQitKIJ^O^ zpgIa__qD_y07t@DFlBJ)8SP_#^j{6jpaXt{U%=dx!qu=4u7^21lWEYHPPY5U3TcoQ zX_7W+lvZi>TapNk_X>k-KO%MC9iZp>1E`N34gHKd9tK&){jq2~7OsJ>!G0FzxQFw6G zm&Vb(2#-T|rM|n3>uAsG_hnbvUKFf3#ay@u4uTzia~NY%XgCHfx4^To4BDU@)HlV? z@EN=g^ymETa1sQK{kRwyE4Ax8?wT&GvaG@ASO}{&a17&^v`y z!oPdiSiia^oov(Z)QhG2&|FgE{M9_4hJROGbnj>#$~ZF$-G^|zPj*QApltKe?;u;uKHJ~-V!=VLkg7Kgct)l7u39f@%VG8e3f$N-B zAu3a4%ZGf)r+jPAYCSLt73m_J3}p>}6Tx0j(wg4vvKhP!DzgiWANiE;Ppvp}P2W@m z-VbYn+NXFF?6ngef5CfY6ZwKnWvNV4z6s^~yMXw2i5mv}jC$6$46g?G|CPAu{W5qF zDobS=zb2ILX9D827g*NtGe5w;>frjanY{f)hrBP_2ehBt1?`~ypvg_Ot4x1V+43P@Ve8>qd)9NX_jWdLo`Zfy zoeam9)@Dpym{4m@+LNxXBPjPKA7{3a&H+~xQvr>C_A;7=JrfK~$M2pCh>|xLz>W6SCs4qC|#V`)# z)0C|?$o>jzh<|-cpf

K7osU{Xp5PG4-K+L2G=)c3f&}H&M3wo7TlO_UJjQ-Oq&_ zjAc9=nNIYz{c3zxOiS5UfcE1}8#iI4@uy;$Q7>}u`j+OU0N<*Ezx$k{x_27+{s2Eg z`^=rhtIzCm!_UcJ?Db~Lh-=_))PT3{Q0{Mwdq;0>ZL%l3+;B&4!&xm#%HYAK|;b456Iv&&f$VQHf` z>$*K9w8T+paVwc7fLfMlhQ4)*zL_SG{~v4QR;IuX-(oRtYAhWOlh`NLoX0k$RUYMi z2Y!bqpdN}wz8q`-%>&Le@q|jFw92ErW-hma-le?S z-@OZt2EEUm4wLsuEMkt4zlyy29_3S50JAcQHTtgTC{P~%-mvCTzrjXOc|{}N`Cz`W zSj7CrXfa7lcsU0J(0uSX6G`54t^7}+OLM0n(|g4waOQ}bd3%!XLh?NX9|8G_|06Ie zD5F1)w5I~!et7lA{G^;uf7aqT`KE&2qx9|~O;s6t!gb`+zVLJyT2T)l*8l(j literal 3870 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 baj7?x%VD!5Cxk2YbYLNVeiXvvpMCWYo=by@ diff --git a/packages/web/public/logo192.png b/packages/web/public/logo192.png deleted file mode 100644 index fc44b0a3796c0e0a64c3d858ca038bd4570465d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5347 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 b{|{}U^kRn2wo}j7|0ATu<;8xA7zX}7|B6mN diff --git a/packages/web/public/manifest.json b/packages/web/public/manifest.json deleted file mode 100644 index 080d6c7..0000000 --- a/packages/web/public/manifest.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - }, - { - "src": "logo192.png", - "type": "image/png", - "sizes": "192x192" - }, - { - "src": "logo512.png", - "type": "image/png", - "sizes": "512x512" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/packages/web/public/robots.txt b/packages/web/public/robots.txt deleted file mode 100644 index e9e57dc..0000000 --- a/packages/web/public/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# https://www.robotstxt.org/robotstxt.html -User-agent: * -Disallow: diff --git a/packages/web/react-router.config.ts b/packages/web/react-router.config.ts new file mode 100644 index 0000000..6ff16f9 --- /dev/null +++ b/packages/web/react-router.config.ts @@ -0,0 +1,7 @@ +import type { Config } from "@react-router/dev/config"; + +export default { + // Config options... + // Server-side render by default, to enable SPA mode set this to `false` + ssr: true, +} satisfies Config; diff --git a/packages/web/src/App.tsx b/packages/web/src/App.tsx deleted file mode 100644 index 4ed09e9..0000000 --- a/packages/web/src/App.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import { - createBrowserRouter, - Navigate, - Outlet, - RouterProvider, -} from "react-router-dom"; - -const router = createBrowserRouter([ - { - path: "/", - element: , - children: [ - { - path: "/", - element: , - }, - { - path: "test", - element:

Test

, - }, - ], - }, -]); - -function App() { - return ; -} - -export default App; diff --git a/packages/web/src/index.css b/packages/web/src/index.css deleted file mode 100644 index be4b9d3..0000000 --- a/packages/web/src/index.css +++ /dev/null @@ -1,5 +0,0 @@ -html, -body { - margin: 0; - padding: 0; -} diff --git a/packages/web/src/main.tsx b/packages/web/src/main.tsx deleted file mode 100644 index bb311b2..0000000 --- a/packages/web/src/main.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { StrictMode } from "react"; -import { createRoot } from "react-dom/client"; -import App from "./App.tsx"; -import "./index.css"; - -const root = document.getElementById("root"); - -if (root != null) { - createRoot(root).render( - - - , - ); -} else { - console.error("No #root element found"); -} diff --git a/packages/web/src/requireContext.ts b/packages/web/src/requireContext.ts deleted file mode 100644 index e471762..0000000 --- a/packages/web/src/requireContext.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { useContext } from "react"; - -export function useRequiredContext( - c: React.Context, - error: string, -): T { - const ctx = useContext(c); - if (ctx == null) { - throw new Error(error); - } - return ctx; -} diff --git a/packages/web/tsconfig.json b/packages/web/tsconfig.json index 1673d04..ca6bcbf 100644 --- a/packages/web/tsconfig.json +++ b/packages/web/tsconfig.json @@ -1,5 +1,17 @@ { "files": [], "extends": "../../tsconfig.base.json", - "include": ["src"] + "include": [ + "**/*", + "**/.server/**/*", + "**/.client/**/*", + ".react-router/types/**/*" + ], + "compilerOptions": { + "rootDirs": [".", "./.react-router/types"], + "baseUrl": ".", + "paths": { + "~/*": ["./app/*"] + }, + } } diff --git a/packages/web/vite.config.ts b/packages/web/vite.config.ts index 707457b..2c2facc 100644 --- a/packages/web/vite.config.ts +++ b/packages/web/vite.config.ts @@ -1,6 +1,7 @@ +import { reactRouter } from "@react-router/dev/vite"; import { defineConfig } from "vite"; -import react from "@vitejs/plugin-react"; import checker from "vite-plugin-checker"; +import tsconfigPaths from "vite-tsconfig-paths"; // https://vitejs.dev/config/ export default defineConfig({ @@ -8,9 +9,10 @@ export default defineConfig({ checker({ biome: { command: "check", dev: { command: "lint" } }, typescript: true, - stylelint: { lintCommand: "stylelint ./src/**/*.css" }, + stylelint: { lintCommand: "stylelint ./app/**/*.css" }, }), - react(), + reactRouter(), + tsconfigPaths(), ], server: { fs: { diff --git a/tsconfig.base.json b/tsconfig.base.json index 37782bc..30bda58 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -3,7 +3,7 @@ "target": "ES2022", "useDefineForClassFields": true, "lib": ["ES2022", "DOM", "DOM.Iterable"], - "types": ["vitest/importMeta"], + "types": ["node", "vite/client", "vitest/importMeta"], "module": "ESNext", "skipLibCheck": true, @@ -16,6 +16,7 @@ "strict": true, + "esModuleInterop": true, "allowUnusedLabels": false, "allowUnreachableCode": false, "exactOptionalPropertyTypes": true, @@ -26,6 +27,8 @@ "noUncheckedIndexedAccess": true, "noUnusedLocals": false, "noUnusedParameters": false, + "verbatimModuleSyntax": true, + "resolveJsonModule": true, "checkJs": true, "verbatimModuleSyntax": true, From d90ae8967a966b8498562950bd5863bc702e8faf Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Tue, 23 Dec 2025 16:34:34 +0100 Subject: [PATCH 03/10] fix verbatimeModuleSyntax --- tsconfig.base.json | 1 - 1 file changed, 1 deletion(-) diff --git a/tsconfig.base.json b/tsconfig.base.json index 30bda58..9869b40 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -27,7 +27,6 @@ "noUncheckedIndexedAccess": true, "noUnusedLocals": false, "noUnusedParameters": false, - "verbatimModuleSyntax": true, "resolveJsonModule": true, "checkJs": true, From 4a1fdd5fa69b8b54c2bfb9aaf8af5474f0fd9dc1 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Tue, 23 Dec 2025 16:49:05 +0100 Subject: [PATCH 04/10] fix flake lock --- flake.lock | 378 ----------------------------------------------------- 1 file changed, 378 deletions(-) delete mode 100644 flake.lock diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 32d4157..0000000 --- a/flake.lock +++ /dev/null @@ -1,378 +0,0 @@ -{ - "nodes": { - "cachix": { - "inputs": { - "devenv": [ - "devenv" - ], - "flake-compat": [ - "devenv" - ], - "git-hooks": [ - "devenv" - ], - "nixpkgs": "nixpkgs" - }, - "locked": { - "lastModified": 1737621947, - "narHash": "sha256-8HFvG7fvIFbgtaYAY2628Tb89fA55nPm2jSiNs0/Cws=", - "owner": "cachix", - "repo": "cachix", - "rev": "f65a3cd5e339c223471e64c051434616e18cc4f5", - "type": "github" - }, - "original": { - "owner": "cachix", - "ref": "latest", - "repo": "cachix", - "type": "github" - } - }, - "devenv": { - "inputs": { - "cachix": "cachix", - "flake-compat": "flake-compat", - "git-hooks": "git-hooks", - "nix": "nix", - "nixpkgs": "nixpkgs_3" - }, - "locked": { - "lastModified": 1743582803, - "narHash": "sha256-7OblE2f4FaH47U9W9cTIy8+TrcLU5xZTBgk+QqKH/uw=", - "owner": "cachix", - "repo": "devenv", - "rev": "3dd684b5df083ca48a8db263d9406bf83fc12b3e", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "devenv", - "type": "github" - } - }, - "devenv-root": { - "flake": false, - "locked": { - "narHash": "sha256-d6xi4mKdjkX2JFicDIv5niSzpyI0m/Hnm8GGAIU04kY=", - "type": "file", - "url": "file:///dev/null" - }, - "original": { - "type": "file", - "url": "file:///dev/null" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "devenv", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_2": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib" - }, - "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "git-hooks": { - "inputs": { - "flake-compat": [ - "devenv" - ], - "gitignore": "gitignore", - "nixpkgs": [ - "devenv", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1740849354, - "narHash": "sha256-oy33+t09FraucSZ2rZ6qnD1Y1c8azKKmQuCvF2ytUko=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "4a709a8ce9f8c08fa7ddb86761fe488ff7858a07", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "devenv", - "git-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "libgit2": { - "flake": false, - "locked": { - "lastModified": 1697646580, - "narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=", - "owner": "libgit2", - "repo": "libgit2", - "rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5", - "type": "github" - }, - "original": { - "owner": "libgit2", - "repo": "libgit2", - "type": "github" - } - }, - "mk-shell-bin": { - "locked": { - "lastModified": 1677004959, - "narHash": "sha256-/uEkr1UkJrh11vD02aqufCxtbF5YnhRTIKlx5kyvf+I=", - "owner": "rrbutani", - "repo": "nix-mk-shell-bin", - "rev": "ff5d8bd4d68a347be5042e2f16caee391cd75887", - "type": "github" - }, - "original": { - "owner": "rrbutani", - "repo": "nix-mk-shell-bin", - "type": "github" - } - }, - "nix": { - "inputs": { - "flake-compat": [ - "devenv" - ], - "flake-parts": "flake-parts", - "libgit2": "libgit2", - "nixpkgs": "nixpkgs_2", - "nixpkgs-23-11": [ - "devenv" - ], - "nixpkgs-regression": [ - "devenv" - ], - "pre-commit-hooks": [ - "devenv" - ] - }, - "locked": { - "lastModified": 1741798497, - "narHash": "sha256-E3j+3MoY8Y96mG1dUIiLFm2tZmNbRvSiyN7CrSKuAVg=", - "owner": "domenkozar", - "repo": "nix", - "rev": "f3f44b2baaf6c4c6e179de8cbb1cc6db031083cd", - "type": "github" - }, - "original": { - "owner": "domenkozar", - "ref": "devenv-2.24", - "repo": "nix", - "type": "github" - } - }, - "nix2container": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1742501024, - "narHash": "sha256-4G0RaAkRQY8Oty0WjoDfIkEAkX7PckUqUGjAQrxhDiA=", - "owner": "nlewo", - "repo": "nix2container", - "rev": "e6315c8307edf2938ae24df0e28b47ca865121de", - "type": "github" - }, - "original": { - "owner": "nlewo", - "repo": "nix2container", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1733212471, - "narHash": "sha256-M1+uCoV5igihRfcUKrr1riygbe73/dzNnzPsmaLCmpo=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "55d15ad12a74eb7d4646254e13638ad0c4128776", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs-lib": { - "locked": { - "lastModified": 1743296961, - "narHash": "sha256-b1EdN3cULCqtorQ4QeWgLMrd5ZGOjLSLemfa00heasc=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "e4822aea2a6d1cdd36653c134cacfd64c97ff4fa", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1717432640, - "narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "88269ab3044128b7c2f4c7d68448b2fb50456870", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1733477122, - "narHash": "sha256-qamMCz5mNpQmgBwc8SB5tVMlD5sbwVIToVZtSxMph9s=", - "owner": "cachix", - "repo": "devenv-nixpkgs", - "rev": "7bd9e84d0452f6d2e63b6e6da29fe73fac951857", - "type": "github" - }, - "original": { - "owner": "cachix", - "ref": "rolling", - "repo": "devenv-nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1743501102, - "narHash": "sha256-7PCBQ4aGVF8OrzMkzqtYSKyoQuU2jtpPi4lmABpe5X4=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "02f2af8c8a8c3b2c05028936a1e84daefa1171d4", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.11", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "devenv": "devenv", - "devenv-root": "devenv-root", - "flake-parts": "flake-parts_2", - "mk-shell-bin": "mk-shell-bin", - "nix2container": "nix2container", - "nixpkgs": "nixpkgs_4" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} From 06b78c2525c6ffd6e38d98608b4e9d1529100381 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Tue, 23 Dec 2025 17:00:29 +0100 Subject: [PATCH 05/10] Add zed settings --- .zed/settings.json | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 .zed/settings.json diff --git a/.zed/settings.json b/.zed/settings.json new file mode 100644 index 0000000..e42156a --- /dev/null +++ b/.zed/settings.json @@ -0,0 +1,22 @@ +// Folder-specific settings +// +// For a full list of overridable settings, and general information on folder-specific settings, +// see the documentation: https://zed.dev/docs/configuring-zed#settings-files +{ + "formatter": { + "language_server": { + "name": "biome" + } + }, + "code_actions_on_format": { + "source.fixAll.biome": true, + "source.organizeImports.biome": true + }, + "format_on_save": "on", + "tab_size": 2, + "languages": { + "TSX": { + "language_servers": ["stylelint-lsp", "..."] + } + } +} From 0193c8fcb6d26888267a4192b9c2b96e44cfdef8 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Tue, 23 Dec 2025 17:00:29 +0100 Subject: [PATCH 06/10] Add typescripted css modules --- bun.lockb | Bin 197392 -> 221176 bytes packages/web/app/vite-env.d.ts | 2 ++ packages/web/package.json | 11 ++++++----- packages/web/tsconfig.json | 8 +++++++- packages/web/vite.config.ts | 5 +++++ 5 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 packages/web/app/vite-env.d.ts diff --git a/bun.lockb b/bun.lockb index 5faa1c36179477bbfb40a2ca583096c0ba6c32d3..2709868ef8ef07ccf52469e20a4d2a6c4c704ffc 100755 GIT binary patch delta 49910 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 CEt`D+ diff --git a/packages/web/app/vite-env.d.ts b/packages/web/app/vite-env.d.ts new file mode 100644 index 0000000..ee9857a --- /dev/null +++ b/packages/web/app/vite-env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/packages/web/package.json b/packages/web/package.json index d6e3b1b..5b68bc5 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -21,19 +21,20 @@ "vite-plugin-top-level-await": "1.5.0" }, "devDependencies": { + "@biomejs/biome": "2.3.6", "@react-router/dev": "7.10.1", "@tailwindcss/vite": "^4.1.13", "@types/node": "^22", "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", - "tailwindcss": "^4.1.13", - "typescript": "^5.9.2", - "vite": "^7.1.7", - "vite-tsconfig-paths": "^5.1.4", - "@biomejs/biome": "2.3.6", "stylelint": "16.26.1", "stylelint-config-standard": "39.0.1", + "tailwindcss": "^4.1.13", + "typescript": "^5.9.2", + "typescript-plugin-css-modules": "5.2.0", + "vite": "^7.1.7", "vite-plugin-checker": "0.12.0", + "vite-tsconfig-paths": "^5.1.4", "vitest": "4.0.16" } } diff --git a/packages/web/tsconfig.json b/packages/web/tsconfig.json index ca6bcbf..6a2bd6d 100644 --- a/packages/web/tsconfig.json +++ b/packages/web/tsconfig.json @@ -8,10 +8,16 @@ ".react-router/types/**/*" ], "compilerOptions": { + "plugins": [ + { + "name": "typescript-plugin-css-modules", + "options": { "classnameTransform": "camelCase" } + } + ], "rootDirs": [".", "./.react-router/types"], "baseUrl": ".", "paths": { "~/*": ["./app/*"] - }, + } } } diff --git a/packages/web/vite.config.ts b/packages/web/vite.config.ts index 2c2facc..3055fb4 100644 --- a/packages/web/vite.config.ts +++ b/packages/web/vite.config.ts @@ -14,6 +14,11 @@ export default defineConfig({ reactRouter(), tsconfigPaths(), ], + css: { + modules: { + localsConvention: "camelCaseOnly", + }, + }, server: { fs: { deny: [".devenv/", ".direnv/"], From 875f2f2d46c2a8f21295bd72ce716e7c11a02891 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Fri, 26 Dec 2025 13:54:09 +0100 Subject: [PATCH 07/10] make css modules build without errors --- packages/web/tsconfig.cssmodulehack.json | 11 +++++++++++ packages/web/tsconfig.json | 4 +++- packages/web/vite.config.ts | 4 +++- 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 packages/web/tsconfig.cssmodulehack.json diff --git a/packages/web/tsconfig.cssmodulehack.json b/packages/web/tsconfig.cssmodulehack.json new file mode 100644 index 0000000..c00a32a --- /dev/null +++ b/packages/web/tsconfig.cssmodulehack.json @@ -0,0 +1,11 @@ +{ + "files": [], + "extends": "./tsconfig.json", + "compilerOptions": { + // the typescript-plugin-css-modules only works when typescript is used as a LSP and not when "tsc" is invoked. + // Therefore when tsc is invoked, we need to disable the noPropertyAccessFromIndexSignature option. + // This is good, because its more of a lint anyways - the heavy lifting is done by the + // noUncheckedIndexedAccess rule + "noPropertyAccessFromIndexSignature": false + } +} diff --git a/packages/web/tsconfig.json b/packages/web/tsconfig.json index 6a2bd6d..df6be6d 100644 --- a/packages/web/tsconfig.json +++ b/packages/web/tsconfig.json @@ -11,7 +11,9 @@ "plugins": [ { "name": "typescript-plugin-css-modules", - "options": { "classnameTransform": "camelCase" } + "options": { + "classnameTransform": "camelCaseOnly", + } } ], "rootDirs": [".", "./.react-router/types"], diff --git a/packages/web/vite.config.ts b/packages/web/vite.config.ts index 3055fb4..568cb33 100644 --- a/packages/web/vite.config.ts +++ b/packages/web/vite.config.ts @@ -8,7 +8,9 @@ export default defineConfig({ plugins: [ checker({ biome: { command: "check", dev: { command: "lint" } }, - typescript: true, + typescript: { + tsconfigPath: "./tsconfig.cssmodulehack.json", + }, stylelint: { lintCommand: "stylelint ./app/**/*.css" }, }), reactRouter(), From ddf96e81bbfc4605d82f62f27bd329feec44eefc Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Fri, 26 Dec 2025 14:12:06 +0100 Subject: [PATCH 08/10] Add biome for json files --- .zed/settings.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.zed/settings.json b/.zed/settings.json index e42156a..45d6c30 100644 --- a/.zed/settings.json +++ b/.zed/settings.json @@ -17,6 +17,9 @@ "languages": { "TSX": { "language_servers": ["stylelint-lsp", "..."] + }, + "JSON": { + "language_servers": ["biome", "..."] } } } From b4f77693759b030beec3a50cb869741610a7e8bf Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Fri, 26 Dec 2025 14:12:06 +0100 Subject: [PATCH 09/10] Add example cssmodule --- packages/web/app/welcome/welcome.module.css | 31 +++++++++ packages/web/app/welcome/welcome.tsx | 73 ++++++++++----------- 2 files changed, 66 insertions(+), 38 deletions(-) create mode 100644 packages/web/app/welcome/welcome.module.css diff --git a/packages/web/app/welcome/welcome.module.css b/packages/web/app/welcome/welcome.module.css new file mode 100644 index 0000000..960d595 --- /dev/null +++ b/packages/web/app/welcome/welcome.module.css @@ -0,0 +1,31 @@ +.welcome { + margin: 0 auto; + display: flex; + flex-direction: column; + align-items: center; + + header { + display: flex; + flex-direction: column; + align-items: center; + width: 500px; + max-width: 100vw; + padding: 4px; + + img { + width: 100%; + } + } +} + +.links { + max-width: 300px; + width: 100%; + padding: 0 4px; + + nav { + border-radius: 48px; + border: 1px solid gray; + padding: 6px; + } +} diff --git a/packages/web/app/welcome/welcome.tsx b/packages/web/app/welcome/welcome.tsx index f4c185f..cfb28b0 100644 --- a/packages/web/app/welcome/welcome.tsx +++ b/packages/web/app/welcome/welcome.tsx @@ -1,46 +1,43 @@ import logoDark from "./logo-dark.svg"; import logoLight from "./logo-light.svg"; +import styles from "./welcome.module.css"; export function Welcome() { return ( -

-
-
-
- React Router - React Router -
-
-
+
+
+ React Router + React Router +
+
+
); From 7462e56d74b376012c77341c4607046b6c43e765 Mon Sep 17 00:00:00 2001 From: Mona Mayrhofer Date: Fri, 26 Dec 2025 14:12:06 +0100 Subject: [PATCH 10/10] Fix bun run build --- .gitignore | 2 +- packages/web/app/routes.ts | 2 +- packages/web/app/routes/home.tsx | 2 +- packages/web/package.json | 2 +- packages/web/tsconfig.json | 5 +++-- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index acf6b4a..09d7f9a 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,7 @@ node_modules # React Router .react-router/ -/build/ +build/ # misc diff --git a/packages/web/app/routes.ts b/packages/web/app/routes.ts index 102b402..38f1a4d 100644 --- a/packages/web/app/routes.ts +++ b/packages/web/app/routes.ts @@ -1,3 +1,3 @@ -import { type RouteConfig, index } from "@react-router/dev/routes"; +import { index, type RouteConfig } from "@react-router/dev/routes"; export default [index("routes/home.tsx")] satisfies RouteConfig; diff --git a/packages/web/app/routes/home.tsx b/packages/web/app/routes/home.tsx index 28efe48..cc4d73f 100644 --- a/packages/web/app/routes/home.tsx +++ b/packages/web/app/routes/home.tsx @@ -1,5 +1,5 @@ -import type { Route } from "./+types/home"; import { Welcome } from "../welcome/welcome"; +import type { Route } from "./+types/home"; export function meta(_args: Route.MetaArgs) { return [ diff --git a/packages/web/package.json b/packages/web/package.json index 5b68bc5..7b54c5e 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -7,7 +7,7 @@ "build": "react-router build", "dev": "react-router dev", "start": "react-router-serve ./build/server/index.js", - "typecheck": "react-router typegen && tsc", + "typecheck": "react-router typegen && tsc -p tsconfig.cssmodulehack.json", "test": "vitest" }, "dependencies": { diff --git a/packages/web/tsconfig.json b/packages/web/tsconfig.json index df6be6d..be26c19 100644 --- a/packages/web/tsconfig.json +++ b/packages/web/tsconfig.json @@ -2,7 +2,8 @@ "files": [], "extends": "../../tsconfig.base.json", "include": [ - "**/*", + "app/**/*", + "*.ts", "**/.server/**/*", "**/.client/**/*", ".react-router/types/**/*" @@ -12,7 +13,7 @@ { "name": "typescript-plugin-css-modules", "options": { - "classnameTransform": "camelCaseOnly", + "classnameTransform": "camelCaseOnly" } } ],