Inspiration Story: Nourishing Connections, Empowering Communities

On a random night filled with deep conversations about life and engineering, we found ourselves pondering an unexpected topic: our financial planning and how we allocated our funds for food. As we delved into the details, we noticed a pattern—a disparity in our spending habits across different food establishments. Sometimes, we would unknowingly spend more on the same meal elsewhere, while local food vendors remained relatively unnoticed.

Intrigued by this realization, we dedicated several hours to explore the concept further. We asked ourselves, "What if there was a way to bridge this gap? What if we could create a solution that benefits both students like us and the local food vendors struggling to thrive?"

That night, fueled by curiosity and the desire to make a difference, we gave birth to CampusEats—an innovative platform that would empower students and locals alike through affordable food plans. Our shared vision was to create a win-win situation: students gain access to affordable meals, and local food vendors gain increased exposure and support.

As we embarked on our hackathon journey, we realized that this event presented us with the perfect opportunity to turn our idea into a tangible product. With unyielding determination and the support of the hackathon community, we poured our energy into designing and developing CampusEats—a platform that would revolutionize the way students and local food vendors interact.

CampusEats became more than just an app; it became a symbol of empowerment and community-building. Through our platform, students could discover exclusive deals and discounts from local food vendors, helping them stretch their limited budgets and make every dollar count. Simultaneously, local food vendors gained a newfound avenue to reach and connect with a vibrant student community.

Driven by our passion for engineering and a commitment to fostering mutual growth, CampusEats became a catalyst for nourishing connections, not just through food, but through the exchange of support, gratitude, and opportunity. Our hackathon experience became the stepping stone to turn our vision into reality.

As we reflect on that serendipitous night of brainstorming and the path that led us to CampusEats, we are humbled by the impact we can create. The journey has taught us the power of observation, collaboration, and the boundless potential that lies within the convergence of technology and human connection.

CampusEats: Empowering students and locals through affordable food plans. The hackathon granted us the invaluable opportunity to transform our shared dream into a tangible platform that will redefine the way students and local food vendors thrive together.

CampusEats - App Functionality

CampusEats is a web application that aims to provide students with a convenient and affordable way to access local food options. Here's a breakdown of the app's functionality:

User Registration and Login

  • Users can create a new account by providing their name, username, college, and password during the registration process.
  • Existing users can log in to their accounts using their credentials.

Nearby Shops

  • Once logged in, users are presented with a list of nearby food shops in their college or university area.
  • The app utilizes geolocation or user-provided location information to determine the user's proximity to various food establishments.

Shop Subscription

  • Users can browse through the list of nearby shops and select the ones they wish to subscribe to.
  • By subscribing to a shop, users gain access to exclusive deals, discounts, and loyalty programs offered by that particular establishment.
  • The app provides information about each shop, including its menu, location, and reviews from other users.

Account Settings

  • Users have access to account settings, where they can see there subscribed shops and their account information.

It does bridge the gap between locals and students and benefit them both, hence a win-win solution. Because of the app, student can focus on his/her productivity, while not worrying about their food spendings.

CampusEats Technical Architecture:

Overview

CampusEats is built using the MERN stack, a powerful combination of technologies consisting of MongoDB, Express.js, React.js, and Node.js. This robust stack allows us to create a seamless and efficient web application with a responsive user interface.

Backend - Node.js and Express.js

The backend of CampusEats is developed using Node.js and Express.js, providing a reliable and scalable server-side infrastructure. We created a separate folder named "node-app" to house our server code.

Key Features of the Backend:

  • API Endpoints: We designed and implemented various API endpoints using Express.js to handle user authentication, restaurant data retrieval, order management, and more.
  • Database Integration: We integrated MongoDB as our database, leveraging its flexible NoSQL structure to efficiently store and retrieve data.
  • Authentication and Security: User authentication and authorization are implemented using secure mechanisms such as JSON Web Tokens (JWT) to ensure data privacy and security.
  • Third-Party Integrations: We utilized external APIs and services to enhance functionality, such as integrating with payment gateways for secure online transactions.

Frontend - React.js

The frontend of CampusEats is developed using React.js, a popular JavaScript library for building user interfaces. We created a separate folder for the frontend codebase.

Key Features of the Frontend:

  • Responsive UI: We designed a visually appealing and user-friendly interface using React.js components, ensuring optimal user experience across different devices.
  • State Management: We employed React's state management capabilities to handle dynamic data and maintain a smooth and interactive user interface.
  • Routing: We implemented client-side routing using React Router to provide seamless navigation and render appropriate components based on URL paths.
  • API Integration: We utilized Axios, a popular HTTP client library, to interact with the backend APIs, making asynchronous API calls and handling responses.

The Effectiveness of AI in Image Creation

