/restaurant

A by the book Domain-Driven Design application.

Primary LanguageC#

Restaurant

alt text

RESTful Web Services based on ASP.NET Core API, Entity Framework Core Code First and PostgreSQL for a nation-wide restaurant system. The system hold towns, restaurants, meals, ratings and users.

It is example application demonstrating a combination between domain-driven design and functional programming.

Functionalities

Anonymous visitors view restaurants and the meals they offer.

Registered users can:

• Create and rate restaurants.

• Create, edit and delete meals in restaurants.

• Make orders and view their own orders.

Features

  1. Domain-Driven Design
  2. CQRS (Command and Query Responsibility Segregation pattern)
  3. Functional style command/query handlers
  4. Event-sourcing
  5. Real-time communications through SignalR
  6. Fluent Validator
  7. JWT authentication/authorization
  8. File logging with Serilog