Covid19 Global Cases Stats is an application built with ReactJS and Redux to manage the global state of the application, the Disease.sh API is used to query and show users the covid19 disease-related statistics by continents and countries
- Using the ReactJS library
- Using the ReactJS Router library
- Using JSX syntax
- Using semantic HTML
- SPA Approach
- Responsive Design
- Using Redux Toolkit for a global state management
To see the application working live, you can click on the following link that contains the demo version:
Video presentation of the Project
To get a local copy up and running, follow these steps.
Clone this repository to your desired folder:
cd my-folder-name
git clone [email protected]:NitBravoA92/covid19-metrics-webapp.git
In order to install, modify and run this project, it is necessary to have the following applications installed:
-
Git: to manage the project versions of source code. You can Download Git here
-
Nodejs and NPM: to install and manage the project dependencies. Nodejs and NPM installation guide
-
A code editor like Visual Studio Code (Recommended) or any other of your preference. It is necessary to open the project and add or modify the source code. You can Download Visual Studio Code here
It is also important to have at least basic knowledge about ReactJS, JSX, HTML, CSS and Javascript languages so you will be able to understand and work with the code of the project.
- Learn the basics of HTML
- Learn the basics of CSS
- JavaScript basics
- Javascript Arrays
- Javascript Objects
- JavaScript modules
- ReactJS
- JSX
- Create React App
Install this project by running the next command into your project folder:
npm install
All the packages and libraries necessary for the project to work will be installed in a folder called /node_module. After this installation, the project will be ready to use.
In the project directory, you can run:
npm start
Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes.
You may also see any CSS and JS linters errors in the console running the following commands:
CSS Linter
npx stylelint "**/*.{css,scss}"
Javascript Linter
npx eslint "**/*.{js,jsx}"
npm run build
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
Note: Please only modify the components files and the CSS files. Do not modify configurations files of the project.
👤 Nitcelis Bravo
- GitHub: Nitcelis Bravo
- Twitter: @softwareDevOne
- LinkedIn: Nitcelis Bravo Alcala
- Create Home view
- Create Countries Details view
- Create Country Stats view
- Use Redux to manage the states of continents and countries
- Fetch data using the disease.sh API
- Add CSS styles to the UI following the mobile first approach
- Deploy the final version of the project and share Link Demo in the documentation
- Create Unit tests using Jest and React testing library
Contributions, issues, suggestions and feature requests are welcome! Feel free to check the issues page.
To do Contributions, please fork this repository, create a new branch and then create a Pull Request from your branch. You can find detailed description of this process in: A Step by Step Guide to Making Your First GitHub Contribution by Brandon Morelli
If you liked this project, give me a "Star" (clicking the star button at the beginning of this page), share this repo with your developer community or make your contributions.
The UI design of this webapp is not mine. This design was created and belongs to Nelson Sakwa. (Here)[https://www.behance.net/gallery/31579789/Ballhead-App-(Free-PSDs)] you can find more information about the original design of this webapp and you can also see Nelson Sakwa's profile (here)[https://www.behance.net/sakwadesignstudio] to know more details about his wonderful work.
I would also like to thank my Microverse teammates for their support. They have supported me a lot in carrying out this project, giving me suggestions, good advice and solving my code doubts.
This project is MIT licensed.
The UI design of the webpage is not mine. It is under (Creative Commons License)[https://creativecommons.org/licenses/by/3.0/] licensed.