This repository contains project that gets, agrregates and stores cryptocurrencies prices for specific time point or time range using external public APIs.
- .NET Core 8.0 / C#
- SQLite
- Entity Framework Core 8.0
For API UI has embedded Swagger UI
- microservice, SOA
- layered architecture, repository pattern, dependency injection
- code, data, UI are split
- code consists of: controllers, models, core service logic and optional 3rd party libs
- Entity Framework supports using SQLite, easy to create new db instance and customize the CRUD
- data stored by default in SQLite attached database using Microsoft.Data.Sqlite.Core
- RESTful API
- UI based on Swagger UI with minimal custom and support
- use of well-known 3rd party libraries: Newtonsoft.Json
- code architecture allows easy extend options:
- add new external API providers
- new classes for calculate extracted prices
- new data providers
- Unit tests project contains tests covering base part of code
This technology and architecture were chosen so that in the future it would be possible to easily extend the functionality and integrate this project in a more complex system of microservices.

