Skip to content

Latest commit

 

History

History
36 lines (29 loc) · 1.53 KB

README.md

File metadata and controls

36 lines (29 loc) · 1.53 KB

Contacts Book API example using dotnet core 3.1

API example using best practices:

  • DDD (layers, services, repositories, entities, value objects, domain events, event bus, domain events subscribers)
  • CQRS
  • Unit of work
  • TDD at all levels (Unit tests, integration tests and acceptance tests)
  • Logging
  • IoC (using the integrated dotnet core container)
  • API Rest entrypoints and responses
  • Swagger IO
  • Docker compose
  • Entity framework core with migrations (tests use in memory database, and the api uses the sql server provider)
  • Dynamic register of subscribers to domain events (using an attributte decoration)

Instructions

First, clone the repository.

To run using docker:

  • Run docker-compose up --build (The composer will wait until the database is up, and the will the run the application. Migrations will be applied automatically.)
  • Open your browser at http://localhost:5000/ to test the api
  • Mail server will be available at http://localhost:1080/
  • Open your browser at http://localhost:4200/ to test the angular client

To run the api directly:

  • Change your parameters on the app settings file
  • Run the application on your IDE or at the cli. (If you are in the development environment, migrations will be applied automatically.)
  • Open your browser at http://localhost:5000/ to test the api

To run the angular client directly:

  • Verify the api instance is running. (If you change the apu url, then change it on the environment settings)
  • Run npm start at the cli.
  • Open your browser at http://localhost:4200/ to test the angular client.