The primary purpose of this project is to demonstrate the ability to integrate multiple external APIs, design a reliable backend system, and manage data storage efficiently.
- Fetches real-time cryptocurrency data from multiple sources.
- Stores all fetched data in a relational database.
- Provides a Web API to retrieve and manipulate stored data.
- Easily extendable to include more cryptocurrencies or blockchain networks.
- Backend: .NET 8.0
- Database: SQLite
- API Integration: REST API
- Deployment: Docker, Linux VM
- Clone the repository:
https://github.com/nmokariya25/blockchain_app.git
- Navigate to the project directory:
cd src - Build Project using dotnet command
dotnet clean dotnet restore dotnet build
- Clone the repository:
https://github.com/nmokariya25/blockchain_app.git
- Navigate to the project directory:
cd src - Run the docker command to build app
docker build -t myblockchainapp -f MyBlockchain.Api/Dockerfile . - After successfully build docker file please run the following command to run the app using docker
docker run -d -p 5000:8080 --name myblockchainapp myblockchainapp:latest
- Run actual application in local environment or Linux vm where dotnet sdk is installed
dotnet run
- Run Unit Test cases of the project
cd.. dotnet test .\tests\MyBlockChain.Tests.Functional\ dotnet test .\tests\MyBlockChain.Tests.Integration\ dotnet test .\tests\MyBlockChain.Tests.Unit\