2.1 KiB
2.1 KiB
ragusaitweb (Ragusa IT-Consulting website)
Project name
ragusaitweb(frompackage.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.3react-dom^19.2.3react-router-dom^7.12.0motion^12.28.1ogl^1.0.11@emailjs/browser^4.4.1react-icons^5.5.0
Dev dependencies
vite^7.3.1@vitejs/plugin-react^5.1.2typescript^5.9.3vitest^4.0.17jsdom^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 serverport: 3000; build output tobuild/; manual chunk formotion.tsconfig.json: strict TS,moduleResolution: bundler,noEmit: true.tsconfig.node.json: TS config forvite.config.ts(project reference).index.html: Vite entry HTML.firebase.json: Firebase Hosting (servesbuild/, SPA rewrite, security headers + CSP)..firebaserc: Firebase project mapping..env.example: expectedVITE_EMAILJS_*vars.AGENTS.md: repo coding/testing conventions.
Directory structure
public/: static assetssrc/: application sourcesrc/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 entrypointsrc/App.tsx: routing/app shellsrc/config.ts: app configuration