How celihong/hackathon_crown_beer works
Cambodian Craft Beer Crown 2025 is an event information and promotion site. Visitors can explore the event homepage, brewery directory, schedule, awards, and sponsors; voting links lead to an external form. A separate vote-form component supports rating beers and can submit to a configured endpoint or save votes in browser storage. The route and component excerpts support these features, but do not show the vote form being mounted on a page; that connection is therefore omitted.
Main entry points: Header.tsx Navigation Header · page.tsx Event Home · layout.tsx App Layout · VoteForm.tsx Vote Form
Components 15
Site Shell
- App Layout
src/app/layout.tsx - Navigation Header
src/components/Header.tsx - Event Footer
src/components/Footer.tsx
Event Information
- Event Home
src/app/page.tsx - Brewery Directory
src/app/breweries/page.tsx - Event Schedule
src/app/schedule/page.tsx - Awards Overview
src/app/awards/page.tsx - Sponsor Directory
src/app/sponsors/page.tsx
Voting
- Beer Catalog
src/utils/beers.ts - Beer Card
src/components/BeerCard.tsx - Vote Form
src/components/VoteForm.tsx
Other components
- Visitor
- Configured Vote Endpoint
- Browser Local Storage
- External Voting Form
Connections 14
- App Layout → Navigation Header: renders
src/app/layout.tsx - App Layout → Event Footer: renders
src/app/layout.tsx - Navigation Header → Event Home: links to
src/components/Header.tsx - Navigation Header → Brewery Directory: links to
src/components/Header.tsx - Navigation Header → Event Schedule: links to
src/components/Header.tsx - Navigation Header → Awards Overview: links to
src/components/Header.tsx - Navigation Header → Sponsor Directory: links to
src/components/Header.tsx - Event Home → Brewery Directory: links to
src/app/page.tsx - Event Home → Awards Overview: links to
src/app/page.tsx - Event Home → External Voting Form: opens
src/app/page.tsx - Navigation Header → External Voting Form: opens
src/components/Header.tsx - Beer Card → Beer Catalog: uses type
src/components/BeerCard.tsx - Vote Form → Configured Vote Endpoint: posts vote
src/components/VoteForm.tsx - Vote Form → Browser Local Storage: saves fallback
src/components/VoteForm.tsx