Skip to content

Pages and Components

Lavesh Paryani edited this page Sep 26, 2026 · 1 revision

Pages and Components

All routes are hash routes under https://stackified.github.io/euphoric/#/..., declared in frontend/src/App.jsx.

Routed pages

Route File Content and data source
/ pages/Home.jsx Hero, ServicesPreview, QuickActionBox, EventsPreview, GalleryPreview, AboutEuphoric
/about pages/About.jsx Brand story and mission (text in the component)
/services pages/Services.jsx Twelve event types (corporate, wedding, exhibition, college, charity, festival, fashion show, inauguration, social, live concert, private party, club)
/gallery pages/Gallery.jsx Photo grid from utils/imageImports.js with a modal viewer and previous / next navigation
/events pages/Events.jsx Event cards from the Redux events slice (data/events.json)
/contact pages/Contact.jsx Phone, WhatsApp, email and Instagram links, plus a "save contact" button that generates a .vcf file in the browser
/links pages/Links.jsx Link-in-bio style list (Instagram accounts, video drafts, YouTube)
/enquiry pages/Enquiry.jsx Enquiry form (name, email, phone, message) sent through EmailJS

Navbar items: Home, Upcoming Events, Gallery, Services, Contact. The Footer adds a Videos link.

Built but not routed

These files are complete but switched off in App.jsx, Navbar.jsx and Home.jsx (commented out), so they can be re-enabled without new code:

File What it does
pages/Videos.jsx + components/videos/VideoGallery.jsx Video grid with hover previews, remembered playback position, keyboard navigation (arrows, space, escape) and a full-screen view
components/videos/VideoPlayer.jsx Custom player: seek bar, volume, fullscreen, keyboard shortcuts, buffering state, start time
components/FeaturedVideos.jsx Home-page video showcase linking to /videos
pages/Feedbacks.jsx Reviews from data/reviews.json plus a feedback form sent through EmailJS

The videos they use live in frontend/src/assets/ under Git LFS and are listed in utils/videoImports.js with titles and descriptions.

Shared components

Component Role
Navbar.jsx Fixed, responsive navigation with a mobile menu
Footer.jsx Quick links and copyright line
Hero.jsx Full-screen hero with image background and contact buttons (call, WhatsApp, email, Instagram)
ServicesPreview.jsx, EventsPreview.jsx, GalleryPreview.jsx Home-page teasers for the full pages
QuickActionBox.jsx WhatsApp and Instagram call-to-action buttons
AboutEuphoric.jsx About section on the home page
CookieBanner.jsx Consent banner; choice stored in localStorage through the cookies slice
Alert.jsx + context/AlertContext.jsx + hooks/useAlert.js Toast notifications (used by the forms)
Loader.jsx, PageLoader.jsx Spinner and first-load overlay

Updating content

To change Edit
Events frontend/src/data/events.json (id, title, date, location, image, description)
Gallery photos Add the file to frontend/src/assets/, then import it and add it to the arrays in utils/imageImports.js
Services The services array in pages/Services.jsx
Social and contact links Hero.jsx, QuickActionBox.jsx, Contact.jsx, Links.jsx
Enquiry email destination The EmailJS template (and to_email in pages/Enquiry.jsx)

Every content change needs a rebuild, which happens automatically on push to main.

Clone this wiki locally