Skip to content

myonlinemeals is MERN Stack application with stripe payment gateway in the below hosting the gateway is a test mode means you should not fill it with your personal credentials you can use card 4242 4242 4242 4242 and expiration of card with any future date and random details in remaining field.

Notifications You must be signed in to change notification settings

grep-many/myonlinemeals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyOnlineMeals

A Vite-based React project with admin, client, and server sections.

MyOnlineMeals is a web application built using Vite for fast development and React for the front-end. It includes three major sections:

  • Admin Panel: For managing meals, users, and orders.
  • Client Panel: For users to browse meals, place orders, and make payments.
  • Server: The backend API built with Node.js to handle server-side logic, including authentication, meals, orders, and payment processing through Stripe.

Table of Contents


Features

  • Admin Panel:

    • Manage meals, orders, and users.
    • Configure payment settings with Stripe.
  • Client Panel:

    • Browse available meals, add them to the cart, and place orders.
    • Integrated with Stripe for secure payment processing.
  • Server (Backend):

    • Built using Node.js and Express to handle authentication, meal data, orders, and Stripe payments.
    • Uses MongoDB for storing data.

Getting Started

Prerequisites

Make sure you have the following installed:

Installation

  1. Clone the repository:

    git clone https://github.com/grep-many/myonlinemeals.git
  2. Navigate to the project directory:

    cd myonlinemeals
  3. Install dependencies for all sections:

    • Admin Panel:

      cd admin
      npm install
    • Client Panel:

      cd client
      npm install
    • Server:

      cd server
      npm install
  4. Set up environment variables for all three sections:

    • Admin & Client:

      In both admin/.env.local and client/.env.local, add the following:

      VITE_SERVER_URL=<your server link>
    • Server:

      In server/.env.local, add the following:

      MONGODB_URI=<your mongodb uri>
      JWT_SECRET=<your secret key>
      STRIPE_SECRET_KEY=<your stripe secret key>
      FRONTEND_URL=<your client running link>
      PORT=<Your Port>

      Note: Replace <your secret key> and <your stripe secret key> with your actual secret keys.

  5. Run the development server for each section:

    • Admin Panel:

      cd admin
      npm run dev
    • Client Panel:

      cd client
      npm run dev
    • Server:

      cd server
      npm run server
  6. Open your browser and navigate to:

    • Admin Panel: http://localhost:3000/admin
    • Client Panel: http://localhost:5173/myonlinemeals
    • Server: http://localhost:4000

Usage

  1. Admin Panel:

    • Allows the admin to manage meals, view orders, and configure the Stripe payment system.
  2. Client Panel:

    • Users can browse meals, place orders, and make payments using Stripe.
  3. Payment Gateway Integration (Stripe):

    • Payments are processed through Stripe in both the admin and client panels. Ensure you add your Stripe API keys in the .env.local file.

Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-name).
  3. Commit your changes (git commit -m "Added a new feature").
  4. Push your branch (git push origin feature-name).
  5. Open a Pull Request.

License

This project is licensed under the MIT License. See the LICENSE file for details.


Acknowledgments

  • Thanks to the creators of Vite for fast and modern development tools.
  • Special thanks to Stripe for their simple and secure payment processing solution.

About

myonlinemeals is MERN Stack application with stripe payment gateway in the below hosting the gateway is a test mode means you should not fill it with your personal credentials you can use card 4242 4242 4242 4242 and expiration of card with any future date and random details in remaining field.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published