Giter VIP home page Giter VIP logo

phuongdayroi / restaurant-app Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chayxana/restaurant-app

0.0 0.0 0.0 50.71 MB

Restaurant App ๐Ÿ” is a sample open source e-Commerce ๐Ÿ›’ application for ordering foods, powered by polyglot microservices :wheel_of_dharma: architecture and cross-platform development ๐Ÿ“ฑ๐Ÿ–ฅ ๐Ÿณ

License: MIT License

C# 72.04% PowerShell 0.79% Shell 1.52% Dockerfile 0.21% Java 5.94% Go 6.24% HTML 5.55% CSS 0.58% JavaScript 0.61% TypeScript 6.52%

restaurant-app's Introduction

Restaurant App

Gitter

Restaurant App is containerized polyglot microservices application which contains projects based on .NET Core, Golang, Java, Xamarin, React, Angular and etc. The project demonstrates how to develop small microservices for larger applications using containers, orchestration, service discovery, gateway, and etc.

To getting started, simply fork this repository. Please refer to CONTRIBUTING.md for contribution guidelines.

Motivation

  • Developing independently deployable and scalable micro-services
  • Developing cross-platform mobile apps using Xamarin.Forms
  • Configuring CI/CD pipelines
  • Using Docker and k8s
  • Writing clean, maintainable and fully testable code
  • Using SOLID principles
  • Using Design Patterns

Architecture overview

The architecture proposes a micro-service oriented architecture implementation with multiple autonomous micro-services (each one owning its own data/db) and implementing different approaches within each microservice using REST/HTTP as the communication protocol between the client apps and backend and supports asynchronous communication for data updates propagation across multiple services based on Integration Events and an Event Bus(Apache Kafka).

List of several individual microservices and infrastructure components

โ„– Service Description Build status Coverage Endpoints
1. Identity API (.NET Core + IdentityServer4) Authentication service powered by OAuth2 and OpenID Connect dev | prod
2. Basket API (Golang + Redis) Manages customer basket in order to keep items, caches items into redis dev | prod
3. Menu API (.NET Core, PostgreSQL) Manages data for showing on the list dev | prod
4. Order API (Java + Spring Boot) Manages customer orders and notifies cook about new orders dev | prod

Mobile app

Mobile Build status
Android (AppCenter) Android Build status
iOS (AppCenter) iOS Build status

Mobile app developed by Xamarin.Forms and supports iOS and Android, here you can find how to develop cross-platform mobile apps using C#. The example shows how to develop beautiful user interfaces using Xamarin.Forms and how to manage your code with Clean Architecture on the mobile side and get a clean, maintainable, testable code.

Contributors

Thank you to all the people who have already contributed to our project!

restaurant-app's People

Contributors

jurabek avatar ahror avatar jbeguna04 avatar sponger94 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.