![](https://flaming.codes/images/posts/critical-perspective-on-civet/preview.webp)
![](https://flaming.codes/images/posts/critical-perspective-on-civet/preview.webp)
Civet, a functional programming oriented language as superset of Typescript
Delving into Civet's syntax enhancements and integration ecosystem to evaluate its real advantages and potential challenges
![](https://flaming.codes/images/posts/migrating-from-nextjs-to-qwik/preview.webp)
![](https://flaming.codes/images/posts/migrating-from-nextjs-to-qwik/preview.webp)
How I migrated flaming.codes from Next.js to Qwik
My two-week journey of migrating flaming.codes from Next.js to Qwik and Qwik City
![](https://flaming.codes/images/posts/windows-95-and-its-relevance-in-computer-history/preview.webp)
![](https://flaming.codes/images/posts/windows-95-and-its-relevance-in-computer-history/preview.webp)
Windows 95 and its relevance in computer history
What fatures Windows 95 established that are still valid today
![](https://flaming.codes/images/posts/using-rewind-ai-for-work-to-document-everything/preview.webp)
![](https://flaming.codes/images/posts/using-rewind-ai-for-work-to-document-everything/preview.webp)
Remember everything with Rewind.ai: using it for work
How Rewind.ai can help you remember things you already forgot
![](https://flaming.codes/images/posts/arc-browser-for-web-development-and-management/preview.webp)
![](https://flaming.codes/images/posts/arc-browser-for-web-development-and-management/preview.webp)
Arc Browser for Web Development & Management
How the Arc Browser's UX improves the workflow for developers
![](https://flaming.codes/images/posts/calming-background-sounds-in-ios-and-macos/preview.webp)
![](https://flaming.codes/images/posts/calming-background-sounds-in-ios-and-macos/preview.webp)
Background sounds in iOS and macOS
How to Use Background Sounds to Create a Calming Environment on iOS and macOS
![](https://flaming.codes/images/posts/barrel-files-in-javascript/preview.webp)
![](https://flaming.codes/images/posts/barrel-files-in-javascript/preview.webp)
Barrel files in JavaScript
The Benefits and Disadvantages of Using Barrel Files in JavaScript
![](https://flaming.codes/images/posts/github-copilot-labs-experimental-extension-to-enhance-github-copilot/preview.webp)
![](https://flaming.codes/images/posts/github-copilot-labs-experimental-extension-to-enhance-github-copilot/preview.webp)
Github Copilot Labs
An experimental extension to enhance Github Copilot
![](https://flaming.codes/images/posts/screenshots-in-pwa-installation-prompt/preview.webp)
![](https://flaming.codes/images/posts/screenshots-in-pwa-installation-prompt/preview.webp)
PWA Screenshot Previews
How to show screenshots in your PWA's installation prompt
![](https://flaming.codes/images/posts/package-agnostic-scripts-with-node-js/preview.webp)
![](https://flaming.codes/images/posts/package-agnostic-scripts-with-node-js/preview.webp)
Package-agnostic scripts with Node.js
How to simplify running scripts in NPM, Yarn and PNPM
![](https://flaming.codes/images/posts/the-satisfies-operator-in-typescript-to-match-some-type/preview.webp)
![](https://flaming.codes/images/posts/the-satisfies-operator-in-typescript-to-match-some-type/preview.webp)
The 'satisfies'-operator in TypeScript
Validate that the type of an expression matches some type, without changing the resulting type of that expression
![](https://flaming.codes/images/posts/a-guide-for-beginners-into-node-js-and-npm/preview.webp)
![](https://flaming.codes/images/posts/a-guide-for-beginners-into-node-js-and-npm/preview.webp)
Guide for beginners into Node.js and NPM
How to start with Node.js and the Node Package Manager
![](https://flaming.codes/images/posts/control-brightness-external-monitors-on-windows/preview.webp)
![](https://flaming.codes/images/posts/control-brightness-external-monitors-on-windows/preview.webp)
Control external monitors on Windows
How to use a free app to control the brightness for all monitors
![](https://flaming.codes/images/posts/the-many-differences-between-unix-and-linux/preview.webp)
![](https://flaming.codes/images/posts/the-many-differences-between-unix-and-linux/preview.webp)
The Many Differences Between Unix and Linux
How two of the most popular operating systems differ from each other.
![](https://flaming.codes/images/posts/a-simple-introduction-to-typescript/preview.webp)
![](https://flaming.codes/images/posts/a-simple-introduction-to-typescript/preview.webp)
A simple introduction to Typescript
A brief introduction to some concepts of Typescript
![](https://flaming.codes/images/posts/get-to-know-symbols-the-unique-data-type-for-object-properties/preview.webp)
![](https://flaming.codes/images/posts/get-to-know-symbols-the-unique-data-type-for-object-properties/preview.webp)
The Symbol in Javascript
Get to Know Symbols: The Unique Data Type for Object Properties
![](https://flaming.codes/images/posts/treewalker-api-to-traverse-dom-nodes/preview.webp)
![](https://flaming.codes/images/posts/treewalker-api-to-traverse-dom-nodes/preview.webp)
DOM TreeWalker API
The TreeWalker API: A powerful tool for traversing the DOM tree.
![](https://flaming.codes/images/posts/better-documentation-in-ts-and-js-with-rich-metadata/preview.webp)
![](https://flaming.codes/images/posts/better-documentation-in-ts-and-js-with-rich-metadata/preview.webp)
Better documentation in TS & JS
How to write better docs in Javascript with rich metadata
![](https://flaming.codes/images/posts/typescript-for-tailwind-css-config/preview.webp)
![](https://flaming.codes/images/posts/typescript-for-tailwind-css-config/preview.webp)
Types for Tailwind-CSS config
How to use Typescript types for Tailwind-CSS
![](https://flaming.codes/images/posts/dark-mode-for-github-markdown-images/preview.webp)
![](https://flaming.codes/images/posts/dark-mode-for-github-markdown-images/preview.webp)
Dark mode for Github Markdown images
How to use different images in Markdown for light or dark mode
![](https://flaming.codes/images/posts/how-to-determine-os-in-browser/preview.webp)
![](https://flaming.codes/images/posts/how-to-determine-os-in-browser/preview.webp)
How to determine OS in browser
Use modern APIs to retrieve information about the host system of your web app
![](https://flaming.codes/images/posts/how-to-use-the-terminal-to-launch-any-installed-simulator/preview.webp)
![](https://flaming.codes/images/posts/how-to-use-the-terminal-to-launch-any-installed-simulator/preview.webp)
Start a specific iOS or iPadOS simulator
How to use the Terminal to select and launch any installed simulator
![](https://flaming.codes/images/posts/new-dynamic-viewport-sizes-dvh-lvh-svh/preview.webp)
![](https://flaming.codes/images/posts/new-dynamic-viewport-sizes-dvh-lvh-svh/preview.webp)
New viewport sizes
How svh, lvh and dvh can improve your responsive design
![](https://flaming.codes/images/posts/msw-in-sveltekit-for-local-development/preview.webp)
![](https://flaming.codes/images/posts/msw-in-sveltekit-for-local-development/preview.webp)
MSW in SvelteKit
How to implement MSW for local development in SvelteKit
![](https://flaming.codes/images/posts/gitpod-ide-in-the-cloud/preview.webp)
![](https://flaming.codes/images/posts/gitpod-ide-in-the-cloud/preview.webp)
Gitpod IDE in the cloud
Ephemeral workspaces, it's all-ops in the cloud
![](https://flaming.codes/images/posts/license-generator-for-dependencies-in-sveltekit/preview.webp)
![](https://flaming.codes/images/posts/license-generator-for-dependencies-in-sveltekit/preview.webp)
License generator in SvelteKit
Create a list of dependencies for you SvelteKit-project
![](https://flaming.codes/images/posts/lazy-loading-modules-in-svelte-to-import-components-on-demand/preview.webp)
![](https://flaming.codes/images/posts/lazy-loading-modules-in-svelte-to-import-components-on-demand/preview.webp)
Lazy loading modules in Svelte
How to import your component on demand
![](https://flaming.codes/images/posts/custom-lib-folder-with-path-alias-in-sveltekit/preview.webp)
![](https://flaming.codes/images/posts/custom-lib-folder-with-path-alias-in-sveltekit/preview.webp)
Custom lib-folder in SvelteKit
How to create a path alias in SvelteKit
![](https://flaming.codes/images/posts/afterdark-screensaver-for-macos-install-guide/preview.webp)
![](https://flaming.codes/images/posts/afterdark-screensaver-for-macos-install-guide/preview.webp)
AfterDark Screensaver for macOS
How to install one of the best screensavers ever
![](https://flaming.codes/images/posts/setup-hmr-for-sveltekit-with-gitpod/preview.webp)
![](https://flaming.codes/images/posts/setup-hmr-for-sveltekit-with-gitpod/preview.webp)
Setup HMR for SvelteKit with Gitpod
How to use Hot Module Reload with SvelteKit and Gitpod
![](https://flaming.codes/images/posts/bundle-fonts-in-your-web-app/preview.webp)
![](https://flaming.codes/images/posts/bundle-fonts-in-your-web-app/preview.webp)
Bundle Fonts in your web app
How Fontsource provides fonts to ship with your app
![](https://flaming.codes/images/posts/generate-svg-from-google-fonts/preview.webp)
![](https://flaming.codes/images/posts/generate-svg-from-google-fonts/preview.webp)
Generate SVG from Google Fonts
How to use a web app to transform any text to SVG
![](https://flaming.codes/images/posts/replace-material-ui-with-tailwind-css/preview.webp)
![](https://flaming.codes/images/posts/replace-material-ui-with-tailwind-css/preview.webp)
Replace Material-UI with Tailwind.css
Case study about replacing Material-UI with Tailwind.css
![](https://flaming.codes/images/posts/lightweigt-alternative-to-axios/preview.webp)
![](https://flaming.codes/images/posts/lightweigt-alternative-to-axios/preview.webp)
Lightweigt alternative to Axios
Using Redaxios instead of Axios as a small alternative
![](https://flaming.codes/images/posts/code-reviews-how-to-level-up-your-skills/preview.webp)
![](https://flaming.codes/images/posts/code-reviews-how-to-level-up-your-skills/preview.webp)
Code Reviews: How to level up your skills
Why code reviews are the most powerful tool to become a better developer
![](https://flaming.codes/images/posts/macos-command-palette-for-power-users-via-raycast/preview.webp)
![](https://flaming.codes/images/posts/macos-command-palette-for-power-users-via-raycast/preview.webp)
Raycast for macOS
A versatile tool control a huge set of common tasks
![](https://flaming.codes/images/posts/github-code-search-to-find-code-in-github-repos/preview.webp)
![](https://flaming.codes/images/posts/github-code-search-to-find-code-in-github-repos/preview.webp)
Github Code Search
How to use Github's fuzzy-search for your repositories
![](https://flaming.codes/images/posts/control-brightness-on-macos-external-displays/preview.webp)
![](https://flaming.codes/images/posts/control-brightness-on-macos-external-displays/preview.webp)
Control brightness on macOS external displays
How to use app called MonitorControl for screen brightness changes
![](https://flaming.codes/images/posts/analyze-css-overview-in-chromium-devtools/preview.webp)
![](https://flaming.codes/images/posts/analyze-css-overview-in-chromium-devtools/preview.webp)
'CSS Overview' in Chromium's DevTools
How to analyze your CSS with DevTools
![](https://flaming.codes/images/posts/typescript-template-string-literal-types-as-discriminants/preview.webp)
![](https://flaming.codes/images/posts/typescript-template-string-literal-types-as-discriminants/preview.webp)
Typescript Template String Types as Discriminants
Improved template literal types with Typescript 4.5
![](https://flaming.codes/images/posts/node-js-builtin-modules-import-syntax/preview.webp)
![](https://flaming.codes/images/posts/node-js-builtin-modules-import-syntax/preview.webp)
Load Node.js builtin modules
A slightly special import-syntax for builtin modules
![](https://flaming.codes/images/posts/coding-in-vr-and-how-real-work-is-possible/preview.webp)
![](https://flaming.codes/images/posts/coding-in-vr-and-how-real-work-is-possible/preview.webp)
Coding in VR
Why the Quest 2 (and more) from Meta is a milestone in virtual reality
![](https://flaming.codes/images/posts/remove-ignored-files-in-git-with-one-command/preview.webp)
![](https://flaming.codes/images/posts/remove-ignored-files-in-git-with-one-command/preview.webp)
Remove ignored files in git
One command to use for removing ignored files that are checked-in
![](https://flaming.codes/images/posts/catch-errors-in-promise-all-alternative/preview.webp)
![](https://flaming.codes/images/posts/catch-errors-in-promise-all-alternative/preview.webp)
Catch errors in Promise.all
A safe alternative to Javascript's Promise.all
![](https://flaming.codes/images/posts/the-most-powerful-ssh-terminal-vs-code/preview.webp)
![](https://flaming.codes/images/posts/the-most-powerful-ssh-terminal-vs-code/preview.webp)
The most powerful SSH-terminal
How to use VS Code as your daily SSH-terminal
![](https://flaming.codes/images/posts/working-with-github-copilot-speed-coding/preview.webp)
![](https://flaming.codes/images/posts/working-with-github-copilot-speed-coding/preview.webp)
Working with Github Copilot
How an AI can improve your coding speed drastically
![](https://flaming.codes/images/posts/github-command-palette-for-searching-github-actions/preview.webp)
![](https://flaming.codes/images/posts/github-command-palette-for-searching-github-actions/preview.webp)
Github Command Palette
How to search for repositories and quick actions on Github
![](https://flaming.codes/images/posts/ux-case-study-of-a-blog-post-article-page/preview.webp)
![](https://flaming.codes/images/posts/ux-case-study-of-a-blog-post-article-page/preview.webp)
UX case study of a blog post page
How I designed the article page for this web app
![](https://flaming.codes/images/posts/what-is-the-navigator-in-progressive-web-apps/preview.webp)
![](https://flaming.codes/images/posts/what-is-the-navigator-in-progressive-web-apps/preview.webp)
What is the 'navigator' in progressive web apps?
How the 'navigator' enables progressively enhancing your web apps
![](https://flaming.codes/images/posts/simple-animated-clock-in-tailwind-css/preview.webp)
![](https://flaming.codes/images/posts/simple-animated-clock-in-tailwind-css/preview.webp)
Simple animated analog clock in Tailwind.css
How to create a very simple analog clock with animation only in Tailwind.css
![](https://flaming.codes/images/posts/ux-case-study-of-a-project-portfolio-page/preview.webp)
![](https://flaming.codes/images/posts/ux-case-study-of-a-project-portfolio-page/preview.webp)
UX case study of a portfolio page
The thoughts that influenced the design of my personal portfolio page
![](https://flaming.codes/images/posts/ux-case-study-of-an-overview-page/preview.webp)
![](https://flaming.codes/images/posts/ux-case-study-of-an-overview-page/preview.webp)
UX case study of an overview page
How I designed the overview page for all post-categories
![](https://flaming.codes/images/posts/special-network-function-for-analytics-data-in-browser/preview.webp)
![](https://flaming.codes/images/posts/special-network-function-for-analytics-data-in-browser/preview.webp)
Special network function for analytics data in browser
How to use 'sendBeacon' to reliably transmit small data chunks
![](https://flaming.codes/images/posts/writing-an-xbar-plugin-in-js-for-plausible-io/preview.webp)
![](https://flaming.codes/images/posts/writing-an-xbar-plugin-in-js-for-plausible-io/preview.webp)
Writing an xbar plugin for Plausible.io
How I wrote a JS-plugin for the xbar-app to see the current number of visitors
![](https://flaming.codes/images/posts/react-js-portal-rendering-out-of-tree/preview.webp)
![](https://flaming.codes/images/posts/react-js-portal-rendering-out-of-tree/preview.webp)
React.js Portal
The magic of rendering elements outside the own DOM-tree
![](https://flaming.codes/images/posts/iphone-screen-sharing-on-mac/preview.webp)
![](https://flaming.codes/images/posts/iphone-screen-sharing-on-mac/preview.webp)
iPhone screen sharing on Mac
How to show your iOS screen on your Mac
![](https://flaming.codes/images/posts/next-js-npm-license-generator/preview.webp)
![](https://flaming.codes/images/posts/next-js-npm-license-generator/preview.webp)
Next.js NPM license generator
How to create licenses from your package.json
![](https://flaming.codes/images/posts/description-of-react-batched-updates/preview.webp)
![](https://flaming.codes/images/posts/description-of-react-batched-updates/preview.webp)
React Batched Updates
How to combine state updates in a single render call
![](https://flaming.codes/images/posts/js-real-network-speed-with-network-information-api/preview.webp)
![](https://flaming.codes/images/posts/js-real-network-speed-with-network-information-api/preview.webp)
Network Information API for PWAs
How to determine real network data in your web app
![](https://flaming.codes/images/posts/boostrap-tailwind-alternative-with-daisy-ui/preview.webp)
![](https://flaming.codes/images/posts/boostrap-tailwind-alternative-with-daisy-ui/preview.webp)
DaisyUI - Tailwind components
The Bootstrap equivalent for Tailwind utility classes
![](https://flaming.codes/images/posts/guide-to-jsx-javascript-xml-syntax/preview.webp)
![](https://flaming.codes/images/posts/guide-to-jsx-javascript-xml-syntax/preview.webp)
JSX
The Javascript XML sytnax
![](https://flaming.codes/images/posts/devtools-progressive-web-app/preview.webp)
![](https://flaming.codes/images/posts/devtools-progressive-web-app/preview.webp)
A PWA called DevTools
A developer's best friend is actually a Progressive Web App, right in Chromium
![](https://flaming.codes/images/posts/supabase-backend-as-a-service-firebase-alternative/preview.webp)
![](https://flaming.codes/images/posts/supabase-backend-as-a-service-firebase-alternative/preview.webp)
Supabase - Backend as a service
A truly open source alternative to Firebase
![](https://flaming.codes/images/posts/android-incremental-filesystem-linux-virtual-fs/preview.webp)
![](https://flaming.codes/images/posts/android-incremental-filesystem-linux-virtual-fs/preview.webp)
Android Incremental FS
How a virtual file system in Android allows for much faster game starts
![](https://flaming.codes/images/posts/github-user-per-project-scope/preview.webp)
![](https://flaming.codes/images/posts/github-user-per-project-scope/preview.webp)
Github user per project scope
How to use a different Github-user for different projects
![](https://flaming.codes/images/posts/seo-without-google-analytics/preview.webp)
![](https://flaming.codes/images/posts/seo-without-google-analytics/preview.webp)
SEO without Google Analytics?
Can you reach Google's top ranks without Analytics enabled?
![](https://flaming.codes/images/posts/node-js-error-with-context-v8-93/preview.webp)
![](https://flaming.codes/images/posts/node-js-error-with-context-v8-93/preview.webp)
Node.js error with context
How to add an error cause to throws in V8 9.3 and later
![](https://flaming.codes/images/posts/android-studio-on-ubuntu-with-nvm-for-react-native/preview.webp)
![](https://flaming.codes/images/posts/android-studio-on-ubuntu-with-nvm-for-react-native/preview.webp)
Android Studio on Ubuntu with NVM
How to correctly setup up NVM on Ubuntu to work with Android Studio
![](https://flaming.codes/images/posts/es6-import-with-parameters/preview.webp)
![](https://flaming.codes/images/posts/es6-import-with-parameters/preview.webp)
ES6 import with parameters
How to pass parameters to an ES6 module when importing it
![](https://flaming.codes/images/posts/moving-to-a-new-flat/preview.webp)
![](https://flaming.codes/images/posts/moving-to-a-new-flat/preview.webp)
Moving to a new flat
How to move to a new flat when you're working up to 12 hours a day
![](https://flaming.codes/images/posts/how-i-learned-12-languages-in-one-night/preview.webp)
![](https://flaming.codes/images/posts/how-i-learned-12-languages-in-one-night/preview.webp)
How I learned 12 languages - in one night
Using the latest from machine learning and some clever caching
![](https://flaming.codes/images/posts/thoughtful-responsible-coding/preview.webp)
![](https://flaming.codes/images/posts/thoughtful-responsible-coding/preview.webp)
Thoughtful Coding
Why coding is more than the stringing together of symbols
![](https://flaming.codes/images/posts/kickscale-easy-meeting-scheduler/preview.webp)
![](https://flaming.codes/images/posts/kickscale-easy-meeting-scheduler/preview.webp)
Kickscale Scheduler
The Gmail-extension to automatically find free meetings
![](https://flaming.codes/images/posts/ac600-driver-netgear-on-ubuntu/preview.webp)
![](https://flaming.codes/images/posts/ac600-driver-netgear-on-ubuntu/preview.webp)
AC600 on Ubuntu
How to install Netgear's AC600 drivers on Ubuntu
![](https://flaming.codes/images/posts/how-to-use-custom-domain-for-firebase-functions/preview.webp)
![](https://flaming.codes/images/posts/how-to-use-custom-domain-for-firebase-functions/preview.webp)
Firebase Functions domain
How to use a custom domain for Firebase Functions
![](https://flaming.codes/images/posts/providing-rss/preview.webp)
![](https://flaming.codes/images/posts/providing-rss/preview.webp)
Providing RSS
This PWA provides an RSS feed
![](https://flaming.codes/images/posts/fix-mobile-webkit-100vh-bug/preview.webp)
![](https://flaming.codes/images/posts/fix-mobile-webkit-100vh-bug/preview.webp)
Fix mobile webkit 100vh
Mobile Webkit's handling of 100vh might need more attention
![](https://flaming.codes/images/posts/open-science-oeffnung-ist-nicht-gleich-oeffnung/preview.webp)
![](https://flaming.codes/images/posts/open-science-oeffnung-ist-nicht-gleich-oeffnung/preview.webp)
Opening ≠ opening
Forms, opportunities and disadvantages of open science
![](https://flaming.codes/images/posts/basic-attention-token-by-brave-background/preview.webp)
![](https://flaming.codes/images/posts/basic-attention-token-by-brave-background/preview.webp)
Basic Attention Token
A new revenue model for the web
![](https://flaming.codes/images/posts/microdata-web-semantic-json-ld-alternative/preview.webp)
![](https://flaming.codes/images/posts/microdata-web-semantic-json-ld-alternative/preview.webp)
Microdata for web semantic
How to enhance your pages with more semantic information
![](https://flaming.codes/images/posts/plasmic-visual-app-builder-by-wysiwyg/preview.webp)
![](https://flaming.codes/images/posts/plasmic-visual-app-builder-by-wysiwyg/preview.webp)
Plasmic
A WYSIWYG web app builder
![](https://flaming.codes/images/posts/android-emulator-on-apple-m1/preview.webp)
![](https://flaming.codes/images/posts/android-emulator-on-apple-m1/preview.webp)
Android Emulator on Apple M1
How to use the Emulator for Android on Apple Silicon devices
![](https://flaming.codes/images/posts/typescript-private-class-properties/preview.webp)
![](https://flaming.codes/images/posts/typescript-private-class-properties/preview.webp)
Typescript Private Class Properties
Typescript supports private properties for classes
![](https://flaming.codes/images/posts/typescript-tuple-types-with-leading-middle-rest-elements/preview.webp)
![](https://flaming.codes/images/posts/typescript-tuple-types-with-leading-middle-rest-elements/preview.webp)
Typescript Tuple Types
How to best type tuples in Typescript 4.2 and later
![](https://flaming.codes/images/posts/chrome-devtools-command-menu-navigation/preview.webp)
![](https://flaming.codes/images/posts/chrome-devtools-command-menu-navigation/preview.webp)
Chrome & Edge DevTools Command Menu
How to navigate the DevTools like a power user
![](https://flaming.codes/images/posts/typescript-template-string-types/preview.webp)
![](https://flaming.codes/images/posts/typescript-template-string-types/preview.webp)
Typescript Template String Types
How to narrow down string types using the template string mechanism
![](https://flaming.codes/images/posts/difference-authn-authz/preview.webp)
![](https://flaming.codes/images/posts/difference-authn-authz/preview.webp)
What is AuthN and AuthZ
A simple guide about the difference between Authorization and Authentication
![](https://flaming.codes/images/posts/advanced-try-catch-finally-in-javascript-and-typescript/preview.webp)
![](https://flaming.codes/images/posts/advanced-try-catch-finally-in-javascript-and-typescript/preview.webp)
Advanced try/catch/finally in Javascript and Typescript
Take a detailed look at the implementation of a try-catch-finally-block
![](https://flaming.codes/images/posts/pwa-vibration-api/preview.webp)
![](https://flaming.codes/images/posts/pwa-vibration-api/preview.webp)
PWA vibration API
Let's use the navigator to shake your device
![](https://flaming.codes/images/posts/advanced-github-markdown-cheatsheet/preview.webp)
![](https://flaming.codes/images/posts/advanced-github-markdown-cheatsheet/preview.webp)
Supercharged Github Markdown
See how versatile Github's Markdown can be
![](https://flaming.codes/images/posts/media-session-api-for-pwa/preview.webp)
![](https://flaming.codes/images/posts/media-session-api-for-pwa/preview.webp)
Media Session API
Providing media meta data and callbacks in your PWA
![](https://flaming.codes/images/posts/web-locks-api-among-multiple-tabs-and-workers/preview.webp)
![](https://flaming.codes/images/posts/web-locks-api-among-multiple-tabs-and-workers/preview.webp)
Web Locks API
Coordinate work and the use of resources among different processes
![](https://flaming.codes/images/posts/when-your-pwa-starts-to-speak-by-wavenet/preview.webp)
![](https://flaming.codes/images/posts/when-your-pwa-starts-to-speak-by-wavenet/preview.webp)
When your PWA starts to speak
Using WaveNet to add speech synthesis for articles
![](https://flaming.codes/images/posts/new-cypress-component-test-runner/preview.webp)
![](https://flaming.codes/images/posts/new-cypress-component-test-runner/preview.webp)
Cypress Component Test Runner
Building unit component tests for React
![](https://flaming.codes/images/posts/fix-for-webkit-100vh-in-tailwind/preview.webp)
![](https://flaming.codes/images/posts/fix-for-webkit-100vh-in-tailwind/preview.webp)
Fix for Webkit's 100vh in Tailwind
How to fix the 100vh behavior in Tailwind
![](https://flaming.codes/images/posts/intellij-for-apple-m1/preview.webp)
![](https://flaming.codes/images/posts/intellij-for-apple-m1/preview.webp)
IntelliJ for Apple M1
The complete IntelliJ-suite is available for Apple's M-processors
![](https://flaming.codes/images/posts/the-disney-method-being-creative-by-system/preview.webp)
![](https://flaming.codes/images/posts/the-disney-method-being-creative-by-system/preview.webp)
The Disney Method
How to be more creative by being more systematic
![](https://flaming.codes/images/posts/how-to-web-share-api-with-pwa-navigator/preview.webp)
![](https://flaming.codes/images/posts/how-to-web-share-api-with-pwa-navigator/preview.webp)
Web Share API
How use the web's native share-API
![](https://flaming.codes/images/posts/fire-code-with-me/preview.webp)
![](https://flaming.codes/images/posts/fire-code-with-me/preview.webp)
Fire Code With Me
It's time to set some code on fire!
![](https://flaming.codes/images/posts/trusted-web-activity-create-pwa-android-app/preview.webp)
![](https://flaming.codes/images/posts/trusted-web-activity-create-pwa-android-app/preview.webp)
Trusted Web Activity
How to validate your web app - and create an Android app from it
![](https://flaming.codes/images/posts/typescript-and-javascript-tagged-template-strings/preview.webp)
![](https://flaming.codes/images/posts/typescript-and-javascript-tagged-template-strings/preview.webp)
Typescript Tagged Template Strings
How to use template strings as functions
![](https://flaming.codes/images/posts/cloudflare-workers-for-serverless-functions-with-cdn/preview.webp)
![](https://flaming.codes/images/posts/cloudflare-workers-for-serverless-functions-with-cdn/preview.webp)
Cloudflare Workers
Fast serverless functions hosted by Cloudflare's CDN
![](https://flaming.codes/images/posts/web-app-badging-api-implementation/preview.webp)
![](https://flaming.codes/images/posts/web-app-badging-api-implementation/preview.webp)
Web App Badging API
How use a badge for your installed PWA
![](https://flaming.codes/images/posts/miller-columns-filesystem-ui/preview.webp)
![](https://flaming.codes/images/posts/miller-columns-filesystem-ui/preview.webp)
Miller Columns
A great layout concept that changed the UI for filesystems
![](https://flaming.codes/images/posts/ux-study-copy-to-clipboard-action-web-api/preview.webp)
![](https://flaming.codes/images/posts/ux-study-copy-to-clipboard-action-web-api/preview.webp)
UX study: copy to clipboard
How to design a copy-to-clipboard action in your UX
![](https://flaming.codes/images/posts/android-performance-class-since-android-12/preview.webp)
![](https://flaming.codes/images/posts/android-performance-class-since-android-12/preview.webp)
Android Performance Class
How each Android version defines its level of performance
![](https://flaming.codes/images/posts/next-js-config-with-typescript/preview.webp)
![](https://flaming.codes/images/posts/next-js-config-with-typescript/preview.webp)
Next.js-config with type checking
How to use type checking for your next.config.js
![](https://flaming.codes/images/posts/digital-morphogenesis-generative-art-by-computation/preview.webp)
![](https://flaming.codes/images/posts/digital-morphogenesis-generative-art-by-computation/preview.webp)
Digital morphogenesis
The interdisciplinary field of natural patterns in digital computation
![](https://flaming.codes/images/posts/github-codespaces-ide-as-a-service/preview.webp)
![](https://flaming.codes/images/posts/github-codespaces-ide-as-a-service/preview.webp)
Codespaces by Github
IDE as a service, available in your browser
![](https://flaming.codes/images/posts/what-is-a-ui-pattern-to-improve-user-interface/preview.webp)
![](https://flaming.codes/images/posts/what-is-a-ui-pattern-to-improve-user-interface/preview.webp)
What is a UI pattern?
Taking a look at a new aspect in UI design
![](https://flaming.codes/images/posts/androidenv-ml-rl-interface-for-android/preview.webp)
![](https://flaming.codes/images/posts/androidenv-ml-rl-interface-for-android/preview.webp)
AndroidEnv
An interface for Reinforcement Learning to access the Android OS
![](https://flaming.codes/images/posts/privacy-first-google-analytics-alternative/preview.webp)
![](https://flaming.codes/images/posts/privacy-first-google-analytics-alternative/preview.webp)
Privacy-First Analytics
How to respect your users and still monitor performance
![](https://flaming.codes/images/posts/firestore-data-bundles-for-cached-firebase-cdn/preview.webp)
![](https://flaming.codes/images/posts/firestore-data-bundles-for-cached-firebase-cdn/preview.webp)
Firestore Data Bundles
A new implementation for cached Firestore documents
![](https://flaming.codes/images/posts/pipeline-operator-in-typescript-chained-function-calls/preview.webp)
![](https://flaming.codes/images/posts/pipeline-operator-in-typescript-chained-function-calls/preview.webp)
Typescript Pipeline Operator
Write chained function calls in Typescript
![](https://flaming.codes/images/posts/publish-pwa-in-the-microsoft-app-store/preview.webp)
![](https://flaming.codes/images/posts/publish-pwa-in-the-microsoft-app-store/preview.webp)
PWA in Microsoft App Store
How to publish your PWA in the Microsoft App Store
![](https://flaming.codes/images/posts/xaas-description-in-cloud-computing/preview.webp)
![](https://flaming.codes/images/posts/xaas-description-in-cloud-computing/preview.webp)
What's XaaS?
It's everything as a service, and more
![](https://flaming.codes/images/posts/google-zx-shell-scripts-with-javascript/preview.webp)
![](https://flaming.codes/images/posts/google-zx-shell-scripts-with-javascript/preview.webp)
Google ZX - shell scripts with Javascript
How to write shell-scripts with Javascript and Node.js
![](https://flaming.codes/images/posts/head-of-remote-work-expierince-best-practices/preview.webp)
![](https://flaming.codes/images/posts/head-of-remote-work-expierince-best-practices/preview.webp)
Head of Remote Work
How to keep everyone and everything in sync