Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.grouple.pro/llms.txt

Use this file to discover all available pages before exploring further.

Tech Stack

  • Framework: React + TypeScript
  • Build Tool: Vite
  • Styling: Tailwind CSS + shadcn/ui components
  • State: React Context (AuthContext, CurrencyContext, OnboardingContext)
  • Database Client: Supabase JS client (direct CRUD + JWT auth)
  • Hosting: AWS Amplify (auto-deploys from GitHub main branch)

Application Structure

The frontend is split into two distinct user-facing applications within the same codebase:

Customer App (client/components/endcustomers/)

For event planners and customers discovering venues and submitting enquiries.
SectionPathDescription
HeroHomePage/HeroSection.tsxMain hero banner
Browse All ListingsHomePage/BrowseAllListings.tsxFull venue listing/search
Featured VenuesHomePage/FeaturedVenues.tsxHighlighted/featured venues
Venue CategoriesHomePage/VenueCategories.tsxBrowse by venue category
Venue ShowcaseHomePage/VenueShowcase.tsxVenue spotlight section
Event TypesHomePage/EventTypes.tsxBrowse by event type
How It WorksHomePage/HowItWorks.tsxPlatform explainer section
Why ChooseHomePage/WhyChoose.tsxValue proposition section
TestimonialsHomePage/Testimonials.tsxCustomer testimonials
Logo ScrollerHomePage/LogoScroller.tsxPartner/venue logos
CTAHomePage/CTA.tsxCall to action section
FAQHomePage/FAQ.tsxFrequently asked questions
FooterHomePage/MainFooter.tsxSite footer
LegalHomePage/Legal/Terms, privacy policy pages
Enquiry SubmissionEnquiries/steps/Multi-step enquiry form
My EnquiriesPages/MyEnquiriesPage.tsxCustomer enquiries dashboard
Venue DetailPages/VenueDetail.tsxIndividual venue page
Venue EnquiryPages/VenueEnquiryPage.tsxEnquiry from venue page
ComparePages/Compare.tsxCompare multiple proposals
ProposalsProposals/ProposalTemplate.tsxView and confirm proposals
ProfileCostomerProfile/Customer profile management
LoginPages/Login.tsxCustomer login
Sign UpPages/SignUp.tsxCustomer registration

Merchant App (client/components/merchant/)

For venue owners and managers managing leads, proposals, and settings.
SectionPathDescription
Dashboarddashboard/Stats (Active Leads, Total Leads, Avg Lead Value, Avg Group Size), Active Leads table, Top Category, Lead Distribution chart
Leadsleads/All leads with tabs: Pending, Accepted, Declined, Connected, Closed Won, Closed Lost, All. Filter by Event Type + Budget
Add Leadleads/AddLeads/Add leads via: Import CSV (from Tripleseat, EventTemple etc.) or Add Manually. Added leads appear in Accepted tab
RFQ Detailrfq-details/Full enquiry detail: event type, group size, date, time, venue, food preference, requirements, budget range, customer details. Accept / Decline actions
Send Proposalsend proposal/AI-assisted proposal editor with package selection from Sales Library
Proposalse-proposals merchant/All proposals with tabs: Sent, Viewed, Confirmed, Rejected, Expired, All. Shows RFQ ID, recipient, quote amount, venue, event date, sent date, expiry date. List + Calendar view
Propertiespages/VenueListingsPage.tsxManage venues — view, activate/deactivate, add new venue
Sales Librarysettings/package extract/Upload PDF brochures → AI-powered extraction of packages, inclusions, pricing. Manage global packages used in proposals
Analyticsanalytics/Avg Lead Value, Win Rate, Lifetime Value, Avg Group Size. Leads Over Time chart (Month/Quarter/Year). Export Data. Filter by venue
Settingssettings/3 tabs: Account (profile info), Plan & Billing (subscription), Global Settings
Onboardingonboarding/3-step merchant onboarding flow

Shared Utilities (client/shared/)

FilePurpose
supabaseClient.tsSupabase JS client initialisation
api.tsAPI utility functions for backend calls
currencies.tsCurrency formatting helpers
timeOptions.tsTime slot options for enquiry forms

Authentication Flow

User visits grouple.pro

Supabase Auth (GoTrue) → login/signup

JWT token stored in AuthContext

Frontend uses JWT for:
  - Direct Supabase CRUD (RLS enforced)
  - API requests to api.grouple.pro (Authorization: Bearer <JWT>)

Deployment

  • GitHub main branch → auto-deploys to AWS Amplify
  • Environment variables managed in AWS Amplify console
  • Custom domain grouple.pro via Route 53