Skip to content

Repository files navigation

Delta Eats GraphQL API

Welcome to the Delta Eats GraphQL API repository! This GraphQL API is designed to simplify the process of ordering food from a single restaurant for students at Delta School. It also provides WebSocket connections to alert waiters at the restaurant about new food orders.

Table of Contents

Introduction

Delta Eats GraphQL API is a web-based service developed exclusively for Delta School students to order food from a selected restaurant. It streamlines the ordering process, provides real-time updates on order status, and offers WebSocket integration to notify restaurant staff when a new order is placed.

Features

  • User Authentication: Secure authentication system for students to create accounts and log in.
  • Restaurant Selection: Choose a specific restaurant to place an order.
  • Order Placement: Place food orders with specific customization options.
  • Real-time Updates: Receive notifications about the order's status, from preparation to delivery.
  • WebSocket Integration: Connect to ESP boards to alert restaurant staff about new food orders.

Getting Started

To get started with the Delta Eats GraphQL API, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/your-username/delta-eats-API.git
  2. Install Dependencies:

    Navigate to the project directory and install the required dependencies:

    cd delta-eats-API
    # Run your Go package manager command (e.g., go mod tidy, go get, etc.) here.
  3. Run the Application:

    Start the API server on the default port 8080:

    go run main.go
  4. Access the API:

    The GraphQL API is accessible at http://localhost:8080/graphql. You can use tools like Postman, GraphQL Playground, or any GraphQL client to interact with the API.

Usage

This GraphQL API is designed to be flexible and allows you to tailor your queries and mutations to fit your specific use case. You can explore and interact with the API through the GraphQL Playground at http://localhost:8080/graphql after starting the server.

Here are some basic GraphQL operations:

  • Query for available restaurants.
  • Create a new order.
  • Subscribe to real-time updates about order status.

WebSocket Integration

The WebSocket integration is used to notify restaurant staff when a new food order is placed. When a student places an order, the ESP board at the restaurant will receive a notification, allowing waiters to promptly attend to the order.

To set up WebSocket integration, please refer to the WebSocket documentation provided in this repository.

Contributing

We welcome contributions from the open-source community. If you'd like to contribute to the Delta Eats GraphQL API project, please follow our contributing guidelines.

License

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


Thank you for using the Delta Eats GraphQL API! If you have any questions or encounter issues, please don't hesitate to create an issue or reach out to us. Happy coding!

About

API for our school's food ordering system :3

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages