Latest Stories

Introducing React-Zoomable-Media 🔮🔮🔮 • October 29, 2019

The zooming functionality has been always one of our customer's most wanted features. As our customers are police officers, the need for advance viewing media evidence is a must-have. After the media have been recorded, they need to be processed by the BE team at first since the majority of browsers are only capable of rendering well-known media format like jpeg, png for image and mp4 for video…

Keep Reading →

Ever lasting love movies ❤️ • March 11, 2019

Here we go: 😊 A walk to remember A moment to remember Adrift Be with you Crazy stupid love Dear John Definitely, maybe Love actually Lala land Moulin Rouge Pride and Prejudice Pretty woman Titanic The longest ride The vow The notebook 500 days of summer 50 First dates The curated list above really influence my take on love, it means to me a great deal. Love is like oxygen, we cannot live without…

Keep Reading →

Problems with not using routing system properly -> UX === 😳 • March 07, 2019

First and foremost, I want to list out the common problems with improper implementation of routing systems. After that, I am going to write about how to tackle them one by one. Ready? Here we go: Forget to check for user's permission on each screen Forget to redirect user's back to where they wanted to view in the first place after authentication Render something on screen and redirect user after…

Keep Reading →

Let's talk about SharedWorker 🤔 • March 04, 2019

QUOINE's core product is a trading platform for cryptocurrency where people can trade various kind of currencies includes famous ones like Bitcoin and Ethereum. In order to have a real time system in place, we decided to go with Pusher realtime APIs as a service vendor. Thus, we don't have to worry about technical implementation for both Back-end and Front-end sides. Furthermore, the…

Keep Reading →

Introducing INAB app - aka I Need A Budget 💸 • March 02, 2019

Money can't buy happiness 💞 It's one of the most famous sayings of all times. I had believed this quote for such a very very long time. Until one day, I watched a TED Talks that totally blew my mind away. Seem like the sentence above is not absolutely correct. "Could money buy happiness" - my answer is YES and NO . And here is why: Without being able to fulfill our basic need according to…

Keep Reading →

Be well Be Happy 💞 • January 30, 2019

It all started by a beautiful day, the sky was so clear and everything looked shiny. On the 1st of January 2018, I came back to my hometown to enjoy short holiday with my family. After couple of days, after the holidays was over, I ride back 🏍 to Ho Chi Minh city where I lived and working. I felt a bit sick as I got some temperature. It was raining, I thought it wasn't that hard so I decided to…

Keep Reading →

Cancelling pending requests on route-changed to improve application's performance at QUOINE 🚀 • January 18, 2019

Initially, the situation was that whenever users navigate too fast among difference routes. This process made a ton of API calls that stacking up the browsers' networking queues. As per HTTP 1, browsers can only support certain amount of concurrent requests at any given time (source - max parallel http connections in a browser ). Even though with HTTP 2, that won't be the case as one single TCP…

Keep Reading →

The problems we faced at QUOINE 😱 • January 13, 2019

The link to the full presentation is located at https://fe-codebase-quoine.netlify.com 🚀

Keep Reading →

Simple state management with singleton pattern at QUOINE 🗽 • January 13, 2019

At QUOINE, we use Redux for all the thing with regard to state management. It comes with several costs: Boilerplate all over places Action, reducer and connected component are three files to maintain regardless of the size of a feature The whole React's VDOM tree re-renders on every action dispatch because we do not use any immutability library in combination with Redux Currently, we need a way…

Keep Reading →

Forking create-react-app at QUOINE - part 4 💻 • January 04, 2019

This is a four parts of the process: Remove unnecessary stuff included in the original create-react-app v2 tooling Customize Jest configuration Customize Webpack development configuration Customize Webpack production configuration The final part of this series is devoted for configuring webpack's production mode for building web applications at QUOINE. Here is our FE's current codebase structure…

Keep Reading →

Forking create-react-app at QUOINE - part 3 💻 • January 04, 2019

This is a four parts of the process: Remove unnecessary stuff included in the original create-react-app v2 tooling Customize Jest configuration Customize Webpack development configuration Customize Webpack production configuration At QUOINE, we were using CSS module across our applications. Needless to say. the biggest drawback of this approach is dynamic property configuration and lack of theming…

Keep Reading →

Forking create-react-app at QUOINE - part 2 💻 • January 04, 2019

This is a four parts of the process: Remove unnecessary stuff included in the original create-react-app v2 tooling Customize Jest configuration Customize Webpack development configuration Customize Webpack production configuration The way we structure our application at QUOINE is not something that natively supported by the original CRA. Specifically, CRA only support a single application under…

Keep Reading →

Forking create-react-app at QUOINE - part 1 💻 • January 04, 2019

This is a four parts of the process: Remove unnecessary stuff included in the original create-react-app v2 tooling Customize Jest configuration Customize Webpack development configuration Customize Webpack production configuration The create-react-app version 2 from Facebook's core team has upgraded vast majority of key technologies included such as: Webpack version 4 Jest version 23 Babel version…

Keep Reading →