This is a browser extension (supports Firefox, Safari and Chrome) which replaces new tab with more powered and more cusomizable one. User can make their own dashboard using different widgets and organizing them however they want!
CSS Houdini experiments
Houdini is a set of API which exposes low-level control over some CSS processes. Specification is already a few years old, but still not very well-supported in browsers. At the moment of writing, only Chromium (and Chromium-based browsers) support this API on decent level. Which is a bummer, Houdini allows doing some neat stuff with CSS painting.
There is a lot of
<Toast/> components for React. Yet they all represent more global feedback. I wanted a component which will provide minor feedback local to a particular place of the page. Surprisingly, there are only a few mentions of these components (called local toast or inline toast) in public design systems and no React implementation of it. So I had to do my own :)
Sometimes, in browser extension, you need to inject your component on 3rd party page. And oh boy, dealing with styles and isolation of component from parent DOM is a pain in the ass. You can use iframe, of course, but it has its own disadvantages and lacks flexibility. This library injects components using shadow DOM and handles injection of styles automatically (including styled-components and emotion). Comes with detailed tutorial!
WebExtension template with batteries
When are you doing some type of projects regularly, at some point you get so tired of tweaking community templates, so you make your own which suits your needs the best. This template is built on Webpack and comes with TypeScript, React, Sass, code sharing, linter, prettier, and more extension-specific features.
Wall of kanji
So far my best try at generative art. It's web app which enables you to generate poster or wallpaper with Japanese kanji, Korean hangul or Chinese characters. It has a bunch of parameters to customize result and neat exporting for both digital use and printing.
Raindrop.io Telegram bot
This is a bit niche bot. I actively use raindrop.io to manage my bookmarks and stash articles for further reading. Yet, there was no way to save articles from Telegram in Raindrop. And that's how this bot was made. It enables saving links to Raindrop from Telegram, saves longreads as single HTML file for better reading experience in Raindrop app and enables search & sharing your bookmarks directly into Telegram chat.
Business card for local bakery
My voluntary remake of their current business card. Turned out pretty neat in my opinion, but wasn't used by bakery in the end :(
This is quite simple calendar with vintage botanical illustrations. It was good exercise to practice my Affinity Publisher skills, though. Calendar consist of 12 separate A4 pages, so you can easily print it at home and pin on cork board, wall, fridge or wherever you want.