https://github.com/hueyy/whetherreport
Check the accuracy of NEA's 🌧 rainfall predictions
https://github.com/hueyy/whetherreport
clojure data-gov-sg hacktoberfest rainfall singapore weather weather-forecast
Last synced: 9 months ago
JSON representation
Check the accuracy of NEA's 🌧 rainfall predictions
- Host: GitHub
- URL: https://github.com/hueyy/whetherreport
- Owner: hueyy
- License: other
- Created: 2021-11-28T13:22:39.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-11-19T04:22:39.000Z (about 2 years ago)
- Last Synced: 2025-04-03T14:53:17.258Z (9 months ago)
- Topics: clojure, data-gov-sg, hacktoberfest, rainfall, singapore, weather, weather-forecast
- Language: Clojure
- Homepage: https://whether.huey.xyz
- Size: 93.8 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Whether Report
This project tracks the accuracy of the [Meteorological Service Singapore](http://www.weather.gov.sg/weather-forecast-2hrnowcast-2/) (MSS)'s weather forecasts (also available on [NEA's myENV mobile app](https://va.ecitizen.gov.sg/CFP/CustomerPages/NEA_google/displayresult.aspx?MesId=3725718&Source=Google&url=va.ecitizen.gov.sg)) by comparing rainfall recorded by the National Environment Agency (NEA)'s weather stations against the 2-hour forecasts made by MSS for the same time period.
## Limitations
Please note the following:
- Only MSS's 2-hour weather forecasts are currently being analysed
- MSS's historical forecast data and NEA's historical weather conditions data are not fully comprehensive, and any missing or invalid data is ignored
- Since MSS's forecasts do not necessarily cover the same location where NEA's weather stations are located, data from the closest few stations are used. It is therefore possible, e.g. that rainfall predicted by MSS is not recorded by NEA's weather station
- Weather forecasts are assessed leniently, i.e. if MSS forecasts rain in any form (e.g. Light Showers, Drizzle, Heavy Rain, Thundery Showers, etc.), and there is any precipitation at all within the 2-hour period covered by that forecast, it is considered to be correct (and vice-versa for non-rain forecasts, e.g. Windy, Fair, Cloudy, etc.)
## Development
Run the backend:
```bash
cd backend
lein run
```
Then run the frontend:
```bash
cd ../frontend
npm run dev
```
In Docker:
```bash
docker build . -t whether
docker run -p 8000:8000 whether
```
# Production
To update data:
```
cd frontend
npm run build
cd backend
lein trampoline run -m whether.main --cron-x 2022-09-11T00:00:00+08:00 2023-01-28T00:00:00+08:00
```
```bash
export IS_PRODUCTION=true
lein trampoline run -m whether.main --build
netlify deploy --prod
```
## Data
This project uses data from [data.gov.sg](https://data.gov.sg) that was made available under the terms of the [Singapore Open Data Licence v1.0](https://data.gov.sg/open-data-licence).
```bash
lein trampoline run -m whether.main --cron-30
```