
Run Cystoscape.js with Node.js
Why? If you need to generate an image on the server side. At first, I thought it was impossible....

Author profile
Hello, I'm a full stack web developer. Follow me on Twitter!
Browse the latest writing surfaced through DevArt.

Why? If you need to generate an image on the server side. At first, I thought it was impossible....

I created image components a couple of times before: Responsive images for...

Tauri and Puppeteer/Playwright have different use cases. So it seems nothing to compare. But there is...

Let’s say you need to distribute binary in npm. I’m not talking about node extensions (node-gyp,...

This list is about tools beyond static hosting and static website generators. There are already...

Where can be used validate http request from client (at server side) validate http...

aka diagrams as code I dreamt about it for a long time. Idea is to allow to express diagrams with a...

aka relative links, file path links. Software supports portable markdown links if for content like...

Basic idea - navigating between pages is slow, because: browser waits for network response it is...

JS micromark used by mdast-util-from-markdown used by remark-parse used...

Headless and accessible aka unstyled, renderless Main idea is to provide all the logic...

Introduction Typical problem: you want to distribute React (Solid, Vue, etc.) component in...

react-native-web itself doesn't require any tricky configuration to work with Vite. import {...

Modern PWAs are very powerful - they can use/do: geolocation, notifications, file system, payment,...

style prop <div style={{ color: "red" }} /> Enter fullscreen mode ...

WCAG Initially I was confused by WCAG, WAI-ARIA and other standards. I took time to figure...

Imagine you have a list (or a table) with checkboxes, for example, to do list, mail inbox, or...

Stop choosing DX over UX. – Devon Govett (@devongovett) By no means I want to dunk on Devon. This...

Inspired by Braid Dialog: It’s recommended that you connect the Dialog’s open state to your router...

Based on: Theory of Computation (CS3102), Spring 2017, videos are here It’s Time for a New Old L...

Why do we need parsers? The first obvious use case is computer languages. (I use the term...

In my first post I didn’t mention “parser combinators”. Parser combinator is the way to construct re...

What is accessibility? Definition of accessible 1a : capable of being reached a remote r...

Random notes about naming conventions (for my small research). Send more examples along the way....

And indeed, on some absolute scale of things, we probably know less about the essence of computer sc...

Template literals is a pretty simple thing - it is a multi-line string with interpolations: // ins...

Based on Theory of Computation (CS3102), Spring 2017, videos are here. Definitions Let’s...

Accidental complexity All software construction involves essential tasks, the fashioning...

I like Markdown for its simplicity. Simplicity comes with limitations. There are some features that I...

Improve syntax highlighting Traditionally IDE (or text editors) use regular expressions to...