You didn't provide any data, entered invalid email or already subscribed.
Try again. And if you still can't subscribe—write us.
Address successfully subscribed!
December 22, 2023
≈ 42 seconds
Ever found yourself in a situation where you needed to generate a PDF with fixed headers and footers on each page? Maybe you've been through countless forums and documentation pages, only to end up more confused. If this sounds familiar, you're in the right place! Here is a straightforward...
December 2, 2022
≈ 45 seconds
Attempting to generate a PDF with 🚀👌 😉 and getting ? Googling has led you there:
https://github.com/dompdf/dompdf/issues/1698, where you learned that the problem is hard, not solved yet, and that emojis support should be added to php-font-lib first? What should you do next if you still want emojis in your generated PDF?
November 15, 2022
≈ 5 minutes 14 seconds
Why did I decide to try Docker after being totally happy with Vagrant for such a long time? Well, I switched to the new dev machine, based on an M1 processor, which is unsupported by VirtualBox. Also for the speed, less disc consumption, ease of networking between containers and other benefits of containerized approach, such as when I'm working on...
June 30, 2022
≈ 1 minute 51 seconds
A lot of times, while working on a project without CSS frameworks, I found myself googling for alert boxes, which I can copy and paste without any setup. Every time I paste the code it requires some additional adjustments. So I made inline Error, Success, Info, and Warning forms with a close button and zero javascript. I use it myself and now...
May 31, 2022
≈ 51 seconds
How to convert inline SVG image into PNG in the browser? —The easiest way is to draw it on the canvas and use toDataUrl() function. The catch is browser support, especially mobile browsers and desktop Safari. When you try to use toDataUrl() function of canvas with SVG, it becomes «tainted» and blows up with...
December 26, 2021
≈ 2 minutes 6 seconds
You probably already know that FFmpeg can resize images proportionally, and also that it can't overwrite them. So you either save resized files under new names or into a new folder, and it becomes tedious... When you repeat the same pattern multiple times over the week, it's time to search for a way to automate it...
November 22, 2021
≈ 3 minutes 29 seconds
Recently I made a single file upload component for Vue with drag'n'drop support. I made it suitable for my Vue2 and Vue3 projects and while publishing on NPM, I thought there would be a simple way to make it installable for both Vue2 and Vue3 users. But there was a number of catches...
November 12, 2021
≈ 1 minute 46 seconds
A lot of times I used the event variable in my Javascript functions, saw «Deprecated symbol used, consult docs for better alternative» warning from my IDE, and just ignored it. Day-by-day, curiosity for what is event, why it is deprecated, and what should I use instead reached the level where I decided to learn about...
September 14, 2021
≈ 43 seconds
Filters in CSS are commonly used to adjust the rendering of images, backgrounds, and borders. With filters, you can make a picture grayscale, increase the contrast, make it blur, add shadow, or completely invert the colors. Here is a little downloadable and a printable cheat sheet with CSS ...
September 8, 2021
≈ 57 seconds
Tailwind CSS is a modern utility-first CSS framework with great documentation.
This guide will show you how to extend Tailwind with plugins, which you can write yourself. We are going to create plugin.js file and include it in tailwind.config.js configuration file. The purpose of the plugin is to just output...