During our project, we experienced the incredible effectiveness of AI, particularly in the realm of image creation, by utilizing Bing AI. With the power of AI algorithms and advanced image processing techniques, we were able to generate stunning images with remarkable accuracy and detail. Bing AI proved to be a valuable tool, allowing us to explore a wide range of creative possibilities and generate visually appealing content. The ability of AI to understand patterns, colors, and composition greatly enhanced our image creation process, saving us time and effort. We were impressed by the level of realism and quality achieved through AI-powered image generation, making it an indispensable asset in our project and highlighting the immense potential of AI in various creative endeavors.

The Effectiveness of GitHub for Collaboration and Version Control

Throughout our project, we experienced the immense effectiveness of GitHub as a collaboration platform and version control system. Leveraging features such as pull requests (PRs) and Git versions, we seamlessly collaborated on our codebase, reviewing each other's changes and merging them with ease. GitHub's PR workflow allowed us to maintain a structured development process, ensuring that code changes were thoroughly reviewed and tested before being integrated into the main codebase.

Moreover, when we encountered a critical issue where our app crashed, GitHub proved to be a lifesaver. With the help of Git's version control capabilities, we were able to quickly revert to a previous stable version of the codebase. This saved us significant time and effort, as we could easily switch back to a known working state and investigate the issue without losing any progress.

GitHub's intuitive interface, comprehensive documentation, and collaborative features made our development workflow efficient and streamlined. It provided us with a centralized platform to manage our code, track changes, and resolve conflicts seamlessly. Overall, GitHub played a crucial role in enabling effective collaboration, version control, and quick recovery, empowering us to deliver a robust and reliable application.

The Effectiveness of MongoDB as a Database

Throughout our project, we leveraged the power and effectiveness of MongoDB as our chosen database solution. MongoDB's flexible document-oriented structure proved to be a perfect fit for our needs. We were able to store and retrieve data efficiently, without the constraints of traditional relational databases.

One of the key advantages of MongoDB was its scalability and ability to handle large amounts of data. As our project evolved, MongoDB seamlessly accommodated our growing data requirements, allowing us to focus on developing our application rather than worrying about database limitations.

Additionally, MongoDB's query language and robust indexing capabilities facilitated quick and precise data retrieval. We were able to perform complex queries and aggregations with ease, ensuring fast response times for our application.

Furthermore, MongoDB's ease of use and intuitive design made the development process smoother. We could easily integrate MongoDB with our backend application, thanks to its well-documented APIs and comprehensive tooling.

In summary, MongoDB proved to be an effective choice for our project, providing us with scalability, flexibility, and efficient data management. It enabled us to focus on delivering a seamless user experience without being hindered by database constraints.

Deployment and Hosting

CampusEats is deployed on a google cloud platform. We've utilized google cloud run for both client side and server side.

Challenges we ran into

We ran into many challenges like: 1) RazorPay Integration, we tried using razorpay to subscribe the users after paying the amount, you can see it in our github commits, where we were unable to make subscriptions as we wanted. so in the end because of time constraints, we dropped the idea.

2) Hosting on googlecloud: we wanted to host our app on google cloud run, so we invested 3-4 hours on it, because it was our first time, we weren't able to do it fast. But step by step, we learnt by our mistakes. we finally succeeded , we learnt how to store env variables, how to configure .yaml files, etc.

Accomplishments that we're proud of

What we learned

It was first time experience for Sarvadnya Chavhan so he learnt a lot from this project. He learnt what is a MERN stack and how to integrate express.js and mongodb.

As for Kirtan Chandak, being familiar with MERN, he put next steps to developing his stack more and understanding the google cloud platform.

What's Next for CampusEats

CampusEats has laid a strong foundation, but our journey doesn't end here. Moving forward, we have several plans to enhance and expand the app's functionality. Some of our future goals include:

  1. Payment Gateway Integration: We aim to explore alternative payment gateway solutions and integrate a seamless payment system that allows users to subscribe to shops and make secure transactions directly through the app.

  2. Advanced Personalization: We plan to implement advanced recommendation systems based on user preferences, order history, and reviews. This will enable us to provide personalized suggestions for shops, deals, and meals, enhancing the overall user experience.

  3. Expansion to More Campuses: Currently, CampusEats focuses on serving students in a specific college or university area. We intend to expand our reach to include more campuses, connecting students with a wider range of local food options.

  4. Enhanced Shop and Meal Management: We will continue improving the administrative features of the app, allowing shop owners to easily manage their menus, promotions, and order fulfillment processes.

  5. Community Engagement: To foster a sense of community, we plan to incorporate social features such as user forums, food-related events, and interactive challenges that encourage engagement and interaction among users.

With these exciting plans on the horizon, CampusEats is committed to delivering an exceptional user experience, promoting food accessibility, and supporting local businesses in college communities.

Conclusion

The MERN stack, comprising MongoDB, Express.js, React.js, and Node.js, has empowered us to develop CampusEats as a powerful and user-centric web application. With a robust backend handling API requests and a responsive frontend offering an intuitive user experience, CampusEats is a full fledged MERN app.

Share this project:

Updates