Skip to content
This repository has been archived by the owner on Mar 25, 2024. It is now read-only.

Commit

Permalink
deploy: 5d450b5
Browse files Browse the repository at this point in the history
  • Loading branch information
eoussama committed Jan 11, 2024
1 parent af405c4 commit 4c017a1
Show file tree
Hide file tree
Showing 7 changed files with 453 additions and 131 deletions.
217 changes: 217 additions & 0 deletions config/countries.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
{
"Afghanistan": "Afghanistan",
"Albania": "Albania",
"Algeria": "Algeria",
"Andorra": "Andorra",
"Angola": "Angola",
"Anguilla": "Anguilla",
"Antigua and Barbuda": "Antigua and Barbuda",
"Argentina": "Argentina",
"Armenia": "Armenia",
"Aruba": "Aruba",
"Australia": "Australia",
"Austria": "Austria",
"Azerbaijan": "Azerbaijan",
"Bahamas": "Bahamas",
"Bahrain": "Bahrain",
"Bangladesh": "Bangladesh",
"Barbados": "Barbados",
"Belarus": "Belarus",
"Belgium": "Belgium",
"Belize": "Belize",
"Benin": "Benin",
"Bermuda": "Bermuda",
"Bhutan": "Bhutan",
"Bolivia": "Bolivia",
"Bosnia": "Bosnia and Herzegovina",
"Botswana": "Botswana",
"Brazil": "Brazil",
"British Virgin Islands": "British Virgin Islands",
"Brunei": "Brunei",
"Bulgaria": "Bulgaria",
"Burkina Faso": "Burkina Faso",
"Burundi": "Burundi",
"Cambodia": "Cambodia",
"Cameroon": "Cameroon",
"Canada": "Canada",
"Cabo Verde": "Cabo Verde",
"Cayman Islands": "Cayman Islands",
"Central African Republic": "Central African Republic",
"Chad": "Chad",
"Chile": "Chile",
"China": "China",
"Colombia": "Colombia",
"Comoros": "Comoros",
"Congo": "Congo",
"Cook Islands": "Cook Islands",
"Costa Rica": "Costa Rica",
"Côte d'Ivoire": "Côte d'Ivoire",
"Croatia": "Croatia",
"Cuba": "Cuba",
"Curaçao": "Curaçao",
"Cyprus": "Cyprus",
"Czechia": "Czechia",
"DRC": "DRC",
"Denmark": "Denmark",
"Djibouti": "Djibouti",
"Dominica": "Dominica",
"Dominican Republic": "Dominican Republic",
"Ecuador": "Ecuador",
"Egypt": "Egypt",
"El Salvador": "El Salvador",
"Equatorial Guinea": "Equatorial Guinea",
"Estonia": "Estonia",
"eSwatini": "Swaziland",
"Ethiopia": "Ethiopia",
"Faeroe Is.": "Faroe Islands",
"Falkland Is.": "Falkland Islands (Malvinas)",
"Fiji": "Fiji",
"Finland": "Finland",
"France": "France",
"Fr. Polynesia": "French Polynesia",
"Gabon": "Gabon",
"Gambia": "Gambia",
"Georgia": "Georgia",
"Germany": "Germany",
"Ghana": "Ghana",
"Gibraltar": "Gibraltar",
"Greece": "Greece",
"Greenland": "Greenland",
"Grenada": "Grenada",
"Guatemala": "Guatemala",
"Guernsey": "Guernsey",
"Guinea": "Guinea",
"Guinea-Bissau": "Guinea-Bissau",
"Guyana": "Guyana",
"Haiti": "Haiti",
"Honduras": "Honduras",
"Hong Kong": "Hong Kong",
"Hungary": "Hungary",
"Iceland": "Iceland",
"India": "India",
"Indonesia": "Indonesia",
"Iran": "Iran",
"Iraq": "Iraq",
"Ireland": "Ireland",
"Isle of Man": "Isle of Man",
"Israel": "Israel",
"Italy": "Italy",
"Jamaica": "Jamaica",
"Japan": "Japan",
"Jordan": "Jordan",
"Kazakhstan": "Kazakhstan",
"Kenya": "Kenya",
"Kiribati": "Kiribati",
"Kuwait": "Kuwait",
"Kyrgyzstan": "Kyrgyzstan",
"Laos": "Lao People's Democratic Republic",
"Latvia": "Latvia",
"Lebanon": "Lebanon",
"Lesotho": "Lesotho",
"Liberia": "Liberia",
"Libya": "Libyan Arab Jamahiriya",
"Liechtenstein": "Liechtenstein",
"Lithuania": "Lithuania",
"Luxembourg": "Luxembourg",
"Macao": "Macao",
"Madagascar": "Madagascar",
"Malawi": "Malawi",
"Malaysia": "Malaysia",
"Maldives": "Maldives",
"Mali": "Mali",
"Malta": "Malta",
"Mauritania": "Mauritania",
"Mauritius": "Mauritius",
"Mexico": "Mexico",
"Moldova": "Moldova",
"Monaco": "Monaco",
"Mongolia": "Mongolia",
"Montenegro": "Montenegro",
"Montserrat": "Montserrat",
"Morocco": "Morocco",
"Mozambique": "Mozambique",
"Myanmar": "Myanmar",
"Namibia": "Namibia",
"Nauru": "Nauru",
"Nepal": "Nepal",
"Netherlands": "Netherlands",
"New Caledonia": "New Caledonia",
"New Zealand": "New Zealand",
"Nicaragua": "Nicaragua",
"Niger": "Niger",
"Nigeria": "Nigeria",
"Niue": "Niue",
"Macedonia": "Macedonia",
"Norway": "Norway",
"Oman": "Oman",
"Pakistan": "Pakistan",
"Palestine": "Palestine",
"Panama": "Panama",
"Papua New Guinea": "Papua New Guinea",
"Paraguay": "Paraguay",
"Peru": "Peru",
"Philippines": "Philippines",
"Pitcairn Is.": "Pitcairn",
"Poland": "Poland",
"Portugal": "Portugal",
"Qatar": "Qatar",
"Romania": "Romania",
"Russia": "Russia",
"Rwanda": "Rwanda",
"Saint Helena": "Saint Helena",
"St. Kitts and Nevis": "Saint Kitts and Nevis",
"Saint Lucia": "Saint Lucia",
"St. Vin. and Gren.": "Saint Vincent and the Grenadines",
"Samoa": "Samoa",
"San Marino": "San Marino",
"São Tomé and Principe": "Sao Tome and Principe",
"Saudi Arabia": "Saudi Arabia",
"Senegal": "Senegal",
"Serbia": "Serbia",
"Seychelles": "Seychelles",
"Sierra Leone": "Sierra Leone",
"Singapore": "Singapore",
"Sint Maarten": "Sint Maarten",
"Slovakia": "Slovakia",
"Slovenia": "Slovenia",
"Solomon Is.": "Solomon Islands",
"Somalia": "Somalia",
"South Africa": "South Africa",
"South Korea": "S. Korea",
"S. Sudan": "South Sudan",
"Spain": "Spain",
"Sri Lanka": "Sri Lanka",
"Sudan": "Sudan",
"Suriname": "Suriname",
"Sweden": "Sweden",
"Switzerland": "Switzerland",
"Syria": "Syrian Arab Republic",
"Taiwan": "Taiwan",
"Tajikistan": "Tajikistan",
"Tanzania": "Tanzania",
"Thailand": "Thailand",
"Timor-Leste": "Timor-Leste",
"Togo": "Togo",
"Tokelau": "Tokelau",
"Tonga": "Tonga",
"Trinidad and Tobago": "Trinidad and Tobago",
"Tunisia": "Tunisia",
"Turkey": "Turkey",
"Turkmenistan": "Turkmenistan",
"Turks and Caicos Is.": "Turks and Caicos Islands",
"Tuvalu": "Tuvalu",
"Uganda": "Uganda",
"Ukraine": "Ukraine",
"United Arab Emirates": "UAE",
"United Kingdom": "UK",
"United States of America": "USA",
"Uruguay": "Uruguay",
"Uzbekistan": "Uzbekistan",
"Vanuatu": "Vanuatu",
"Venezuela": "Venezuela",
"Vietnam": "Vietnam",
"Wallis and Futuna": "Wallis and Futuna",
"Yemen": "Yemen",
"Zambia": "Zambia",
"Zimbabwe": "Zimbabwe"
}
36 changes: 29 additions & 7 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,10 @@
<div class="card card-cust card-cust--spacing shadow border border-0">
<div class="card-body text-start">
<h5 class="card-title">Coronavirus Cases</h5>
<p id="stat-cases" class="card-text">0</p>
<p
id="stat-cases"
class="card-text"
>0</p>
</div>

<img
Expand All @@ -70,7 +73,10 @@ <h5 class="card-title">Coronavirus Cases</h5>
<div class="card card-cust card-cust--spacing shadow border border-0">
<div class="card-body text-start">
<h5 class="card-title">Deaths</h5>
<p id="stat-deaths" class="card-text">0</p>
<p
id="stat-deaths"
class="card-text"
>0</p>
</div>

<img
Expand All @@ -85,7 +91,10 @@ <h5 class="card-title">Deaths</h5>
<div class="card card-cust card-cust--spacing shadow border border-0">
<div class="card-body text-start">
<h5 class="card-title">Recovered</h5>
<p id="stat-recovered" class="card-text">0</p>
<p
id="stat-recovered"
class="card-text"
>0</p>
</div>

<img
Expand Down Expand Up @@ -128,7 +137,7 @@ <h5 class="card-title">Yearly Stats</h5>
<div class="card card-cust card-cust--chart shadow border border-0">
<div class="card-head row p-4">
<div class="col">
<h5 class="card-title">Yearly Cases by Country</h5>
<h5 class="card-title">Yearly Vaccinations by Country</h5>
</div>

<div class="col">
Expand Down Expand Up @@ -158,11 +167,24 @@ <h5 class="card-title">Yearly Cases by Country</h5>
<script src="verbose/chart.js/chart.umd.js"></script>
<script src="verbose/chart.js/index.umd.min.js"></script>
<script src="verbose/countup.js/countUp.umd.js"></script>
<script src="verbose/fuse.js/fuse.min.js"></script>

