A gamified social food discovery platform built with React, TypeScript, and Supabase.
- Social Food Discovery: Share and discover amazing food spots
- Gamification: Earn XP, complete bounties and quests, climb leaderboards
- Real-time Chat: Message friends and share food experiences
- Stories & Reviews: Share your food journey through stories and reviews
- Restaurant Profiles: Detailed restaurant pages with menus and awards
- Events: Discover and join food events in your area
- Trending Content: TikTok-style vertical scrolling for food content
git clone <your-repo-url>
cd lik-app
npm installThe app uses Supabase for authentication, real-time features, and data storage.
For immediate development without backend setup, the app will run in mock mode with placeholder data.
- Create a Supabase project at supabase.com
- Copy
.env.exampleto.env - Update the environment variables:
VITE_SUPABASE_URL=your_supabase_project_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
- Run the database schema from
supabase-schema.sqlin your Supabase SQL editor - Set up authentication providers (Google, GitHub, Discord) in Supabase dashboard
See SUPABASE_SETUP.md for detailed instructions.
npm run devOpen http://localhost:5173 to view it in the browser.
src/
├── components/ # React components
├── contexts/ # React contexts (Auth, etc.)
├── hooks/ # Custom React hooks
├── lib/ # Utilities and configurations
├── assets/ # Images, icons, and media
└── styles/ # CSS and styling files
- HomeFeed: Main feed with stories and content carousels
- TrendingPage: TikTok-style vertical video feed
- LikPage: Gamification hub with bounties and quests
- SearchPage/Explore: Restaurant and dish discovery
- ProfilePage: User profiles with stats and content
- MessagesPage: Real-time chat system
- Frontend: React 19, TypeScript, Tailwind CSS
- Backend: Supabase (PostgreSQL, Real-time, Auth, Storage)
- UI Components: Radix UI, Phosphor Icons
- Animations: Framer Motion
- Build Tool: Vite
- Deployment: Optimized for Vercel/Netlify
When Supabase is not configured, the app runs in development mode with:
- Mock authentication (skip login)
- Sample data for all features
- No real-time updates
- No persistent storage
Perfect for UI development and testing!
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.