This project was bootstrapped with Create React App.
This project inspired on building a weather forecast website. Using Meta Weather Public API to get weather forecast data.
*Warning: Cause of CORS issue on Meta Weather Public API, so I decided to build a simple proxy server to serve API data for my webapp.*
Deployed ✅ on Vercel: ➡ Click here to access!
Geolocation API
, IP
.Sentry
GitHub Actions
release-it
10
installedStep 1: Open terminal on change directory to your clone folder
$ cd path/to/some/where/you/clone
Step 2: Install node_modules
$ yarn install
Step 3: Prepare your own environment variables
$ cp .env.sample .env.local
# ACCESS_KEY from https://ip-geolocation.whoisxmlapi.com
REACT_APP_GEO_ACCESS_KEY=<YOUR KEY>
# META WEATHER PROXY URL
REACT_APP_META_WEATHER_PROXY_URL=<YOUR PROXY URL>
# SENTRY DSN
REACT_APP_SENTRY_DSN=<SENTRY DSN FOR YOUR PROJECT>
PORT=<PORT TO SERVE WEB APP>
Step 4: Start meta-weather proxy server
(mentioned in Prerequisites)
Step 5: Start react app
$ yarn start
Step 6: Drink coffee ☕ and enjoy 😁
Usage
$ yarn test --coverage --watchAll
Current code coverage is 97%
Install Cypress
system requirements to make sure you can run Cypress later.
Create your own cypress.env.json
from cypress.env.json.example
$ cp cypress.env.json.example cypress.env.json
{
"host": "
web host to test (can be your deployed url)
localhost can only use in cypress open not cypress run.
Use IP address of your local instead
Example:
- http://xxx.yyy.zz.tt:port
- https://www.your-website.com
"
}
$ yarn cy:open
$ yarn cy:open
You can learn more in the Create React App documentation.
Learn React, check out the React documentation.
Learn Redux
Getting started with Material UI
Getting started with [Sentry](https://material-ui.com/getting-started/installation/)
Learn GitHub Actions
Learn ESLint
Learn Commitlint
Learn Release-it
See CHANGELOG.md
MIT © Phát Nguyễn (Fast)