<script src="scripts/particles.js"></script>
<script src="scripts/chart.js"></script>
<script src="scripts/map.js"></script>
<script src="scripts/main.js"></script>

<script
type="module"
src="scripts/map.js"
></script>

<script
type="module"
src="scripts/chart.js"
></script>

<script
type="module"
src="scripts/main.js"
></script>
</body>

</html>
62 changes: 62 additions & 0 deletions scripts/api.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
export function getTotalData() {
return new Promise(async resolve => {
const data = await fetch('https://disease.sh/v3/covid-19/all')
.then(e => e.json())
.then(e => ({
cases: e.cases,
deaths: e.deaths,
recovered: e.recovered
}))

resolve(data);
})
}

export function getHistoricalData() {
return new Promise(resolve => {
fetch('https://disease.sh/v3/covid-19/historical/all?lastdays=all')
.then(e => e.json())
.then(data => {
const keys = Object.keys(data);
const result = keys.reduce((obj, key) => ({
...obj,
[key]: Object
.entries(data[key])
.map(e => [new Date(e[0]), e[1]])
.reduce((obj, e) => ({
...obj,
[e[0].getFullYear()]: {
...obj[e[0].getFullYear()],
[e[0].getMonth() + 1]: e[1]
}
}), {})
}), {});

resolve(result);
});
})
}

export function getVaccinationData() {
return new Promise(resolve => {
fetch('https://disease.sh/v3/covid-19/vaccine/coverage/countries?lastdays=all')
.then(e => e.json())
.then(data => {
const result = data.map(country => ({
...country,
timeline: Object
.entries(country.timeline)
.map(e => [new Date(e[0]), e[1]])
.reduce((obj, e) => ({
...obj,
[e[0].getFullYear()]: {
...obj[e[0].getFullYear()],
[e[0].getMonth() + 1]: e[1]
}
}), {})
}));

resolve(result);
});
});
}
Loading

0 comments on commit 4c017a1

Please sign in to comment.