Skip to content

In development: A full stack MERN app that enables users to create a custom poll populated with restaurant data from the Yelp Fusion API so that they can conveniently choose a place to eat based on poll results.

Notifications You must be signed in to change notification settings

merriammassey/tastebuds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TasteBuds

Description

A full stack web application that enables users to create a custom poll populated with restaurant data from the Yelp Fusion API so that they can survey friends, family, or coworkers and conveniently choose a place to eat based on majority vote.

Visit the deployed app.

Note: This is a work in progress with many future updates planned including better documentation and general cleanup. I am using the project to learn, and I can make a mess along the way.

image

Table of Contents

Installation

Prerequisites

You will need MongoDB installed if you want to run this application locally. For help installing MongoDB, visit

https://docs.mongodb.com/manual/installation/

Once installed, make sure the MongoDB daemon is running with the following command line command:

$ mongod

Installing

Git clone the repository to your local machine. To connect to your local Mongo database, you will need to add an .env file in the root of your cloned repository containing the following code:

MONGO_DB="mongodb://localhost/<you decide the name here>"

Next, cd into the repository you cloned and install the necessary dependencies by running:

$ npm i

You will then be able to start the app locally by runnning:

$ npm run develop

Usage

How to use the app

The About page explains, with a carousel of three images, how users can use the app to enjoy dining out with friends and waste less time going back and forth about where everyone prefers to meet.

image

image

image

Search for venues

On the home page, a user can enter keywords and location and will be presented with a list of relevant restaurants.

image

image

Create an event

The user, now the "event author", selects several venues and continues to add an event name and notes on the next page.

image

If not signed in, the event author will be prompted to sign up or sign in. They will be prompted to do so before creating an event, or they can do so at any time via the link in the navbar.

image

From there, the event author is presented with a URL to share with invitees so they can vote. If the event author is accessing the app via a mobile device, they will be presented with a variety of options to share the poll via SMS, email, Messenger, etc.

Voting

Invitees can access the poll via the URL shared by the event author and vote for one or more venues.

image

Poll results

The event author can access poll results by selecting "My Events" from the nav bar.

image

When they click "View Event", they will be presented with a bar chart with poll results. If no one has voted yet, they will be prompted to share the poll again.

image

License

License: MIT License: MIT

Technologies

  • MongoDB
  • Apollo GraphQL
  • React
  • Context API
  • Web Share API
  • Yelp Fusion API
  • Heroku
  • React Bootstrap
  • Axios
  • JWT
  • OAuth 2.0

Contributions

See the list of contributors who participated in this project along with individual commit history.

Thank you to Fullstack Bootcamp TAs including Jude Clark, Phil Cowan, and Zack Shone.

Planned updates

At the moment, this app is a minimum viable product. We hope to make updates to improve the UI/UX, include more sophisticated authentication error handling and oAuth, and add more features including enabling invitees to add comments for the host. We also have plans to build out a mobile version of the application using React Native.

Questions

Reach out with questions.

Email:

merriammassey@gmail.com

claire.ogesen.co@gmail.com

gms1980@icloud.com

my GitHub profile

About

In development: A full stack MERN app that enables users to create a custom poll populated with restaurant data from the Yelp Fusion API so that they can conveniently choose a place to eat based on poll results.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published