offline-first, p2p synced, atproto enabled, feed reader
1{
2 "compilerOptions": {
3 // tsx compatibility
4 "moduleDetection": "force",
5 "noEmit": true,
6
7 // Modern JavaScript support
8 "target": "es2024",
9 "module": "Preserve",
10 "moduleResolution": "bundler",
11 "allowSyntheticDefaultImports": true,
12 "esModuleInterop": true,
13
14 // Strict type checking
15 "strict": true,
16 "noImplicitAny": true,
17 "strictNullChecks": true,
18 "strictFunctionTypes": true,
19
20 // JSX support for Solid
21 "jsx": "preserve",
22 "jsxImportSource": "solid-js",
23
24 // Path mapping to match Vite config
25 "baseUrl": ".",
26 "paths": {
27 "#app/*": ["./src/app/*"],
28 "#feedline/*": ["./src/feedline/*"],
29 "#lib/*": ["./src/lib/*"],
30 "#realm/*": ["./src/realm/*"],
31 "#spec/*": ["./src/spec/*"]
32 },
33
34 // Additional helpful options
35 "skipLibCheck": true,
36 "forceConsistentCasingInFileNames": true,
37 "resolveJsonModule": true,
38 "isolatedModules": true,
39
40 // we're not really building, but typechecking can still use increment
41 "incremental": true,
42 "tsBuildInfoFile": "./.tsbuildinfo",
43
44 // Node.js types
45 "types": ["node"],
46 "lib": ["es2024", "DOM", "DOM.Iterable", "DOM.AsyncIterable"]
47 },
48
49 "include": [
50 "src/**/*",
51 "node_modules/vite/client.d.ts",
52 "vite.config.js",
53 "vitest.config.ts",
54 "vitest.setup.ts",
55 "eslint.config.js"
56 ],
57 "exclude": ["node_modules", "dist", "docs", "tmp"]
58}