-
Miss Piggy - a test runner for Puppeteer
posted in JavaScript on 2021-02-01 puppeteer, test, runner -
These days I did (again) a bunch of changes in Google tag manager. This time however was more of a refactoring exercise. So, I had to prove that the tags that were placed before the refactoring exist after the refactoring. And what we programmers do in such cases - we write tests.
read more comments
-
Configure Google domain email in Vercel with ImprovMX
posted in Architecture on 2021-01-27 vercel, email, google -
Back in February last year I blog on topic Email not working after DNS change. Well, I had kinda similar situation but not exactly. This time I bought a domain from Google and wanted to use an email with it. The setup wasn't obvious for me so I decided to document the process.
read more comments
-
Reinventing the routing in React apps
posted in JavaScript on 2021-01-18 router, react, navigo -
The router is the backbone of your application. Trust me, that's how it is and I can prove it. One of the fundamental ideas in Web is the URL (Uniform Resource Locator). Or the way of how we very often call it - "web address". No mather what you are building there is a web address which identifies your resource. The router is the front office that accepts the request to particular URL and wires it to a logic. Logic for generating HTML or JSON response or something else. So, the router is very important part of your system.
At the end of last year I rewrote one of my favorite projects - a vanilla JS router called Navigo. I was procrastinating this work for years. Finally I did it in TypeScript and wrote 100+ unit tests along the way. This refactoring opens the door for new features and more importantly, for integrating the library into other places. Like React for example.
read more comments
-
Transpile to ES modules with Babel
posted in JavaScript on 2021-01-14 es, babel, javascript -
While I was working on Navigo an issue popped out. It was about using the library in the context of Web Dev Server where we have everything in TypeScript. And something was not ok with Navigo. The npm package wasn't exported properly and we were keep getting a
read more commentsdoes not provide an export named 'default'
error. It turned out the problem is that Navigo is not exported properly as ES module (also known as ESM).
-
Mocking console methods with Jest
posted in JavaScript on 2021-01-01 jest, mocking, console -
I'm recently working on two OS libraries. Both I'm unit testing with Jest. There is some logic that leads to a warning which I'm doing with
read more commentsconsole.warn
. In the unit tests this is happening quite often so I want to suppress it. Also I want to verify that it happens on the right place.
-
Copy files and directories from and to Kubernetes pods
posted in Architecture on 2020-12-11 Kubernetes, copy, pods -
At work we have a project that uses
read more commentsnode:10-jessie
image as a base for its docker container. That image has novi
inside so I wondered how to check the content of a file. Luckilykubectl
has a neat command to copy files from and to a pod.
-
Replacing code for production with Babel transformation
posted in JavaScript on 2020-11-29 babel, transform, plugin -
If you are building some sort of an app, Babel is probably part of your build system. It is that thing which converts our fancy code to valid, working in a browser, JavaScript. Just recently at work I had to design a solution that swaps a class based on the environment. Or in another words, we have logic that should not reach our users. The file should be available locally and on our staging environment but not in production. A tiny Babel plugin was the cheapest solution for me so I decided to share the result.
read more comments
-
iPhone stuck on the Apple logo
posted in Other on 2020-11-27 iphone, stuck, broken -
Last weekend I was helping a friend to deal with his "broken" iPhone XR. It was stuck on the Apple logo. No mather what we do the phone was just black and the apple shows up.
read more comments
-
Transfer MP3 file from Mac OS Catalina to iPhone iOS 14.0
posted in Other on 2020-09-18 mp3, catalina, iphone -
I did transfer MP3 files from my mac to my iPhone three times and every time I'm forgetting how it actually works. So I decided to document the process into a blog post.
read more comments
-
What the heck is Google Tag Manager and what it has to do with Google Analytics
posted in JavaScript on 2020-09-13 javascript, tagmanager, analytics -
Just recently I had to do changes in Google Tag Manager at work. It's interesting how I keep forgetting how everything works. So I finally decided to sit down and write an article about these things. If nothing else I will have a good memory snapshot to remind me what is what.
read more comments