Hi there, I'm Rennay Dorasamy!
The intention of this site is (in order of priority):
- document what I have done over the last few months
- "bootstrap" me in the event that I have to stop a project and return to it after a period of time
- bootstrap other users to get up and running faster
The image below highlights my areas/technologies of interest which are detailed in my posts/articles.
Here are the links to some of my posts:
- Get an Ionic Application Running
- Ionic Project Structure
- Configure Ionic to Use Firebase
- Testing an Ionic-Firebase Application
- Deploying an Ionic Application to Firebase Hosting
This application is used to test the availability of an API by:
- Using a ClientID and Secret to get an Access Token
- Using the Access Token + Scope to get an Intent ID
- Using the Intent ID with Puppeteer to authenticate and authorise
- Using the return code to get another Access Token
- Using the Access Token to make a call against the backend
As the Western Cape experienced a water shortage in 2018, I was curious to know if this was getting better or worse and also to track other provinces in South Africa. After some research, I found the Department of Water Affairs site which provided this summary.
However, the "trouble" with this site was:
- It did not provide a "historical" view
- Sometimes it was not available (possibly due to maintenance)
So, I first wrote a Selenium Application in Java which scraped the site. I was going through a "Containerization" phase at the time - so the next step was to run the Java Application in Docker. This was quite a feat as I had to run the Docker container with priviledged access.
Next step was to run this Docker image in a "Cloud" context - so I deployed it to Google Container Registry. Google is super cool - I think I'm still on the free tier.
Then wired up the Java application to write to Firebase.
Quick HTML or front-end application from there to render the information from Firebase and Voila!
- Current Dam Levels