culinary-bliss

command module
v0.0.0-...-841fd31 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 19, 2025 License: MIT Imports: 10 Imported by: 0

README ΒΆ

CULINARY-BLISS

Culinary Bliss, a estaurant management app designed to streamline your operations and elevate your dining experience. Whether you own a bustling city bistro or a cozy countryside cafΓ©, Culinary Bliss is your go-to solution for efficient, effective, and effortless restaurant management.

license last-commit repo-top-language repo-language-count

Developed with the software and tools below.

YAML JSON Go JWT Gin-go mongo



Overview

Welcome to the restaurant management backen! This repository contains a robust and scalable backend system built using Go and the Gin framework, designed to support a comprehensive restaurant management platform. The system is structured to provide secure authentication, user management, and administrative functionalities, ensuring a seamless and efficient operation of a restaurant.


Features

This restaurant management backend, built with Go and Gin, provides robust and scalable functionalities to support a full-fledged restaurant management. The backend includes the following key features:

JWT Authentication

Secure Authentication: Implemented JWT (JSON Web Token) for secure and stateless user authentication.

Token Generation: Generate tokens for user sessions upon successful login.

Token Verification: Verify tokens for protected routes to ensure only authenticated users can access certain endpoints.

Refresh Tokens: Support for refreshing tokens to maintain secure sessions.

Admin Section

User Management: Create, read, update, and delete (CRUD) operations for managing user accounts.

Role Management: Assign and manage roles (e.g., admin, staff) to control access levels and permissions.

Restaurant Management: Manage restaurant details, including name, location, hours of operation, and more.

Global Section

Menu Management: CRUD operations for managing the restaurant menu, including categories, items, prices, and availability.

Reservation Management: Handle customer reservations, including booking, updating, and canceling reservations.

Table Management: Manage table assignments, statuses, and seating arrangements to optimize dining space.

User Section

User Registration and Login: Allow users to register and log in securely.

Profile Management: Users can update their profiles, including personal details and preferences.

Reservation Booking: Users can book, view, and cancel reservations.


Repository Structure

└── culinary-bliss/
    β”œβ”€β”€ LICENSE
    β”œβ”€β”€ README.md
    β”œβ”€β”€ controllers
    β”‚   β”œβ”€β”€ authControllers.go
    β”‚   β”œβ”€β”€ categeoryControllers.go
    β”‚   β”œβ”€β”€ foodControllers.go
    β”‚   β”œβ”€β”€ invoiceControllers.go
    β”‚   β”œβ”€β”€ menuControllers.go
    β”‚   β”œβ”€β”€ orderControllers.go
    β”‚   β”œβ”€β”€ orderItemControllers.go
    β”‚   β”œβ”€β”€ restaurantControllers.go
    β”‚   β”œβ”€β”€ tableControllers.go
    β”‚   └── userControllers.go
    β”œβ”€β”€ culinary-bliss
    β”œβ”€β”€ database
    β”‚   └── databaseConnection.go
    β”œβ”€β”€ docs
    β”‚   β”œβ”€β”€ docs.go
    β”‚   β”œβ”€β”€ swagger.json
    β”‚   └── swagger.yaml
    β”œβ”€β”€ go.mod
    β”œβ”€β”€ go.sum
    β”œβ”€β”€ helpers
    β”‚   β”œβ”€β”€ adminHelper.go
    β”‚   └── tokenHelper.go
    β”œβ”€β”€ main.go
    β”œβ”€β”€ middleware
    β”‚   └── authMiddleware.go
    β”œβ”€β”€ models
    β”‚   β”œβ”€β”€ categoryModel.go
    β”‚   β”œβ”€β”€ foodModel.go
    β”‚   β”œβ”€β”€ invoiceModel.go
    β”‚   β”œβ”€β”€ menuModel.go
    β”‚   β”œβ”€β”€ orderItemModel.go
    β”‚   β”œβ”€β”€ orderModel.go
    β”‚   β”œβ”€β”€ restaurantModel.go
    β”‚   β”œβ”€β”€ tableModel.go
    β”‚   └── userModel.go
    β”œβ”€β”€ routes
    β”‚   β”œβ”€β”€ authRouter.go
    β”‚   β”œβ”€β”€ catgeoryRouter.go
    β”‚   β”œβ”€β”€ foodRouter.go
    β”‚   β”œβ”€β”€ globalRouter.go
    β”‚   β”œβ”€β”€ invoiceRouter.go
    β”‚   β”œβ”€β”€ menuRouter.go
    β”‚   β”œβ”€β”€ orderItemRouter.go
    β”‚   β”œβ”€β”€ orderRouter.go
    β”‚   β”œβ”€β”€ restaurantRouter.go
    β”‚   β”œβ”€β”€ tableRouter.go
    β”‚   └── userRouter.go
    └── types
        β”œβ”€β”€ category-type.go
        β”œβ”€β”€ invoice-type.go
        β”œβ”€β”€ menu-type.go
        β”œβ”€β”€ restaurant-type.go
        β”œβ”€β”€ table-type.go
        └── user-type.go

Modules

helpers
File Summary
adminHelper.go Admin Helper functions
tokenHelper.go Token helper functions
middleware
File Summary
authMiddleware.go authentication middleware
types
File Summary
category-type.go category type
menu-type.go menu type
table-type.go table type.
invoice-type.go invoice type
restaurant-type.go restaurant type
user-type.go user type
database
File Summary
databaseConnection.go databaseConnection
models
File Summary
invoiceModel.go invoiceModel
foodModel.go foodModel
menuModel.go menuModel
orderModel.go orderModel
orderItemModel.go orderItemModel
tableModel.go tableModel.
restaurantModel.go restaurantModel
categoryModel.go categoryModel
userModel.go userModel
routes
File Summary
foodRouter.go foodRouter
menuRouter.go menuRouter
authRouter.go authRouter
tableRouter.go tableRouter
globalRouter.go globalRouter
invoiceRouter.go invoiceRouter
orderItemRouter.go orderItemRouter
orderRouter.go orderRouter
userRouter.go userRouter
catgeoryRouter.go catgeoryRouter
restaurantRouter.go restaurantRouter
controllers
File Summary
orderControllers.go orderControllers
menuControllers.go menuControllers
restaurantControllers.go restaurantControllers
categeoryControllers.go categeoryControllers
orderItemControllers.go orderItemControllers
tableControllers.go tableControllers
authControllers.go authControllers
foodControllers.go foodControllers
userControllers.go userControllers
invoiceControllers.go invoiceControllers

Getting Started

Requirements

Ensure you have the following dependencies installed on your system:

  • Go: version 1.22.5

Installation

  1. Clone the culinary-bliss repository:
git clone https://github.com/ShahSau/culinary-bliss
  1. Change to the project directory:
cd culinary-bliss
  1. Install the dependencies:
go build -o myapp

Running culinary-bliss

Use the following command to run culinary-bliss:

./myapp

Tests

To execute tests, run:

go test

Project Roadmap

  • β–Ί API Testing
  • β–Ί Docker
  • β–Ί CI/CD

License

This project is protected under the MIT License. For more details, refer to the LICENSE file.


Documentation ΒΆ

The Go Gopher

There is no documentation for this package.

Directories ΒΆ

Path Synopsis
Package docs Code generated by swaggo/swag.
Package docs Code generated by swaggo/swag.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL