Sign in

My favourite cup of coffee is a simple cup of latte.

I don’t care for the beans as long as you don’t over roast it. I don’t care for the environment of the cafe I buy my coffee from because most of the time, anxiety and being self-conscious of my surroundings kicks in and I’ll usually opt to takeaway.

In Singapore, a cup of latte can range from S$5 to S$9.

I’m not crazy enough to buy any cup of coffee more than S$5.50.

Even if you tell me the beans are the most precious beans shat from an animal…


If you’ve been exploring Google Assistant and its products, you should’ve met Google Nest Hub and probably read its documentation.

As I was exploring its technical feasibility, I chanced upon: Interactive Canvas. It is a framework that allows developers to create your own custom user interface instead of being stuck with the basic prompts.


Image created by Celia O

If you haven’t seen the 1st post of this series, feel free to check it out below:

So, before we start, I just want to acknowledge that Recharts is honestly one of my favourite ReactJS libraries for statistical models. It has clean documentation and it is easy to use and understand, allowing you to quickly start using the library and just run with it.

But, I also have to say that there are just some things that aren’t fully documented, and that’s perfectly fine. It’s exactly why this post is here!

I’ll be walking through how you can change the…


Part 3

Welcome to the final part of this tutorial. Here, I’ll be covering how to pass params from your bot to your ReactJS app and also adding onClicks to your app!

By the end of this, I hope that you’ll be able to deploy and interact with your New York Times Bestseller bot properly — from the clicking to tracking session params.

If you’ve not yet seen the first 2 parts, give them a look and try it out because the 3rd part will be building on what was already done!

Part 1:

Part 2:

Assuming you’ve followed along, maybe even…


In the previous part, I covered a few things like the basic set-up of the tools you’ll require and the Actions on Google project through the console.

If you’ve missed it, here it is:

In this part, we are going to cover how to set-up our ReactJS, Firebase Hosting and pulling our Actions on Google locally so that we can link all these together and make full use of Interactive Canvas!

Setting up your Create-React-App and Firebase

To begin, move into the folder where you’d like your project to live in. For example, mine would be Documents/Google Actions Projects so I’ll cd into that folder.

When…


Image created by Celia O

If you’ve ever found yourself wanting to create statistical models with ReactJS, you might’ve come across Recharts.

2 months ago, I did. Being tasked to create an analytics dashboard, I had to find the right ReactJS library that could pair with my project — Recharts. Of course it’s still open for debate as to which other library is better, but that’s a discussion for another time.

If you’ve come across Recharts, you should’ve seen their documentation. It is, in my opinion, one of the most immaculate documentation I’ve ever seen. It is clear, it breaks down their components cleanly. It…


Get it, a lifesaver?

Yes, I know. It’s 2020. React classnames has been out since 2015 and I’m writing about it only now?! Well, better late than never, right?

Throughout my React journey, I’ve crossed paths with classnames on multiple occasions. I would be on Google searching for something like “how to add multiple classes reactjs”, and it never failed to send me to a StackOverflow with answers related to classnames (aka the lifesaver Javascript utility when you need to add many classes and then some).

But I’ll tell you — I never once bothered to pick it up. For some reason, the interface…


So, after writing my first article on how and why The Last Of Us Part 2 (TLOU2) failed big time for me, I kept going back to the content of it. A part of me was afraid that I didn’t get my points across accurately enough. Writer’s anxiety, ya know?

But then another part of me went: “So what would you have done about it?”

If you haven’t played TLOU2 (or like me, watched, because I’m broke as hell and can’t be buying the game, so instead I go on YouTube to watch Let’s Plays) till now, it might help…


When The Last of Us (TLOU) came out 7 years ago, I searched through every YouTube gameplay channel I could that had a bunch of parts uploaded because there was no way I could afford the game nor a console for it, so watching gameplays will suffice. I watched a couple of parts to get myself started and soon found myself binging as much as the creator put out.

The storyline was heartbreaking yet gripping, the gameplay was exciting albeit sometimes nonsensical when the NPCs were… less discrete than they should be but the ending was *chef’s kiss*.


I was just casually browsing my email like any normal human being would when you’re bored, just skipping but not deleting most emails because maybe I’ll read it in the future which explains my thousands of unread emails. And only clicking on emails that intrigue me which is probably… like 1 out of the 200 other TechInAsia, LinkedIn and Medium Daily Digest newsletters that I signed up for, thinking that I’ll be interested in it and hey, maybe it’ll make me look smarter. Ya know, being subbed to all these news… and stuff…… sigh.

I saw this very generic email…

Celia O

A front-end developer who loves to explore new tech, libraries and do some designing in my free time.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store