Inspiration 💡

A relationship starts from knowing each other's similarities and eating the perfect food together. While thinking of all the problems that are happening to me personally and in the community due to the pandemic, there was 1 significant problem that stood out to me: Relationships and food. The pandemic has shutdown many restaurants and restricted people from creating relationships from the quarantine. This has prevented many people from meeting new people and spending their time with the people they love and value, but also having a great meal with the people they love. Foodies solves that problem by virtually matching people with others near their location based on their favourite meal type and cuisine type.

What it does ❓

Foodies provides multiple services that will help people overcome the depressive mood due to the quarantines or maybe due to other factors; A chat feature that matches people based on their information, their interests and their favourite food types, along with a random recipe generator feature. These combined features are able to pick the perfect meal that you need for the day and also allow to have conversations with the people near you and who have similarities in terms of hobbies and food. On top of the chat feature, you can create posts about the restaurant you are planning to go, the food you will order, and your additional information to get other people to come to eat with you, you can direct message people or send it throughout the entire chat system(everyone gets it). This will catch other people's attention and maybe they will come with you and this way, you can make new friends and relationships. After planning a date with them, there is a email reminder option that you can use to get email reminders about the time you selected to go to the restaurant, the menu you will order, and the restaurant you are planning to go to make sure you don't forget!

How we built it 🔨

This web application was built using ReactJs for the frontend, nodejs and express for the backend such as sending emails and managing calls and video chats to transfer client data, along with socket.io which helped real-time connection between users. The recipe generator uses the youtube API and the food recommendation in the chat feature uses the edamam API and am also hoping to use other apis like yelp.

Tech Stacks 🌐

The ERN Stack, Express.js, React.js and Node.js as well as a node library called Socket.io. I was not able to create a database. A database would be very helpful.

Challenges we ran into 📉

Personally, there were many challenges with the frontend when trying to implement many creative UIs and connect the frontend with the socket.io backend under a short period of time. The nodejs/express backend had lots of errors when socket.io was implemented in the deployment process and the email sending system wasn't working as expected.

Accomplishments that we're proud of 📈

Personally, there were many challenges with the frontend when trying to implement many creative UIs and connect the frontend with the socket.io backend under a short period of time. The nodejs/express backend had lots of errors when socket.io was implemented in the deployment process and the email sending system wasn't working as expected.

What we learned 📌

I was able to learn how I could make my react code to be reusable by using custom hooks, some styled components and using reusable components for buttons/inputs. I also learned how to work with backend and a socketio library as well as many node modules like node-mailer, fetch, fs modules. I am proud that the chat/video feature has been deployed successfully with 90%, if not 100% working functionalities. I am also proud that there were many complex design concepts and animations in the web application that are easy for users to use.

What's next for Foodies 🚀

-Implementing this on several other platforms like ios and android -Implement more code that make the frontend better -Implement a database to take all posts and chats into data and build a more complex backend.

Share this project:

Updates