docs: map existing codebase
This commit is contained in:
118
.planning/codebase/STACK.md
Normal file
118
.planning/codebase/STACK.md
Normal file
@@ -0,0 +1,118 @@
|
||||
# Technology Stack
|
||||
|
||||
**Analysis Date:** 2026-03-16
|
||||
|
||||
## Languages
|
||||
|
||||
**Primary:**
|
||||
- TypeScript ~5.9.3 - Full codebase type safety
|
||||
|
||||
**Secondary:**
|
||||
- JavaScript (ES2023) - Configuration and utilities
|
||||
|
||||
## Runtime
|
||||
|
||||
**Environment:**
|
||||
- Browser (React 19 SPA)
|
||||
- Node.js runtime for build tooling
|
||||
|
||||
**Package Manager:**
|
||||
- Bun - Package and dependency management
|
||||
- Lockfile: `bun.lock` (present)
|
||||
|
||||
## Frameworks
|
||||
|
||||
**Core:**
|
||||
- React 19.2.4 - UI component framework
|
||||
- React Router DOM 7.13.1 - Client-side routing
|
||||
|
||||
**UI & Components:**
|
||||
- Radix UI 1.4.3 - Accessible component primitives
|
||||
- Tailwind CSS 4.2.1 - Utility-first CSS styling
|
||||
- Lucide React 0.577.0 - Icon library
|
||||
- Sonner 2.0.7 - Toast notification system
|
||||
- next-themes 0.4.6 - Dark mode and theme management
|
||||
|
||||
**State Management:**
|
||||
- TanStack React Query 5.90.21 - Server state management and data fetching
|
||||
|
||||
**Internationalization:**
|
||||
- i18next 25.8.18 - i18n framework
|
||||
- react-i18next 16.5.8 - React bindings for i18next
|
||||
|
||||
**Testing:**
|
||||
- Not detected
|
||||
|
||||
**Build/Dev:**
|
||||
- Vite 8.0.0 - Build tool and dev server
|
||||
- @vitejs/plugin-react 6.0.0 - React Fast Refresh support
|
||||
- @tailwindcss/vite 4.2.1 - Tailwind CSS Vite plugin
|
||||
- Tailwind Merge 3.5.0 - CSS class utility merging
|
||||
- Class Variance Authority 0.7.1 - CSS variant composition
|
||||
- clsx 2.1.1 - Conditional CSS class binding
|
||||
|
||||
**Linting & Code Quality:**
|
||||
- ESLint 9.39.4 - JavaScript/TypeScript linting
|
||||
- @eslint/js 9.39.4 - ESLint JS config
|
||||
- typescript-eslint 8.56.1 - TypeScript linting rules
|
||||
- eslint-plugin-react-hooks 7.0.1 - React Hooks best practices
|
||||
- eslint-plugin-react-refresh 0.5.2 - React Fast Refresh plugin
|
||||
|
||||
## Key Dependencies
|
||||
|
||||
**Critical:**
|
||||
- @supabase/supabase-js 2.99.1 - Backend API and authentication client
|
||||
|
||||
**Infrastructure:**
|
||||
- @types/node 24.12.0 - TypeScript Node.js type definitions
|
||||
- @types/react 19.2.14 - React TypeScript types
|
||||
- @types/react-dom 19.2.3 - React DOM TypeScript types
|
||||
- globals 17.4.0 - Global scope definitions for ESLint
|
||||
|
||||
## Configuration
|
||||
|
||||
**Environment:**
|
||||
- Vite environment variables with `VITE_` prefix
|
||||
- Required env vars: `VITE_SUPABASE_URL`, `VITE_SUPABASE_ANON_KEY`
|
||||
- Configuration via `.env` file (example provided in `.env.example`)
|
||||
|
||||
**Build:**
|
||||
- Vite config: `vite.config.ts`
|
||||
- React plugin enabled
|
||||
- Tailwind CSS via @tailwindcss/vite
|
||||
- Path alias: `@/` resolves to `./src/`
|
||||
- TypeScript config: `tsconfig.json` (references `tsconfig.app.json` and `tsconfig.node.json`)
|
||||
- Target: ES2023
|
||||
- Strict mode enabled
|
||||
- No unused locals/parameters enforcement
|
||||
- ESLint config: `eslint.config.js`
|
||||
- Flat config format
|
||||
- Recommended configs: JS, TypeScript, React Hooks, React Refresh
|
||||
- Browser globals enabled
|
||||
|
||||
## TypeScript Configuration
|
||||
|
||||
**tsconfig.app.json:**
|
||||
- Target: ES2023
|
||||
- Module: ESNext
|
||||
- Strict mode: Enabled
|
||||
- JSX: react-jsx
|
||||
- No emit: True (code generation disabled)
|
||||
- Path alias: `@/*` → `./src/*`
|
||||
- Verbatim module syntax enabled
|
||||
|
||||
## Platform Requirements
|
||||
|
||||
**Development:**
|
||||
- Node.js/Bun runtime
|
||||
- Modern browser with ES2023 support
|
||||
- Recommended: 18+ GB disk for `node_modules`
|
||||
|
||||
**Production:**
|
||||
- SPA deployment (static hosting)
|
||||
- Supabase PostgreSQL backend access
|
||||
- Modern browser JavaScript support (ES2023)
|
||||
|
||||
---
|
||||
|
||||
*Stack analysis: 2026-03-16*
|
||||
Reference in New Issue
Block a user