/foodzy

A platform for small food sellers by providing them with a digital space to showcase their menus.

Primary LanguageTypeScript

Foodzy 🍽️

Welcome to Foodzy, a modern and user-friendly platform for exploring delicious menus, booking tables, and enjoying culinary delights. This project is open-source and aims to offer a delightful restaurant experience through its clean and simple design.

Table of Contents

Overview

Foodzy provides a seamless user experience where visitors can explore food menus, read about the restaurant, and even book a table. The platform is designed to be flexible and responsive, ensuring a great experience across all devices.

The project consists of two main components:

  • Frontend: Built using React and Vite, it handles the user interface, interactions, and client-side logic.
  • Backend: Built using Node.js and Express, it provides REST APIs for user management, authentication, and more.

Features

  • Home: A landing page with an introduction to the restaurant.
  • About: A section with information about the restaurant's history and mission.
  • Menu: Explore the restaurant’s various offerings, from appetizers to desserts.
  • Book a Table: Users can reserve a table directly through the platform.
  • Authentication: Secure user registration and login using JWT.

Folder Structure

└── πŸ“foodzy
    β”œβ”€β”€ πŸ“backend                # Backend code handling APIs and database
    β”‚   β”œβ”€β”€ πŸ“controllers        # API controllers
    β”‚   β”œβ”€β”€ πŸ“database           # Database connection setup
    β”‚   β”œβ”€β”€ πŸ“middlewares        # Middleware for authentication
    β”‚   β”œβ”€β”€ πŸ“models             # MongoDB Models
    β”‚   β”œβ”€β”€ πŸ“routes             # API routes
    β”‚   β”œβ”€β”€ .env                 # Environment variables
    β”‚   β”œβ”€β”€ .env.sample          # Example environment variables file
    β”‚   β”œβ”€β”€ app.js               # Main backend app entry
    β”‚   └── index.js             # Server setup
    β”œβ”€β”€ πŸ“frontend               # Frontend code for user interface
    β”‚   β”œβ”€β”€ πŸ“public             # Public assets
    β”‚   β”œβ”€β”€ πŸ“src                # Source files for the frontend
    β”‚   β”œβ”€β”€ πŸ“components         # Reusable React components
    β”‚   β”œβ”€β”€ .env                 # Environment variables for frontend
    β”‚   β”œβ”€β”€ App.tsx              # Main React app file
    β”‚   └── index.html           # Main HTML entry point
    β”œβ”€β”€ .gitignore               # Git ignore file
    └── package.json             # Project dependencies and scripts

Contribution Guidelines

We welcome contributions to Foodzy! Here's how you can help:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Commit your changes:
    git commit -m "Added new feature"
  4. Push to the branch:
    git push origin feature/your-feature-name
  5. Submit a pull request.

Please make sure to follow the code style and conventions used in the project.