Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .claude/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"permissions": {
"allow": [
"WebFetch(domain:developers.cloudflare.com)"
]
}
}
1 change: 1 addition & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"permissions": {
"allow": [
"Bash(find:*)"
]
}
}
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
"editor.defaultFormatter": "biomejs.biome"
},
"[json]": {
"editor.defaultFormatter": "biomejs.biome"
"editor.defaultFormatter": "esbenp.prettier-vscode"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The default formatter for JSON has been changed to Prettier, which is inconsistent with the project's use of Biome for other file types (like jsonc). This inconsistency is likely what caused the package.json file to be reformatted from tabs to spaces, creating a noisy diff. It is recommended to use Biome for JSON files as well to maintain consistency across the codebase.

Suggested change
"editor.defaultFormatter": "esbenp.prettier-vscode"
"editor.defaultFormatter": "biomejs.biome"

},
"[jsonc]": {
"editor.defaultFormatter": "biomejs.biome"
Expand Down
183 changes: 93 additions & 90 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,92 +1,95 @@
{
"name": "hypeterminal",
"private": true,
"type": "module",
"packageManager": "pnpm@9.15.0",
"scripts": {
"dev": "vite dev",
"build": "lingui compile && NODE_OPTIONS=--max-old-space-size=4096 vite build && node scripts/clean-worker-statics.mjs",
"build:analyze": "ANALYZE=true lingui compile && vite build",
"serve": "vite preview",
"format": "biome format",
"lint": "biome lint",
"check": "biome check",
"fix": "biome check --write",
"test": "vitest run",
"i18n:extract": "lingui extract",
"i18n:compile": "lingui compile",
"prepare": "lefthook install",
"perf:bundle": "npx vite-bundle-visualizer",
"perf:compare": "node scripts/compare-bundle.js",
"perf:ws-soak:30m": "WS_SOAK_RUN=true WS_SOAK_DURATION_MS=1800000 WS_SOAK_SAMPLE_MS=1000 WS_SOAK_OP_MS=10 vitest run src/lib/tests/websocket-soak.test.ts",
"perf:ws-soak:60m": "WS_SOAK_RUN=true WS_SOAK_DURATION_MS=3600000 WS_SOAK_SAMPLE_MS=1000 WS_SOAK_OP_MS=10 vitest run src/lib/tests/websocket-soak.test.ts"
},
"dependencies": {
"@fontsource-variable/ibm-plex-sans": "5.2.8",
"@lingui/core": "5.7.0",
"@lingui/react": "5.7.0",
"@marsidev/react-turnstile": "^1.4.2",
"@nktkas/hyperliquid": "0.31.0",
"@phosphor-icons/react": "2.1.10",
"@privy-io/react-auth": "^3.17.0",
"@privy-io/wagmi": "^4.0.2",
"@tanstack/react-query": "5.66.5",
"@tanstack/react-router": "1.132.0",
"@tanstack/react-router-ssr-query": "1.131.7",
"@tanstack/react-start": "1.132.0",
"@tanstack/react-table": "8.21.3",
"@tanstack/react-virtual": "3.13.13",
"big.js": "7.0.1",
"class-variance-authority": "0.7.1",
"clsx": "2.1.1",
"cmdk": "1.1.1",
"events": "^3.3.0",
"klinecharts": "9.8.12",
"motion": "12.33.0",
"radix-ui": "1.4.3",
"react": "19.2.0",
"react-dom": "19.2.0",
"react-resizable-panels": "4.6.0",
"recharts": "2.15.4",
"sonner": "2.0.7",
"tailwind-merge": "3.4.0",
"tailwindcss": "4.0.6",
"tw-animate-css": "1.4.0",
"vaul": "1.1.2",
"viem": "2.42.1",
"vite-plugin-node-polyfills": "^0.25.0",
"wagmi": "3.1.0",
"zod": "4.3.4",
"zustand": "5.0.9"
},
"devDependencies": {
"@biomejs/biome": "2.2.4",
"@commitlint/cli": "^20.3.1",
"@commitlint/config-conventional": "^20.3.1",
"@lingui/babel-plugin-lingui-macro": "^5.7.0",
"@lingui/cli": "^5.7.0",
"@lingui/vite-plugin": "^5.7.0",
"@tailwindcss/vite": "^4.0.6",
"@tanstack/router-plugin": "^1.132.0",
"@types/big.js": "^6.2.2",
"@types/node": "^22.10.2",
"@types/react": "^19.2.0",
"@types/react-dom": "^19.2.0",
"@vitejs/plugin-react": "^5.0.4",
"babel-plugin-react-compiler": "^1.0.0",
"lefthook": "^1.11.0",
"nitro": "latest",
"rollup-plugin-visualizer": "^6.0.5",
"shadcn": "^3.8.3",
"typescript": "^5.7.2",
"vite": "^7.1.7",
"vite-bundle-analyzer": "^1.3.2",
"vite-tsconfig-paths": "^5.1.4",
"vitest": "^4.0.16"
},
"pnpm": {
"overrides": {
"@noble/hashes": "1.8.0"
}
}
"name": "hyperterminal",
"private": true,
"type": "module",
"packageManager": "pnpm@9.15.0",
"scripts": {
"dev": "vite dev",
"build": "lingui compile && NODE_OPTIONS=--max-old-space-size=4096 vite build && node scripts/clean-worker-statics.mjs",
"build:analyze": "ANALYZE=true lingui compile && vite build",
"serve": "vite preview",
"format": "biome format",
"lint": "biome lint",
"check": "biome check",
"fix": "biome check --write",
"test": "vitest run",
"i18n:extract": "lingui extract",
"i18n:compile": "lingui compile",
"prepare": "lefthook install",
"perf:bundle": "npx vite-bundle-visualizer",
"perf:compare": "node scripts/compare-bundle.js",
"perf:ws-soak:30m": "WS_SOAK_RUN=true WS_SOAK_DURATION_MS=1800000 WS_SOAK_SAMPLE_MS=1000 WS_SOAK_OP_MS=10 vitest run src/lib/tests/websocket-soak.test.ts",
"perf:ws-soak:60m": "WS_SOAK_RUN=true WS_SOAK_DURATION_MS=3600000 WS_SOAK_SAMPLE_MS=1000 WS_SOAK_OP_MS=10 vitest run src/lib/tests/websocket-soak.test.ts",
"clean": "rm -rf node_modules dist .output .wrangler"
},
"dependencies": {
"@fontsource-variable/ibm-plex-sans": "5.2.8",
"@lingui/core": "5.7.0",
"@lingui/react": "5.7.0",
"@marsidev/react-turnstile": "^1.4.2",
"@nktkas/hyperliquid": "0.31.0",
"@phosphor-icons/react": "2.1.10",
"@privy-io/react-auth": "^3.17.0",
"@privy-io/wagmi": "^4.0.2",
"@tanstack/react-query": "5.66.5",
"@tanstack/react-router": "1.132.0",
"@tanstack/react-start": "1.132.0",
"@tanstack/react-table": "8.21.3",
"@tanstack/react-virtual": "3.13.13",
"big.js": "7.0.1",
"class-variance-authority": "0.7.1",
"clsx": "2.1.1",
"cmdk": "1.1.1",
"events": "^3.3.0",
"klinecharts": "9.8.12",
"motion": "12.33.0",
"radix-ui": "1.4.3",
"react": "19.2.0",
"react-dom": "19.2.0",
"react-resizable-panels": "4.6.0",
"recharts": "2.15.4",
"sonner": "2.0.7",
"tailwind-merge": "3.4.0",
"tailwindcss": "4.0.6",
"tw-animate-css": "1.4.0",
"vaul": "1.1.2",
"viem": "2.42.1",
"vite-plugin-node-polyfills": "^0.25.0",
"wagmi": "3.1.0",
"zod": "4.3.4",
"zustand": "5.0.9"
},
"devDependencies": {
"@biomejs/biome": "2.2.4",
"@commitlint/cli": "^20.3.1",
"@commitlint/config-conventional": "^20.3.1",
"@lingui/babel-plugin-lingui-macro": "^5.7.0",
"@lingui/cli": "^5.7.0",
"@lingui/vite-plugin": "^5.7.0",
"@tailwindcss/vite": "^4.0.6",
"@tanstack/router-plugin": "^1.132.0",
"@types/big.js": "^6.2.2",
"@types/node": "^22.10.2",
"@types/react": "^19.2.0",
"@types/react-dom": "^19.2.0",
"@vitejs/plugin-react": "^5.0.4",
"babel-plugin-react-compiler": "^1.0.0",
"lefthook": "^1.11.0",
"nitro": "3.0.260311-beta",
"rollup-plugin-visualizer": "^6.0.5",
"shadcn": "^3.8.3",
"typescript": "^5.7.2",
"vite": "^7.1.7",
"vite-bundle-analyzer": "^1.3.2",
"vite-tsconfig-paths": "^5.1.4",
"vitest": "^4.0.16"
},
"pnpm": {
"overrides": {
"@noble/hashes": "1.8.0"
},
"patchedDependencies": {
"@tanstack/start-plugin-core@1.132.0": "patches/@tanstack__start-plugin-core@1.132.0.patch"
}
}
}
24 changes: 24 additions & 0 deletions patches/@tanstack__start-plugin-core@1.132.0.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
diff --git a/dist/esm/start-manifest-plugin/plugin.js b/dist/esm/start-manifest-plugin/plugin.js
index a708b72a74c98ab060461d3656b64ff099bfd5b8..0176b52efc393d7275aa85e29e451887b3f1eb66 100644
--- a/dist/esm/start-manifest-plugin/plugin.js
+++ b/dist/esm/start-manifest-plugin/plugin.js
@@ -4,7 +4,9 @@ import { VIRTUAL_MODULES } from "@tanstack/start-server-core";
import { tsrSplit } from "@tanstack/router-plugin";
import { resolveViteId } from "../utils.js";
import { ENTRY_POINTS } from "../constants.js";
-const getCSSRecursively = (chunk, chunksByFileName, basePath) => {
+const getCSSRecursively = (chunk, chunksByFileName, basePath, visited = new Set()) => {
+ if (visited.has(chunk.fileName)) return [];
+ visited.add(chunk.fileName);
const result = [];
for (const cssFile of chunk.viteMetadata?.importedCss ?? []) {
result.push({
@@ -20,7 +22,7 @@ const getCSSRecursively = (chunk, chunksByFileName, basePath) => {
const importedChunk = chunksByFileName.get(importedFileName);
if (importedChunk) {
result.push(
- ...getCSSRecursively(importedChunk, chunksByFileName, basePath)
+ ...getCSSRecursively(importedChunk, chunksByFileName, basePath, visited)
);
}
}
47 changes: 8 additions & 39 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 0 additions & 3 deletions src/router.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { createRouter } from "@tanstack/react-router";
import { setupRouterSsrQueryIntegration } from "@tanstack/react-router-ssr-query";
import { getRootProviderContext, RootProvider } from "@/providers/root";
import { routeTree } from "./routeTree.gen";

Expand All @@ -15,7 +14,5 @@ export const getRouter = () => {
},
});

setupRouterSsrQueryIntegration({ router, queryClient: rqContext.queryClient });

return router;
};
4 changes: 1 addition & 3 deletions vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ const config = defineConfig({
nodePolyfills({ include: ['buffer'], globals: { Buffer: true } }),
ssrStubPlugin,
nitro({
preset: 'cloudflare-pages',
compressPublicAssets: true,
minify: true,
rollupConfig: {
Expand All @@ -160,9 +161,6 @@ const config = defineConfig({
},
},
routeRules: {
'/api/faucet/**': {
proxy: 'https://usdh.com/api/faucet/**',
},
'/assets/**': {
headers: { 'cache-control': 'public, max-age=31536000, immutable' },
},
Expand Down
Loading