Adb reverse gives the error: more than one device/emulator

When debugging a ReactNative app on a physical Android device, one can get an error that the device cannot connect to Metro. Usually, the error is related to the port forwarding not being set up (the laptop port 8081 should be exposed to the device port 8081). When you have more than 1 device connected… Continue reading Adb reverse gives the error: more than one device/emulator

NX Dev Not Replacing an Environment Variable in a React Project

TL;DR: %ENV_VAR% => %NX_ENV_VAR% We are using nx.dev to build a set of apps and libraries for one of our clients. Recently we found out that a CI/CD script we use to set the version number in the index.html file of the react apps was not working. It simply appends a GET parameter to a… Continue reading NX Dev Not Replacing an Environment Variable in a React Project

NX.dev – Problems with buildable libraries.

We are building a shared UI platform for one of our clients where we decided to store the code in a monorepo and use nx.dev to help us with the code organisation, dependencies, builds, etc. When trying to set up the common libraries of the project as publishable (and buildable) libs, we run into compilation… Continue reading NX.dev – Problems with buildable libraries.

The Career Path of a Dev – Being a Perfectionist vs Being Sloppy

On 12th Nov 2022, I was at js.talks(). Radoslav Stankov from Product Hunt gave a talk about being an effective JS Dev. One of his examples was with some of his fellow developers that had a special relationship with unit tests.They were reading a lot about unit testing and were very interested in the topic,… Continue reading The Career Path of a Dev – Being a Perfectionist vs Being Sloppy

Grafana Panel Not Refreshing in Real-time (sometimes)

For one of our clients, we’re using Grafana to display charts for the device data. These charts (panels) are embedded in a React app as iframes. Recently we noticed a strange issue with one of the embedded charts. The bar chart values were updated, but not their colouring. If one would reload the iframe URL,… Continue reading Grafana Panel Not Refreshing in Real-time (sometimes)

WordPress: Creating a staging version, makes the production wp-login redirect to the staging one.

I had a Redis Cache Plugin enabled for the website. It turns out that the Redis Cache Plugin uses the table prefix as a prefix for the Redis Cache keys. So if your staging site has a separate DB, but with the same prefix as in the prod one, the Redis Cache will get mixed… Continue reading WordPress: Creating a staging version, makes the production wp-login redirect to the staging one.

In a React app, I need to press the back button 2 times in order to go to the previous page

In case you have such an issue, and verify that you don’t call history.push() 2 times, check your content for an iframe. TL; DR: React tries to minimize re-rendering and will reuse the iframe element by just changing its src. This will update the history object, which is apparently shared with the main page (and… Continue reading In a React app, I need to press the back button 2 times in order to go to the previous page

React Drag And Drop not working with AnyDesk

We had a very strange issue with a project we work on. Our React app supports drag-and-drop of devices on a floorplan, using react-dnd. Everything works just fine locally and on our servers, but once the UI is deployed to the production machine (that is accessible via intranet), the drag-and-drop stopped working. Debugging the production… Continue reading React Drag And Drop not working with AnyDesk

React Native Shadow is Missing on iOS but is Okay on Android

In one of our projects, some of the items that had a shadow, was working just fine on Android, but the shadow was missing on iOS. After investigating it, it turned out to be related to the items that had overflow: ‘hidden’, which on iOS resulted in shadow being trimmed. Turns out on iOS, the… Continue reading React Native Shadow is Missing on iOS but is Okay on Android