Files
ragusaitweb/context/current-project.md
Melvin Ragusa b5f54b8675 docs: add project context from analysis
- Tech stack: React 19, Vite, TypeScript, i18n
- Key config and directory structure
2026-02-14 09:07:23 +00:00

61 lines
2.1 KiB
Markdown

# ragusaitweb (Ragusa IT-Consulting website)
## Project name
- `ragusaitweb` (from `package.json`)
## Purpose
- Company website / marketing site for Ragusa IT-Consulting.
- React SPA with routing, animations, i18n (English/German), and a contact form (EmailJS).
- Production deployment configured for Firebase Hosting.
## Tech stack (from `package.json`)
**Dependencies**
- `react` `^19.2.3`
- `react-dom` `^19.2.3`
- `react-router-dom` `^7.12.0`
- `motion` `^12.28.1`
- `ogl` `^1.0.11`
- `@emailjs/browser` `^4.4.1`
- `react-icons` `^5.5.0`
**Dev dependencies**
- `vite` `^7.3.1`
- `@vitejs/plugin-react` `^5.1.2`
- `typescript` `^5.9.3`
- `vitest` `^4.0.17`
- `jsdom` `^27.4.0`
- `@testing-library/react` `^16.3.2`
- `@testing-library/dom` `^10.4.1`
- `@types/react` `^19.2.9`
- `@types/react-dom` `^19.2.3`
**Notables**
- ESM project (`"type": "module"`).
## Key config files
- `vite.config.ts`: Vite + React plugin; dev server `port: 3000`; build output to `build/`; manual chunk for `motion`.
- `tsconfig.json`: strict TS, `moduleResolution: bundler`, `noEmit: true`.
- `tsconfig.node.json`: TS config for `vite.config.ts` (project reference).
- `index.html`: Vite entry HTML.
- `firebase.json`: Firebase Hosting (serves `build/`, SPA rewrite, security headers + CSP).
- `.firebaserc`: Firebase project mapping.
- `.env.example`: expected `VITE_EMAILJS_*` vars.
- `AGENTS.md`: repo coding/testing conventions.
## Directory structure
- `public/`: static assets
- `src/`: application source
- `src/components/`
- `src/components/effects/`: visual effects (e.g. `GradientBlinds`)
- `src/components/layout/`: layout components (Navbar/Footer/FancyCursor)
- `src/components/sections/`: page sections (Hero/Services)
- `src/components/ui/`: reusable UI components (Button/Input/Card/Modal/PageLoader)
- `src/hooks/`: custom hooks (+ tests)
- `src/i18n/`: translations + i18n wiring (+ tests)
- `src/pages/`: route components (+ tests)
- `src/styles/`: global styling (`global.css`, `theme.css`)
- `src/utils/`: utilities (+ tests)
- `src/main.tsx`: app entrypoint
- `src/App.tsx`: routing/app shell
- `src/config.ts`: app configuration