Eat-Local / eat-local-fe

https://eatlocal.vercel.app/
0 stars 1 forks source link

Eat Local

Support your local businesses!

Deploy Link* | Explore The FE Docs » | Explore The BE Docs »

*use this login email for access to user features: BillyB@fakeemail.com

Table of Contents
  1. About The Project
  2. Setup
  3. Roadmap
  4. Features
  5. Contact
## About The Project Are you looking to support local businesses? Look no further! This accessible application allows you to search by city, state, zipcode, the name of a business, and just about anything else to help you find restaurants, markets, and breweries local to your area. Click a business to learn more it, check out its location, and, as a logged in user, store and delete your favorites.

Wireframe:

Eat Local's FE wireframe

Logged Out Searches:

A gif preview of a logged out user searching for local breweries

Logged In Access To Favoriting/Unfavoriting:

A gif preview of user logging in and favoriting local businesses

Searching Favorites:

A gif preview of a logged in user searching through stored favorites


This group project was assigned during the final module of Turing's Front-End Engineering program, about 19-20 weeks into its students learning how to code, with an emphasis on collaboration between front- and back-end teams. The details of this project are outlined in this project spec. ### Built With ![React][React-shield] ![Apollo-GraphQL][Apollo-GraphQL-shield] ![JavaScript][JavaScript-shield] ![CSS][CSS-shield] ![HTML5][HTML-shield] ![Cypress][Cypress-shield] ![NPM][NPM-shield] ![Vercel][Vercel-shield]

(back to top)

## Setup - Clone this repository to your local machine - `cd` into the repository - Make sure the necessary dependencies are installed on your local machine (`react-router-dom`, `cypress`, `apollo client`, `google-map-react`, `graphql`, `react-icons`, etc.) - Once the necessary dependencies are installed, `cd` back into the parent of this repository - Visit the BE repository, clone it down as this repo's sibling on your local machine, and install necessary dependencies - Run `npm start`, `cd` back to the FE repo, and run `npm start` - Have fun!

(back to top)

## Roadmap - [ ] Create new user functionality with user profiles - [ ] Display recent search history for unique users - [ ] Pagination for searches yeilding >10 results

(back to top)

## Features - Consumes both RESTful and GraphQL APIs, built with CI/CD - Implements TDD with a robust Cypress suite featuring accessibility, error-handling, happy- and sad- path testing - Creates a multi-page user experience from a single-page application with Router ### Extensions See [issues](https://github.com/Eat-Local/eat-local-fe/issues) ### Reflections Wins:
The FE team is most proud of our collaboration with the BE team. We learned so much about the value of JSON contracts, how to meaningfully shape data and response contents, and how to speak to our different codebases in a way that translates across the stack. We were also proud of implementing CI/CD alongside GitHub Projects and Issues for our asynchronous ticketing system.

Challenges:
The most challenging aspect of this project was integrating GraphQL. While we were grateful for the opporunity to learn a new technology, we were not able to reap GraphQL's benefits as much as we had hoped given the functionality and size of our application.

(back to top)

## Contact
Anthony Shellman: GitHub | LinkedIn Cole Anthony: GitHub | LinkedIn Victoria Fields: GitHub | LinkedIn
Anthony Shellman GitHub Cole Anthony GitHub Victoria Fields GitHub

(back to top)

[React-shield]: https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB [Apollo-GraphQL-shield]: https://img.shields.io/badge/-ApolloGraphQL-311C87?style=for-the-badge&logo=apollo-graphql [JavaScript-shield]: https://img.shields.io/badge/javascript%20-%23323330.svg?&style=for-the-badge&logo=javascript&logoColor=%23F7DF1E [CSS-shield]: https://img.shields.io/badge/CSS3-1572B6?style=for-the-badge&logo=css3&logoColor=white [HTML-shield]: https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white [Cypress-shield]: https://img.shields.io/badge/-cypress-%23E5E5E5?style=for-the-badge&logo=cypress&logoColor=058a5e [NPM-shield]: https://img.shields.io/badge/npm-CB3837?style=for-the-badge&logo=npm&logoColor=white [Vercel-shield]: https://img.shields.io/badge/vercel-%23000000.svg?style=for-the-badge&logo=vercel&logoColor=white