An interactive rain radar clone running on Mapbox GL, see it live at: https://geshem.space
The entire service is served off of static assets located in S3 buckets:
- A static main index page, React-based JS bundle and other static assets that are uploaded upon deploy
- Radar images that are collected and indexed every minute by a Python recurring task running on AWS Lambda
For some architectural notes on the deployment process go read https://yuv.al/blog/an-architecture-for-periodically-updating-static-websites/
- Node.js
- Yarn
- Serverless, for deploying the AWS Lambda task
Install dependencies and run dev server:
$ npm install
$ DANGEROUSLY_DISABLE_HOST_CHECK=true npm start
Deployment is handled transparently via Vercel.
$ cd cron
$ pipenv install
$ npm run deploycron
For testing the cron task:
$ npm run invokecron