Skip to content

A social video platform for food lovers. Share and discover food reels from local partners. Built with React, Node.js, and MongoDB.

License

Notifications You must be signed in to change notification settings

AshutoshRaj1260/FoodGram

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FoodGram 🍔

FoodGram is a full-stack video-sharing web application, similar to TikTok or Instagram Reels, but focused on food. It allows users to discover food from local partners and for food partners to showcase their items.


✨ Features

  • Dual Authentication System: Separate registration and login for "Users" and "Food Partners."
  • Video Reel Feed: A scrollable, auto-playing feed of food videos (like Reels).
  • User Interaction: Users can like and save their favorite food videos.
  • Partner Profiles: Users can visit the profile pages of the food partners.
  • Video Upload: Food partners can create and upload new food items/videos.

🛠️ Tech Stack

  • Frontend: React, React Router, Axios, Material-UI Icons
  • Backend: Node.js, Express.js
  • Database: MongoDB (with Mongoose)
  • Authentication: JSON Web Tokens (JWT)
  • File Storage: ImageKit (for video uploads)

📂 Project Structure

Here is the high-level structure of the FoodGram application:

FoodGram/
├── backend/
│   ├── controllers/
│   │   ├── auth.controller.js
│   │   ├── food.controller.js      
│   │   └── ...
│   ├── middleware/
│   │   └── auth.middleware.js
│   ├── models/
│   │   ├── user.model.js
│   │   ├── foodpartner.model.js
│   │   └── food.model.js
│   ├── routes/
│   │   ├── auth.routes.js
│   │   ├── food.routes.js
│   │   └── food-partner.routes.js
│   ├── .env.example
│   ├── app.js
│   ├── package.json
│   └── server.js
│
├── frontend/
│   ├── src/
│   │   ├── components/
│   │   │   └── BottomNavBar.jsx
│   │   ├── pages/
│   │   │   ├── general/
│   │   │   │   ├── Home.jsx
│   │   │   │   └── Saved.jsx
│   │   │   ├── food-partner/
│   │   │   │   ├── CreateFood.jsx
│   │   │   │   └── Profile.jsx
│   │   │   ├── UserLogin.jsx
│   │   │   ├── UserRegister.jsx
│   │   │   └── ...
│   │   ├── styles/
│   │   │   └── auth.css
│   │   ├── AppRoutes.jsx
│   │   └── main.jsx
│   ├── .env.example
│   ├── index.html
│   └── package.json
│
├── .gitignore
└── README.md

🚀 Getting Started: Local Setup

Follow these instructions to get a copy of the project running on your local machine.

Prerequisites

  • Node.js (v18 or later)
  • npm
  • A MongoDB database (You can use a free MongoDB Atlas cluster)

1. Clone the Repository

git clone [https://github.com/AshutoshRaj1260/FoodGram.git](https://github.com/AshutoshRaj1260/FoodGram.git)
cd FoodGram

About

A social video platform for food lovers. Share and discover food reels from local partners. Built with React, Node.js, and MongoDB.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published