Skip to content

local-taste/dine-with-locals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

536 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Local Taste - One Plate at a Time ๐Ÿฝ๏ธ๐ŸŒŽ

Looking for a more authentic way to experience a new place? Discover home-cooked meals, explore hidden neighborhood restaurants, join unique food events, and share unforgettable moments with hosts who know the city best. Local Taste helps travelers connect with people, stories, and places โ€” all through the shared joy of cuisine, one plate at a time.

Home Page

Contributors

Special thanks to our project advisors:

Technologies

  • Front-end: React.js (TypeScript), Shadcn UI, TailwindCSS, Socket.io (Client)
  • Back-end: Node.js (TypeScript), Express, Socket.io (Server)
  • Database: MongoDB, Cloudinary
  • APIs / External Integrations: Google Maps / Places, Google OAuth, Stripe Payments, Cloudinary, WebSocket
  • Testing: Jest, Vitest
  • Deployment: AWS EC2, Docker, AWS Amplify, AWS S3
  • CI/CD: GitHub Actions

System Design Flow

System Design Diagram

System Design Diagram

Deploy Diagram

Deploy Diagram

Features

1. Authentication and authorization

  • Secure login with JWT-based authentication. Supports Google OAuth for quick sign-in.

  • Two primary user roles:

    • Guest (Traveler): Discover and book authentic experiences.
    • Host: Share your culture and cuisine with travelers.

Authentication

2. Browse and view upcoming events

Dashboard view

  • Guests: View recommended upcoming food events.
  • Hosts: See requests from travelers wanting to join.
  • Track confirmed bookings in one place.
  • View more events per page, with dynamic filters to select relevant experiences

Dashboard

3. Find nearby events and places with Google Maps!

  • Discover hosts, requests, and events visually with Google Maps integration.
  • Restaurant data (ratings, reviews, price range) powered by Google Places.

Discover Places

4. Book and securely confirm payment for an experience

  • For guests: Confirm your interest in joining a local host at an event. Note that the decision depends on the host!

  • For experiences with an associated fee, check out securely with payment supported by Stripe! Once the host approves your booking, payment will be authorized and sent to the host from Stripe.

Confirm Booking

5. [Host] Manage your Listed Experiences

  • View guests who indicated interest in your booking and approve/reject the requests.

Manage Booking

6. Chat with hosts/guests

  • Contact the host about an experience via chat to ask questions!

  • For confirmed experience, the host can create a broadcast channel or group chat to streamline communication.

Chat

7. Social Feed and Real-time Notifications

  • Write, share, and view friends' posts about traveling and cuisine.

  • Link your post to a recent experience to spread and share with others!

  • Like and comment on others' posts to express interest!

Feed

Notifications

  • Get real-time notifications when people interact with your post.

Notification

8. Manage and View Profiles

  • View others' profiles, including their basic information, recent posts and reviews, and some fun statistics

  • Manage and edit your own profile, including profile and cover pictures

Profile

Getting Started (For Developers)

# Clone repo
git clone https://github.com/local-taste/dine-with-locals.git

# Install dependencies
npm install

# Start client-side development server:
cd client
npm install
npm run dev

# Start server-side development:
cd server
npm install
npm run dev

Roadmap (Next Steps)

  • Friendship system + visibility controls
  • AI-driven personalized event recommendations
  • Multi-language support
  • Mobile app (React Native)

License

MIT License โ€” feel free to fork, contribute, and build upon Local Taste!

About

If you're a travel enthusiast and you want to enjoy local experiences, Local Taste is for you.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages