██████╗ ██████╗ ██╗ ██╗██╗██████╗ ██╗ █████╗
██╔════╝██╔═══██╗██║ ██║██║██╔══██╗ ███║██╔══██╗
██║ ██║ ██║██║ ██║██║██║ ██║ ╚██║╚██████║
██║ ██║ ██║╚██╗ ██╔╝██║██║ ██║ ██║ ╚═══██║
╚██████╗╚██████╔╝ ╚████╔╝ ██║██████╔╝ ██║ █████╔╝
╚═════╝ ╚═════╝ ╚═══╝ ╚═╝╚═════╝ ╚═╝ ╚════╝
Real-time COVID-19 surveillance dashboard — ranks the top 10 most affected regions and provinces worldwide, with on-demand data exports.
Juan Gómez 🇳🇮 — Live Demo on Azure →
The application pulls live data from the Covid-19 Statistics API and surfaces a ranked view of the pandemic's footprint across the globe.
| Capability | Detail |
|---|---|
| Global ranking | Top 10 regions sorted by confirmed cases (descending) |
| Regional drill-down | Select any of 212+ regions to see its top 10 provinces |
| Data export | Download the current snapshot as JSON, XML, or CSV |
| Responsive UI | Works across desktop and mobile via Bootstrap |
Covid19-Cases/
├── Controllers/ MVC surface — HomeController (Index + Download)
├── Repositories/
│ ├── Covid19Repository API calls, top-10 logic, file generation
│ └── FileRepository MIME type and extension mapping per export format
├── DTO/ Typed response models (Region, Report, Data)
├── Helpers/ Extension methods — list → SelectListItem
├── Emuns/ ExportFile enum (JSON / XML / CSV)
├── Constans/ API endpoint constants
└── Views/ Razor templates with Bootstrap layout
Covid19-Cases.Tests/
└── Repositories/ MSTest integration tests against live API
Controllers/ MSTest unit tests for controller actions
Request flow:
Browser ──► HomeController ──► Covid19Repository ──► RapidAPI
│
OrderByDescending(confirmed).Take(10)
│
View / File download
| Layer | Technology |
|---|---|
| Runtime | .NET Framework 4.6.1 |
| Web framework | ASP.NET MVC 5.2.4 + Web API 5.2.4 |
| JSON | Newtonsoft.Json 11 |
| UI | Bootstrap 3 + jQuery 3 |
| Tests | MSTest 1.2 |
| Hosting | Microsoft Azure (App Service) |
| IDE | Visual Studio 2017 |
Prerequisites: Visual Studio 2017+ with NuGet restore enabled.
# 1. Clone
git clone https://github.com/<your-user>/Covid19-Cases.git
# 2. Open solution
Covid19-Cases.sln
# 3. Restore packages and run
F5 (IIS Express — port 62009)The project ships with a RapidAPI key already wired in
Covid19Repository.cs. For production use, move it toWeb.configor an environment variable.
All three exports contain the same top-10 snapshot for the current selection.
CSV
Region,Province,Confirmed,Deaths
US,New York,1234567,89012
...
XML
<Covid-19Cases>
<US Confirmed="1234567" Death="89012" />
...
</Covid-19Cases>JSON — serialized array of DataReportDto objects.
# Visual Studio Test Explorer or:
dotnet test Covid19-Cases.Tests/Covid19-Cases.Tests.csprojCoverage includes: region list integrity (216 regions), report pagination (top 10), blank/parameterized filters, and file byte-array generation.
Covid-19 Statistics — RapidAPI
Endpoints used: /regions · /reports