How flamy101/project works
ArvoAjo is a driving-school website for presenting courses, instructors, training and payment information, and helping visitors contact or register with the school. The app routes visitors to these page areas; the contacts page combines contact details, a map and a form, while the server exposes a registration-email endpoint. Source excerpts confirm the page routing and some component relationships, but not how the form submits or how the blog and training details are implemented, so those links are omitted.
Main entry points: App.tsx Page router · Contacts.tsx Contacts page · main.tsx React entry · CoursesAndPrices.tsx Courses and prices
Components 28
Application shell
- React entry
client/src/main.tsx - Language context
client/src/hooks/LanguageContext.tsx - Page router
client/src/App.tsx - Header navigation
client/src/components/Header.tsx - Footer links
client/src/components/footer/Footer.tsx - Translation hook
client/src/hooks/UseTranslate.tsx
Courses and learning
- Training
client/src/pages/training/Training.tsx - Courses and prices
client/src/pages/coursesAndPrices/CoursesAndPrices.tsx - Course catalog
client/src/pages/coursesAndPrices/components/data/CoursesData.tsx - Payment information
client/src/pages/payment/Payment.tsx - Payment details
client/src/pages/payment/components/PaymentData.tsx
School information
- Home
client/src/pages/home/Home.tsx - Home content
client/src/pages/home/data/data.tsx - Home gallery
client/src/pages/home/components/imageGallary/ImageGallery.tsx - Instructors
client/src/pages/instructors/Instructors.tsx - Instructor profiles
client/src/pages/instructors/components/data/Instructors_data.tsx
Contact and enrollment
- Contacts page
client/src/pages/contacts/Contacts.tsx - Contact form
client/src/pages/contacts/components/form/Form.tsx - Registration submit
client/src/pages/contacts/components/form/SubmitRegistration.tsx - Location map
client/src/pages/contacts/components/googleMap/Map.tsx - Registration endpoint
server/index.js
Site content
- Blog
client/src/pages/blog/Blog.tsx - Blog image gallery
client/src/pages/blog/components/BlogImgGallary/BlogImgGallary.tsx - Blog redirects
client/src/pages/blog/components/BlogRedirects/BlogRedirects.tsx - Privacy policy
client/src/components/PrivacyPolicy/PrivacyPolicy.tsx
Other components
- Visitor
- Ethereal SMTP
- Supabase storage
Connections 28
- Visitor → React entry: opens site
- React entry → Language context: wraps app
- React entry → Page router: renders
- Page router → Header navigation: renders
- Page router → Footer links: renders
- Page router → Home: routes to
- Page router → Training: routes to
- Page router → Courses and prices: routes to
- Page router → Instructors: routes to
- Page router → Payment information: routes to
- Page router → Contacts page: routes to
- Page router → Blog: routes to
- Page router → Privacy policy: routes to
- Home → Home content: reads content
- Home → Home gallery: renders
- Home content → Supabase storage: image URLs
- Courses and prices → Course catalog: reads catalog
- Courses and prices → Translation hook: translates
- Instructors → Instructor profiles: reads profiles
- Instructors → Translation hook: translates
- Payment information → Payment details: reads details
- Contacts page → Contact form: renders form
- Contacts page → Location map: renders map
- Contacts page → Translation hook: translates
- Contact form → Registration submit: submits via
- Registration endpoint → Ethereal SMTP: sends email
- Blog → Blog image gallery: renders gallery
- Blog → Blog redirects: renders redirects