# SVG

SVG is an XML-based language for describing two-dimensional vector and mixed vector/raster graphics.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Релиз рабочего окружения GNOME 51 A Coruña

DevFeed: [Релиз рабочего окружения GNOME 51 A Coruña](<https://devfeed.tech/articles/gnome-51-a-coruna-40897.md>)

Original publisher: [Read original article](<https://habr.com/ru/news/1083092/>)

Author: denis-19

Published: 2026-09-17T08:31:45Z

Content type: news

Language: ru

Sources: [Tagir Valeev](<https://devfeed.tech/sources/tagir-valeev.md>)

Topics: [input](<https://devfeed.tech/topics/input.md>), [Wayland](<https://devfeed.tech/topics/wayland.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [background](<https://devfeed.tech/tags/background.md>), [capture](<https://devfeed.tech/tags/capture.md>), [files](<https://devfeed.tech/tags/files.md>), [gnome](<https://devfeed.tech/tags/gnome.md>), [gnome-51](<https://devfeed.tech/tags/gnome-51.md>), [input](<https://devfeed.tech/tags/input.md>), [panel](<https://devfeed.tech/tags/panel.md>), [settings](<https://devfeed.tech/tags/settings.md>), [svg](<https://devfeed.tech/tags/svg.md>), [tag-08a48a9394c3](<https://devfeed.tech/tags/tag-08a48a9394c3.md>), [tag-cb5ff012b3f0](<https://devfeed.tech/tags/tag-cb5ff012b3f0.md>), [wayland](<https://devfeed.tech/tags/wayland.md>)

### AI overview

GNOME 51, codenamed A Coruña, was released on September 16, 2026. The release improves performance and settings, adds new GNOME Circle applications and elements, and introduces features including monitor brightness restoration, elogind support, a QR-code generation API, input capture portal support, improved screen recording, SVG-based cursors, and Wayland background effects.

### Source excerpt

16 сентября 2026 года состоялся релиз рабочего окружения GNOME 51 под кодовым названием A Coruña. В проекте оптимизирована производительность и настройки, добавлены новые элементы и приложения в GNOME Circle. Читать далее

## GTK 4.24 Released With Better Fractional Scaling, More Precise GDK Frame-Clock

DevFeed: [GTK 4.24 Released With Better Fractional Scaling, More Precise GDK Frame-Clock](<https://devfeed.tech/articles/gtk-4-24-released-with-better-fractional-scaling-more-precise-gdk-frame-clock-12405.md>)

Original publisher: [Read original article](<https://www.phoronix.com/news/GTK-4.24-Released>)

Author: Michael Larabel

Published: 2026-09-12T10:52:32Z

Content type: news

Language: en

Sources: [Phoronix](<https://devfeed.tech/sources/phoronix.md>)

Topics: [GTK](<https://devfeed.tech/topics/gtk.md>), [Wayland](<https://devfeed.tech/topics/wayland.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Android](<https://devfeed.tech/topics/android.md>), [bug](<https://devfeed.tech/topics/bug.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [bug-fixes](<https://devfeed.tech/tags/bug-fixes.md>), [desktop](<https://devfeed.tech/tags/desktop.md>), [desktop-linux](<https://devfeed.tech/tags/desktop-linux.md>), [feature](<https://devfeed.tech/tags/feature.md>), [linux-benchmarking](<https://devfeed.tech/tags/linux-benchmarking.md>), [linux-hardware-benchmarks](<https://devfeed.tech/tags/linux-hardware-benchmarks.md>), [linux-hardware-reviews](<https://devfeed.tech/tags/linux-hardware-reviews.md>), [linux-how-to](<https://devfeed.tech/tags/linux-how-to.md>), [linux-performance](<https://devfeed.tech/tags/linux-performance.md>), [linux-server-benchmarks](<https://devfeed.tech/tags/linux-server-benchmarks.md>), [open-source-graphics](<https://devfeed.tech/tags/open-source-graphics.md>), [phoronix](<https://devfeed.tech/tags/phoronix.md>), [phoronix-test-suite](<https://devfeed.tech/tags/phoronix-test-suite.md>), [release](<https://devfeed.tech/tags/release.md>), [svg](<https://devfeed.tech/tags/svg.md>), [ubuntu-benchmarks](<https://devfeed.tech/tags/ubuntu-benchmarks.md>), [ubuntu-hardware](<https://devfeed.tech/tags/ubuntu-hardware.md>)

### AI overview

GTK 4.24 is a stable feature release that improves fractional scaling, frame timing, reduced-motion behavior, SVG support, and Wayland integration. It also includes Android frame-timing improvements and many bug fixes, while session save and restore has moved to GTK 4.26.

### Source excerpt

GTK 4.24 released on Friday as the newest stable feature release to the GTK4 toolkit. It's quite a nice update to GTK4 for pairing with next week's GNOME 51 desktop release...

## Typst 0.15 adds variable fonts, MathML, and multiple bibliographies

DevFeed: [Typst 0.15 adds variable fonts, MathML, and multiple bibliographies](<https://devfeed.tech/articles/typst-makes-big-strides-8494.md>)

Original publisher: [Read original article](<https://lwn.net/Articles/1092993/>)

Author: jake

Published: 2026-09-09T15:37:55Z

Content type: news

Language: en

Sources: [LWN.net](<https://devfeed.tech/sources/lwn-net.md>)

Topics: [Typst](<https://devfeed.tech/topics/typst.md>), [pdf](<https://devfeed.tech/topics/pdf.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Variable Fonts](<https://devfeed.tech/topics/variable-fonts.md>), [LaTeX](<https://devfeed.tech/topics/latex.md>), [Rust](<https://devfeed.tech/topics/rust.md>)

Tags: [apache](<https://devfeed.tech/tags/apache.md>), [features](<https://devfeed.tech/tags/features.md>), [fonts](<https://devfeed.tech/tags/fonts.md>), [latex](<https://devfeed.tech/tags/latex.md>), [new-features](<https://devfeed.tech/tags/new-features.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [pdf](<https://devfeed.tech/tags/pdf.md>), [rust](<https://devfeed.tech/tags/rust.md>), [variable-fonts](<https://devfeed.tech/tags/variable-fonts.md>)

### AI overview

Typst 0.15 adds support for variable fonts, MathML, multiple bibliographies, and other features. The article examines variable-font support and demonstrates it with Roboto Flex and Zycon.

### Source excerpt

Typst is a system for typesetting documents into various formats: PDF, SVG, PNG, and, in progress, HTML. It is adept at handling technical material, and is often considered to be an eventual LaTeX replacement. We last looked in on Typst a year ago, when it had reached version 0.13. A new version, 0.15, was released in June with lots of new features, including support for variable fonts, MathML, multiple bibliographies, and more. Typst is free, Apache-2.0-licensed software, programmed in Rust.

## Timing Charts: A Blueprint For SMIL Animations

DevFeed: [Timing Charts: A Blueprint For SMIL Animations](<https://devfeed.tech/articles/timing-charts-a-blueprint-for-smil-animations-4326.md>)

Original publisher: [Read original article](<https://smashingmagazine.com/2026/08/timing-charts-blueprint-smil-animations/>)

Author: hello@smashingmagazine.com (Johan Grobler)

Published: 2026-08-20T13:00:00Z

Content type: tutorial

Language: en

Sources: [Articles on Smashing Magazine -- For Web Designers And Developers](<https://devfeed.tech/sources/articles-on-smashing-magazine-for-web-designers-and-developers.md>)

Topics: [SVG](<https://devfeed.tech/topics/svg.md>), [SVG animations in CSS](<https://devfeed.tech/topics/svg-animations-in-css.md>), [frontend animation](<https://devfeed.tech/topics/frontend-animation.md>), [web animation](<https://devfeed.tech/topics/web-animation.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [css](<https://devfeed.tech/tags/css.md>), [css-animations](<https://devfeed.tech/tags/css-animations.md>), [design](<https://devfeed.tech/tags/design.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

This article explains SMIL as a way to animate SVG graphics without JavaScript. It introduces timing charts as a planning tool for coordinating animation start and stop times, and discusses how structured planning can make verbose SMIL markup easier to manage.

### Source excerpt

Discover SMIL, the often-overlooked way to animate SVGs that works inside `` tags and can fully animate everything in an SVG without JavaScript.

## A real chart in 15 lines of SVG, no library

DevFeed: [A real chart in 15 lines of SVG, no library](<https://devfeed.tech/articles/a-real-chart-in-15-lines-of-svg-no-library-9020.md>)

Original publisher: [Read original article](<https://markodenic.tech/a-real-chart-in-15-lines-of-svg-no-library/>)

Author: Marko

Published: 2026-08-19T11:34:04Z

Content type: tutorial

Language: en

Sources: [Marko Denic Tech](<https://devfeed.tech/sources/marko-denic-tech.md>)

Topics: [SVG](<https://devfeed.tech/topics/svg.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [data](<https://devfeed.tech/topics/data.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [blog-for-developers](<https://devfeed.tech/tags/blog-for-developers.md>), [build-faster](<https://devfeed.tech/tags/build-faster.md>), [code](<https://devfeed.tech/tags/code.md>), [code-productivity](<https://devfeed.tech/tags/code-productivity.md>), [code-smarter](<https://devfeed.tech/tags/code-smarter.md>), [coding](<https://devfeed.tech/tags/coding.md>), [content-monetization](<https://devfeed.tech/tags/content-monetization.md>), [css](<https://devfeed.tech/tags/css.md>), [css-animation](<https://devfeed.tech/tags/css-animation.md>), [css-performance](<https://devfeed.tech/tags/css-performance.md>), [design](<https://devfeed.tech/tags/design.md>), [developer-growth](<https://devfeed.tech/tags/developer-growth.md>), [developer-resources](<https://devfeed.tech/tags/developer-resources.md>), [email-newsletter-for-coders](<https://devfeed.tech/tags/email-newsletter-for-coders.md>), [front-end-development](<https://devfeed.tech/tags/front-end-development.md>), [github-profile-automation](<https://devfeed.tech/tags/github-profile-automation.md>), [html](<https://devfeed.tech/tags/html.md>), [html-tips](<https://devfeed.tech/tags/html-tips.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [javascript-tricks](<https://devfeed.tech/tags/javascript-tricks.md>), [learn-to-code](<https://devfeed.tech/tags/learn-to-code.md>), [marketing](<https://devfeed.tech/tags/marketing.md>), [responsive-design-tips](<https://devfeed.tech/tags/responsive-design-tips.md>), [svg](<https://devfeed.tech/tags/svg.md>), [ui](<https://devfeed.tech/tags/ui.md>), [web-dev-newsletter](<https://devfeed.tech/tags/web-dev-newsletter.md>), [web-development](<https://devfeed.tech/tags/web-development.md>), [web-development-tips](<https://devfeed.tech/tags/web-development-tips.md>), [weekly-dev-tips](<https://devfeed.tech/tags/weekly-dev-tips.md>), [workflow-optimization](<https://devfeed.tech/tags/workflow-optimization.md>)

### AI overview

A practical guide to creating responsive, accessible data visualizations with inline SVG in about 15 lines, without a charting library. It explains coordinate mapping, responsive sizing, area fills, bar spacing, and common rendering considerations.

### Source excerpt

No chart library needed. Inline SVG plots your data in 15 lines, scales to any container, and styles with the same CSS as everything else.

## Agentic Coding: Bet on the Primitives

DevFeed: [Agentic Coding: Bet on the Primitives](<https://devfeed.tech/articles/agentic-coding-bet-on-the-primitives-18935.md>)

Original publisher: [Read original article](<https://www.robinwieruch.de/agentic-coding-bet-on-primitives/>)

Author: Robin Wieruch

Published: 2026-07-31T06:00:00Z

Content type: opinion

Language: en

Sources: [Robin Wieruch](<https://devfeed.tech/sources/robin-wieruch.md>)

Topics: [agentic-coding](<https://devfeed.tech/topics/agentic-coding.md>), [coding](<https://devfeed.tech/topics/coding.md>), [React](<https://devfeed.tech/topics/react.md>), [SVG](<https://devfeed.tech/topics/svg.md>)

Tags: [abstraction](<https://devfeed.tech/tags/abstraction.md>), [agentic-coding](<https://devfeed.tech/tags/agentic-coding.md>), [ai-coding-agents](<https://devfeed.tech/tags/ai-coding-agents.md>), [ai-engineer](<https://devfeed.tech/tags/ai-engineer.md>), [build-vs-buy-components](<https://devfeed.tech/tags/build-vs-buy-components.md>), [coding](<https://devfeed.tech/tags/coding.md>), [d3-vs-recharts](<https://devfeed.tech/tags/d3-vs-recharts.md>), [opinions](<https://devfeed.tech/tags/opinions.md>), [react](<https://devfeed.tech/tags/react.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

The article argues that agentic coding lowers implementation costs enough to make owning lower-level primitives more practical. It describes an experiment comparing D3 math primitives with React-rendered SVG against Recharts for custom charts: Recharts reached most of the result faster, but its remaining customization needs and an animation issue led to more workarounds than the primitive-based approach.

### Source excerpt

Agentic coding collapses the cost of implementation labor. Why the rational bet is moving from high-level libraries back to primitives you own.

## GNU Hurd Q2 2026 development updates

DevFeed: [GNU Hurd Q2 2026 development updates](<https://devfeed.tech/articles/2026-q2-32750.md>)

Original publisher: [Read original article](<http://www.gnu.org/software/hurd/news/2026-q2.html>)

Published: 2026-07-03T20:32:51Z

Content type: news

Language: en

Sources: [GNU Hurd](<https://devfeed.tech/sources/gnu-hurd.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [POSIX](<https://devfeed.tech/topics/posix.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [virtio](<https://devfeed.tech/topics/virtio.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [Wiki](<https://devfeed.tech/topics/wiki.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [code](<https://devfeed.tech/tags/code.md>), [crash](<https://devfeed.tech/tags/crash.md>), [cross-compilation](<https://devfeed.tech/tags/cross-compilation.md>), [posix](<https://devfeed.tech/tags/posix.md>), [servers](<https://devfeed.tech/tags/servers.md>), [svg](<https://devfeed.tech/tags/svg.md>), [virtio](<https://devfeed.tech/tags/virtio.md>), [wiki](<https://devfeed.tech/tags/wiki.md>)

### AI overview

A quarterly GNU Hurd development update covering a public 9pfs repository with basic file browsing and reading support, additional write support, POSIX-related validation, bug fixes, cross-compilation work, Rust translator development, and planned dynamic device population.

### Source excerpt

Hello and welcome to another Qoth! Here's what's been happening in Q2 of 2026! Joshua Branson added a pretty cool svg logo for our ethernet multiplexor. He built that image with Inkscape whilst using a Hurd laptop (Thinkpad 420) running on real iron! The Hurd wiki could certainly use more artwork. Perhaps you have a favorite Hurd translator that you believes needs some artwork! Sergey Bugaev announced his WIP 9pfs (source code), and it has a wiki page! He writes: Some years ago, I experimented with implementing a 9P translator for the Hurd. Hopefully there is no need to tell this list what 9P is :) Besides just browsing files on the few existing servers out there, a potential use case is virtio-9p, to enable shared directory trees between VMs and the host. But that would need someone to implement virtio support in the Hurd. I wanted to complete 9pfs before publishing, but that ultimately didn't happen, so now it's time to turn it over to the community. I now went and made the repository public on GitHub: https://github.com/bugaevc/9pfs What's implemented is basic browsing (readdir, stat), path resolution (dir_lookup), and reading files (io_read). And below that, the whole tracking for nodes, peropens, protids, fids, tags, and 9p RPCs. Improvements are welcome, send patches to this list with [PATCH 9pfs] in the subject. A good starting point would be to continue porting things that I had implemented in the old netfs-based version (see netfs.c) but didn't yet port to the new one. He then got a little more motivated, and he added some write support! Etienne Brateau added validation to msync, so that the Hurd better follows POSIX. Diego Nieto Cid worked on allowing privileged users to set their task priority (nice value). His patches landed in glibc and GNU Mach. He also fixed a tiny bug in our test suite. He fixed an adjtime bug, which is helpful to the OpenNTPD port, and he fixed two more bugs. Paulo Duarte sent a RFC patch series trying to commit Sergey's previous AA

## Vercel Open Source Program: Spring 2026 cohort

DevFeed: [Vercel Open Source Program: Spring 2026 cohort](<https://devfeed.tech/articles/vercel-open-source-program-spring-2026-cohort-785.md>)

Original publisher: [Read original article](<https://vercel.com/blog/vercel-open-source-program-spring-2026-cohort>)

Author: Amy Egan

Published: 2026-06-29T13:00:00Z

Content type: news

Language: en

Sources: [Vercel News](<https://devfeed.tech/sources/vercel-news.md>)

Topics: [Open Source](<https://devfeed.tech/topics/open-source.md>), [Vercel](<https://devfeed.tech/topics/vercel.md>), [Maintainers](<https://devfeed.tech/topics/maintainers.md>), [Next.js](<https://devfeed.tech/topics/next-js.md>), [React](<https://devfeed.tech/topics/react.md>), [Model Context Protocol (MCP)](<https://devfeed.tech/topics/model-context-protocol-mcp.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [MCP](<https://devfeed.tech/topics/mcp.md>), [Filesystems](<https://devfeed.tech/topics/filesystems.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Framer Motion](<https://devfeed.tech/topics/framer-motion.md>), [SVG](<https://devfeed.tech/topics/svg.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [ascii](<https://devfeed.tech/tags/ascii.md>), [browser](<https://devfeed.tech/tags/browser.md>), [maintainers](<https://devfeed.tech/tags/maintainers.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [model-context-protocol](<https://devfeed.tech/tags/model-context-protocol.md>), [next-js](<https://devfeed.tech/tags/next-js.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [react](<https://devfeed.tech/tags/react.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [vercel](<https://devfeed.tech/tags/vercel.md>)

### AI overview

Vercel announces the Spring 2026 cohort of its Open Source Program, providing selected maintainers with platform credits, third-party service credits, and guidance. The cohort includes projects for ASCII video rendering, React UI components, MCP server development, animated icons, design systems, and abstract syntax tree exploration.

### Source excerpt

The world runs on open source software. The frameworks, libraries, and tools we rely on are made possible by communities that share ideas and build in the open. At Vercel, we want to help those communities thrive. That's why we run the Vercel Open Source Program: a developer initiative that gives maintainers the resources and support they need to keep shipping and growing their projects. Four times a year, we welcome a new cohort of open source projects into the program. Maintainers receive $3,600 in Vercel platform credits, a starter pack with credits from third-party services, and guidance from Vercel and the community. Today, we welcome a new cohort into the program. Spring 2026 cohortASCII Studio A browser-based tool that converts video frames in real time into precise ASCII representations using an optimized rendering pipeline. Users can adjust density, contrast, and character sets to produce customized ASCII animations. Creator: Vansh Nagar View the project View GitHub repository Sync UI A free, open-source React UI library offering 125+ animated components, 13+ pre-built blocks, and 3 premium templates. Built with Material UI and Motion (motion/react), designed for design engineers building landing pages and Next.js projects. Creator: Abhi Varde View the project View GitHub repository xmcp A TypeScript framework for building and deploying MCP (Model Context Protocol) servers, featuring file-system routing, hot reloading, middleware support, and flexible deployment options including zero-config Vercel support. Creator: Valentina Bearzotti View the project View GitHub repository Componentry An open-source collection of animated, interactive React UI components styled with Tailwind CSS and Framer Motion, designed to be copied and pasted into apps rather than installed as a dependency. Creator: Harsh Jadhav View the project View GitHub repository AnimateIcons A library of 281 animated SVG icons for React, built on motion/react with hover and imperative triggers p

## OpenAPI, ORM, SVG and Lottie

DevFeed: [OpenAPI, ORM, SVG and Lottie](<https://devfeed.tech/articles/openapi-orm-svg-and-lottie-19231.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/build-time-codegen/>)

Author: Shai Almog

Published: 2026-06-01T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [Code generation](<https://devfeed.tech/topics/code-generation.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [JSON](<https://devfeed.tech/topics/json.md>), [XML](<https://devfeed.tech/topics/xml.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [ASP.NET Core](<https://devfeed.tech/topics/asp-net-core.md>), [FastAPI](<https://devfeed.tech/topics/fastapi.md>), [Nest](<https://devfeed.tech/topics/nestjs.md>)

Tags: [build](<https://devfeed.tech/tags/build.md>), [fastapi](<https://devfeed.tech/tags/fastapi.md>), [http](<https://devfeed.tech/tags/http.md>), [java](<https://devfeed.tech/tags/java.md>), [json](<https://devfeed.tech/tags/json.md>), [lottie](<https://devfeed.tech/tags/lottie.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [net](<https://devfeed.tech/tags/net.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [orm](<https://devfeed.tech/tags/orm.md>), [rest](<https://devfeed.tech/tags/rest.md>), [spring](<https://devfeed.tech/tags/spring.md>), [svg](<https://devfeed.tech/tags/svg.md>), [xml](<https://devfeed.tech/tags/xml.md>)

### AI overview

A Codename One release follow-up describes a shared build-time code generation pipeline for OpenAPI client generation, a SQLite ORM, JSON and XML mappers, SVG and Lottie transcoders, and a declarative router. The pipeline emits typed Java from annotations or declarative source files without reflection.

### Source excerpt

An OpenAPI client generator, a JPA-shaped SQLite ORM, JAXB-shaped JSON / XML mappers, build-time SVG / Lottie transcoders, and a declarative router with deep links. All on the same build-time codegen pipeline.

## Astro 6.3

DevFeed: [Astro 6.3](<https://devfeed.tech/articles/astro-6-3-3259.md>)

Original publisher: [Read original article](<https://astro.build/blog/astro-630/>)

Author: Matthew Phillips

Published: 2026-05-07T00:00:00Z

Content type: release

Language: en

Sources: [The Astro Blog](<https://devfeed.tech/sources/the-astro-blog.md>)

Topics: [Astro](<https://devfeed.tech/topics/astro.md>), [Routing (disambiguation)](<https://devfeed.tech/topics/routing.md>), [Hono](<https://devfeed.tech/topics/honojs.md>), [Image processing](<https://devfeed.tech/topics/image-processing.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Frameworks](<https://devfeed.tech/topics/frameworks.md>), [Bun](<https://devfeed.tech/topics/bun.md>), [Deno](<https://devfeed.tech/topics/deno.md>), [Workers](<https://devfeed.tech/topics/workers.md>)

Tags: [astro](<https://devfeed.tech/tags/astro.md>), [cli](<https://devfeed.tech/tags/cli.md>), [feature](<https://devfeed.tech/tags/feature.md>), [framework](<https://devfeed.tech/tags/framework.md>), [image-processing](<https://devfeed.tech/tags/image-processing.md>), [images](<https://devfeed.tech/tags/images.md>), [routing](<https://devfeed.tech/tags/routing.md>), [svg](<https://devfeed.tech/tags/svg.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

Astro 6.3 adds experimental advanced routing with composable request handlers and Hono support, plus redirects for external image URLs and SVG image processing disabled by default.

### Source excerpt

Astro 6.3 introduces experimental advanced routing with Hono support, image redirect handling, resilient island hydration, and more.

## You can use newline characters in URLs

DevFeed: [You can use newline characters in URLs](<https://devfeed.tech/articles/you-can-use-newline-characters-in-urls-29393.md>)

Original publisher: [Read original article](<https://lemire.me/blog/2026/02/28/you-can-use-newline-characters-in-urls/>)

Author: Daniel Lemire

Published: 2026-02-28T19:21:39Z

Content type: tutorial

Language: en

Sources: [Daniel Lemire](<https://devfeed.tech/sources/daniel-lemire.md>)

Topics: [Web](<https://devfeed.tech/topics/web.md>), [browsers](<https://devfeed.tech/topics/browsers.md>), [HTML](<https://devfeed.tech/topics/html.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Parsing](<https://devfeed.tech/topics/parsing.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [ascii](<https://devfeed.tech/tags/ascii.md>), [browsers](<https://devfeed.tech/tags/browsers.md>), [code](<https://devfeed.tech/tags/code.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [html](<https://devfeed.tech/tags/html.md>), [parsing](<https://devfeed.tech/tags/parsing.md>), [svg](<https://devfeed.tech/tags/svg.md>), [web](<https://devfeed.tech/tags/web.md>), [xml](<https://devfeed.tech/tags/xml.md>)

### AI overview

This article explains that HTML URLs can contain newline and tab characters in practice because the URL parser reports a validation error but removes those characters and continues. It also describes how ASCII whitespace is handled in data URLs, including base64-encoded PNG and SVG images.

### Source excerpt

We locate web content using special addresses called URLs. We are all familiar with addresses like https://google.com. Sometimes, URLs can get long and they can become difficult to read. Thus, we might be tempted to format them like so in HTML using newline and tab characters, like so: <a href="https://lemire.me/blog/2026/02/21/ how-fast-do-browsers-correct-utf-16-strings/">my blog post</a> It will ... Continue reading You can use newline characters in URLs

## Dynamic Tints with CSS and Kotlin/JS

DevFeed: [Dynamic Tints with CSS and Kotlin/JS](<https://devfeed.tech/articles/dynamic-tints-with-css-and-kotlin-js-32248.md>)

Original publisher: [Read original article](<https://publicobject.com/2026/01/30/css-tints/>)

Author: Jesse Wilson

Published: 2026-01-30T23:12:23Z

Content type: tutorial

Language: en

Sources: [Public Object](<https://devfeed.tech/sources/public-object.md>)

Topics: [CSS](<https://devfeed.tech/topics/css.md>), [ui](<https://devfeed.tech/topics/ui.md>), [color](<https://devfeed.tech/topics/color.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [SVG](<https://devfeed.tech/topics/svg.md>)

Tags: [animate](<https://devfeed.tech/tags/animate.md>), [color](<https://devfeed.tech/tags/color.md>), [css](<https://devfeed.tech/tags/css.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [svg](<https://devfeed.tech/tags/svg.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A developer describes adding dynamic color tints to a game-scoring UI using CSS classes, transitions, and Kotlin/JS. The article also explains recoloring single-color SVG icons with CSS masks and dynamically inserted stylesheet rules.

### Source excerpt

I've been trying to build a remarkable UI for Rounds.app. One feature that turned out quite well is tinting the game name & menu bar icons when the winner changes. In this recording you can see colors change when I toggle the win condition: The title color changes

## How to Create a Water Ripple Text Effect with SVG Filters

DevFeed: [How to Create a Water Ripple Text Effect with SVG Filters](<https://devfeed.tech/articles/svg-filters-are-just-amazing-20475.md>)

Original publisher: [Read original article](<https://www.amitmerchant.com/svg-filters-are-just-amazing/>)

Author: Amit Merchant

Published: 2026-01-12T00:00:00Z

Content type: tutorial

Language: en

Sources: [Amit Merchant](<https://devfeed.tech/sources/amit-merchant.md>)

Topics: [SVG](<https://devfeed.tech/topics/svg.md>), [SVG animations in CSS](<https://devfeed.tech/topics/svg-animations-in-css.md>), [CSS](<https://devfeed.tech/topics/css.md>), [HTML](<https://devfeed.tech/topics/html.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [css](<https://devfeed.tech/tags/css.md>), [effect](<https://devfeed.tech/tags/effect.md>), [filter](<https://devfeed.tech/tags/filter.md>), [guide](<https://devfeed.tech/tags/guide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [html](<https://devfeed.tech/tags/html.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

This tutorial explains how to create a water ripple effect on text using SVG filters and CSS. It covers defining the target element, configuring filter primitives for noise and turbulence, adjusting their parameters, and applying the filter in CSS.

### Source excerpt

So, lately, I have been exploring Haley Park's website and it's pretty cute and well designed. What caught my attention, though, was this water ripple effect on one of the text snippets.

## November in Servo: monthly releases, context menus, parallel CSS parsing, and more!

DevFeed: [November in Servo: monthly releases, context menus, parallel CSS parsing, and more!](<https://devfeed.tech/articles/november-in-servo-monthly-releases-context-menus-parallel-css-parsing-and-more-3538.md>)

Original publisher: [Read original article](<https://servo.org/blog/2025/12/15/november-in-servo/>)

Author: The Servo Project Developers

Published: 2025-12-15T00:00:00Z

Content type: release

Language: en

Sources: [Servo Blog](<https://devfeed.tech/sources/servo-blog.md>)

Topics: [servo](<https://devfeed.tech/topics/servo.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Web platform](<https://devfeed.tech/topics/web-platform.md>), [CSS](<https://devfeed.tech/topics/css.md>), [Android](<https://devfeed.tech/topics/android.md>), [API](<https://devfeed.tech/topics/api.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [WebView](<https://devfeed.tech/topics/webview.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [api](<https://devfeed.tech/tags/api.md>), [css](<https://devfeed.tech/tags/css.md>), [releases](<https://devfeed.tech/tags/releases.md>), [rust](<https://devfeed.tech/tags/rust.md>), [servo](<https://devfeed.tech/tags/servo.md>), [servo-engine](<https://devfeed.tech/tags/servo-engine.md>), [servo-rendering-engine](<https://devfeed.tech/tags/servo-rendering-engine.md>), [svg](<https://devfeed.tech/tags/svg.md>), [web](<https://devfeed.tech/tags/web.md>), [web-browser](<https://devfeed.tech/tags/web-browser.md>), [web-browser-engine](<https://devfeed.tech/tags/web-browser-engine.md>), [web-engine](<https://devfeed.tech/tags/web-engine.md>), [web-platform](<https://devfeed.tech/tags/web-platform.md>), [web-rendering-engine](<https://devfeed.tech/tags/web-rendering-engine.md>)

### AI overview

This November Servo release update covers Servo 0.0.3 and nightly builds. It reports context menus, Android vsync, new-tab light mode, expanded web platform and CSS support, enabled ResizeObserver, font variation improvements, SubtleCrypto algorithms, multiple rendering contexts for webviews, improved context-menu APIs, navigation methods, a simplified Servo API, and a fallback clipboard. A correction notes that ChaCha20-Poly1305 initially had only partial operation support.

### Source excerpt

Correction (2026-01-19) An earlier version of this post said that Servo now has full support for ChaCha20-Poly1305, but this was incorrect. We had only landed the 'importKey' and 'exportKey' operations. The 'encrypt', 'decrypt', and 'generateKey' options landed in the following month. Landing in Servo 0.0.3 and our November nightly builds, we now have context menus for links, images, and other web content (@atbrakhi, @mrobinson, #40434, #40501), vsync on Android (@mrobinson, #40306), light mode for the new tab page (@arihant2math, #40272), plus several web platform features: <video controls> (@rayguo17, #40578) <use> in SVG (@WaterWhisperer, #40684) ☢ 'font-optical-sizing' (@simonwuelker, #40829, #40861, #40884) 'brotli' in CompressionStream and DecompressionStream (@Taym95, #40842) 'display-p3-linear' in CSS color() and color-mix() (@Loirooriol, #40525) calc() now works in grid layout (@nicoburns, #34846) ResizeObserver is now enabled by default (@jdm, #40378) Font variations are now applied in 'font-weight' and 'font-stretch' (@simonwuelker, #40867), fixing a rendering issue in the Web Engines Hackfest website. @kkoyung has landed some huge improvements in the SubtleCrypto API, including some of the more modern algorithms in this WICG draft, and a fix for constant-time base64 (@kkoyung, #40334). We now have full support for SHA3-256, SHA3-384, SHA3-512 (@kkoyung, #40765), cSHAKE128, cSHAKE256 (@kkoyung, #40832), Argon2d, Argon2i, Argon2id, ChaCha20-Poly1305, ECDH, ECDSA, and X25519: Algorithm deriveBits exportKey generateKey importKey sign verify Argon2d #40936 n/a n/a #40932 n/a n/a Argon2i #40936 n/a n/a #40932 n/a n/a Argon2id #40936 n/a n/a #40932 n/a n/a ChaCha20-Poly1305 n/a #40948 n/a #40948 n/a n/a ECDH #40333 #40298 #40305 #40253 n/a n/a ECDSA n/a #40536 #40553 #40523 #40591 #40557 X25519 #40497 #40421 #40480 #40398 n/a n/a <details> now fires 'toggle' events (@lukewarlow, #40271), and <details name> is now exclusive, like radio buttons (@simonwuelker, #

## Astro 5.16

DevFeed: [Astro 5.16](<https://devfeed.tech/articles/astro-5-16-3233.md>)

Original publisher: [Read original article](<https://astro.build/blog/astro-5160/>)

Author: Matthew Phillips

Published: 2025-11-20T00:00:00Z

Content type: release

Language: en

Sources: [The Astro Blog](<https://devfeed.tech/sources/the-astro-blog.md>)

Topics: [Astro](<https://devfeed.tech/topics/astro.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Developer experience](<https://devfeed.tech/topics/developer-experience.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [ai-agents](<https://devfeed.tech/tags/ai-agents.md>), [astro](<https://devfeed.tech/tags/astro.md>), [cli](<https://devfeed.tech/tags/cli.md>), [copilot](<https://devfeed.tech/tags/copilot.md>), [cursor](<https://devfeed.tech/tags/cursor.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [experience](<https://devfeed.tech/tags/experience.md>), [optimization](<https://devfeed.tech/tags/optimization.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

Astro 5.16 introduces experimental SVG optimization through SVGO, interactive shortcuts for the preview server, and developer-experience improvements. It also improves automation by helping AI-assisted development tools bypass interactive prompts when configuring Astro integrations.

### Source excerpt

Astro 5.16 brings experimental SVG optimization with SVGO, interactive CLI shortcuts, and improved developer experience across the board.

## netlab 25.11: SRv6 on IOS/XE, Streamlined Graphs and Reports

DevFeed: [netlab 25.11: SRv6 on IOS/XE, Streamlined Graphs and Reports](<https://devfeed.tech/articles/netlab-25-11-srv6-on-ios-xe-streamlined-graphs-and-reports-11282.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/11/netlab-25-11/>)

Published: 2025-11-13T09:02:00Z

Content type: release

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [SRv6](<https://devfeed.tech/topics/srv6.md>), [releases](<https://devfeed.tech/topics/releases.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Graphs](<https://devfeed.tech/topics/graphs.md>), [Release notes](<https://devfeed.tech/topics/release-notes.md>), [SVG](<https://devfeed.tech/topics/svg.md>)

Tags: [bugs](<https://devfeed.tech/tags/bugs.md>), [graph](<https://devfeed.tech/tags/graph.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [ios](<https://devfeed.tech/tags/ios.md>), [jpeg](<https://devfeed.tech/tags/jpeg.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [pdf](<https://devfeed.tech/tags/pdf.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [reports](<https://devfeed.tech/tags/reports.md>), [srv6](<https://devfeed.tech/tags/srv6.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

The netlab 25.11 release adds SRv6 support on IOS/XE for selected Catalyst 8000v and IOL images, RIPv2/RIPng on OpenBSD, streamlined report and graph creation, and direct SVG, PNG, JPEG, or PDF graph output when D2 or Graphviz is installed. It also includes potentially breaking changes, bug fixes, and other improvements.

### Source excerpt

I managed to push out netlab release 25.11 yesterday. Here are the highlights: SRv6 on IOS/XE. It works with Catalyst 8000v, IOL, and IOL layer-2 image, and can be used to build L3VPNs (the IOS/XE image I have supports no other service on top of SRv6) RIPv2/RIPng on OpenBSD A more streamlined way to create reports and graphs The netlab graph command creates the SVG/PNG/JPEG/PDF graph instead of a graph description file if you've installed D2/Graphviz on your system. We also had to make a few potentially-breaking changes, fixed a bunch of bugs, and added over a dozen small improvements. You'll find all the details in the release notes. Read more ...

## Changing Colors and Line Styles in netlab Graphs

DevFeed: [Changing Colors and Line Styles in netlab Graphs](<https://devfeed.tech/articles/changing-colors-and-line-styles-in-netlab-graphs-11246.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/09/netlab-graphs-colors-lines/>)

Published: 2025-09-22T05:38:00Z

Content type: tutorial

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Graphs](<https://devfeed.tech/topics/graphs.md>), [Network design](<https://devfeed.tech/topics/network-design.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [github](<https://devfeed.tech/tags/github.md>), [graph](<https://devfeed.tech/tags/graph.md>), [graphs](<https://devfeed.tech/tags/graphs.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [network](<https://devfeed.tech/tags/network.md>), [svg](<https://devfeed.tech/tags/svg.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

A tutorial on styling network topology graphs generated from netlab lab topologies. It shows how to use graph attributes and groups to change node colors and link widths across GraphViz and D2 outputs, and how to map a custom text-color attribute to GraphViz.

### Source excerpt

Last week, I explained how to generate network topology graphs (using GraphViz or D2 graphing engines) from a netlab lab topology. Let's see how we can make them look nicer (or at least more informative). We'll work with a simple leaf-and-spine topology with four nodes1: Baseline leaf-and-spine topology defaults.device: frr provider: clab nodes: [ s1, s2, l1, l2 ] links: [ s1-l1, s1-l2, s2-l1, s2-l2 ] This is the graph generated by netlab create followed by dot graph.dot -T png -o graph.png: Read more ...

## A New Resource and Blogroll Page for Performance-Oriented Web Development

DevFeed: [A New Resource and Blogroll Page for Performance-Oriented Web Development](<https://devfeed.tech/articles/links-links-26552.md>)

Original publisher: [Read original article](<https://infrequently.org/2025/07/links/>)

Author: Alex Russell

Published: 2025-07-16T00:00:00Z

Content type: opinion

Language: en

Sources: [Alex Russell](<https://devfeed.tech/sources/alex-russell.md>)

Topics: [Web Development](<https://devfeed.tech/topics/web-development.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [CSS](<https://devfeed.tech/topics/css.md>), [HTML](<https://devfeed.tech/topics/html.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Astro](<https://devfeed.tech/topics/astro.md>), [RSS](<https://devfeed.tech/topics/rss.md>)

Tags: [astro](<https://devfeed.tech/tags/astro.md>), [css](<https://devfeed.tech/tags/css.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [html](<https://devfeed.tech/tags/html.md>), [links](<https://devfeed.tech/tags/links.md>), [performance](<https://devfeed.tech/tags/performance.md>), [resources](<https://devfeed.tech/tags/resources.md>), [rss](<https://devfeed.tech/tags/rss.md>), [svg](<https://devfeed.tech/tags/svg.md>), [web-development](<https://devfeed.tech/tags/web-development.md>), [webdev](<https://devfeed.tech/tags/webdev.md>)

### AI overview

The author announces a new links and resources page for people interested in performance- and platform-oriented web development. It combines recommended resources, background reading, and a blogroll, with an OPML export and more than 250 pointers. The author also comments on creative CSS, HTML, and SVG work, and on the use of 11ty, Astro, and RSS/Atom styling.

### Source excerpt

Frances has urged me for years to collect resources for folks getting into performance and platform-oriented web development. The effort has always seemed daunting, but the lack of such a list came up again at work, prompting me to take on the side-quest amidst a different performance yak-shave. If that sounds like procrastination, well, you might very well think that. I couldn't possibly comment. The result is a new links and resources page page which you can find over in the navigation rail. It's part list-of-things-I-keep-sending-people, part background reading, and part blogroll. The blogroll section also prompted me to create an OPML export , which you can download or send directly to your feed reader of choice. The page now contains more than 250 pointers to people and work that I view as important to a culture that is intentional about building a web worth wanting. Hopefully maintenance won't be onerous from here on in. The process of tracking down links to blogs and feeds is a slog, no matter how good the tooling. Very often, this involved heading to people's sites and reading the view-source:// FOMO Having done this dozens of times on the sites of brilliant and talented web developers in a short period of time, a few things stood out. First -- and I cannot emphasise this enough -- holy cow. The things creative folks can do today with CSS, HTML, and SVG in good browsers is astonishing. If you want to be inspired about what's possible without dragging bloated legacy frameworks along, the work of Ana Tudor, Jhey, Julia Miocene, Bramus, Adam, and so many others can't help but raise your spirits. The CodePen community, in particular, is incredible, and I could (and have) spend hours just clicking through and dissecting clever uses of the platform from the site's "best of" links. Second, 11ty and Astro have won the hearts of frontend's best minds. It's not universal, but the overwhelming bulk of personal pages by the most talented frontenders are now built with SS

## Preserving text size when scaling SVGs

DevFeed: [Preserving text size when scaling SVGs](<https://devfeed.tech/articles/preserving-text-size-when-scaling-svgs-37331.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/preserving-text-size-when-scaling-svgs/>)

Author: Stanko

Published: 2025-06-03T00:00:00Z

Content type: tutorial

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [SVG](<https://devfeed.tech/topics/svg.md>), [CSS](<https://devfeed.tech/topics/css.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>)

### AI overview

The article explains how to keep SVG text at a consistent visual size while the SVG is resized. It uses a CSS variable and ResizeObserver-based JavaScript to counteract the SVG's scale factor.

### Source excerpt

SVGs support non-scaling strokes using the vector-effect attribute, which we can even use to draw non-scaling rectangles and circles. For example, in graphs and charts, text can become too small or too large, so it would be really nice to make it non-scaling. But unfortunately, there is no native solution - text will always scale together with the SVG. We can manually define different font sizes on different breakpoints, but text is still going to be scaled within a single breakpoint. If we need truly non-scalable text, we'll have to use JavaScript. Luckily, not a lot of it - ten lines will do. But before we dive into the solution, here is an example for you (try resizing the wrapper): Hello World!I'll stay 16px on all screen sizes How it works # The idea is to use a CSS variable and a resize observer to counteract SVG scaling. The variable stores the information about how much the SVG is scaled compared to its natural size. Then we can set a resize observer on our SVG, and every time it is resized, we update the CSS variable. That will ensure the font size remains consistent. In order for the CSS variable to have an effect, we have to define font size like thisYou can also use rem or other font size units, as well as media or container queries.: text { font-size: calc(16px * var(--text-factor)); } This means that if we want to keep the font size 16px, and the SVG is rendered at twice its natural size, --text-factor has to be set to 2. To achieve this, we need to divide rendered width by natural width. Let's see how we can get these values. The rendered width is directly accessible as svg.clientWidth. Natural width is a bit trickier, but we can use viewBox to get it. In general, I think it is a good practice to define viewBox on SVGs. View box is a string consisting of four numbers. The third number represents the width of the SVG. We need to parse the string to get the widthIf you don't have viewBox defined, you'll have to update this line to fit your needs.: svg.g

## Astro 5.7

DevFeed: [Astro 5.7](<https://devfeed.tech/articles/astro-5-7-3246.md>)

Original publisher: [Read original article](<https://astro.build/blog/astro-570/>)

Author: Matt Kane; Florian Lefebvre; Emanuele Stoppa; Nate Moore

Published: 2025-04-15T00:00:00Z

Content type: release

Language: en

Sources: [The Astro Blog](<https://devfeed.tech/sources/the-astro-blog.md>)

Topics: [Astro](<https://devfeed.tech/topics/astro.md>), [API](<https://devfeed.tech/topics/api.md>), [Font](<https://devfeed.tech/topics/font.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Core Web Vitals](<https://devfeed.tech/topics/core-web-vitals.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [astro](<https://devfeed.tech/tags/astro.md>), [components](<https://devfeed.tech/tags/components.md>), [core-web-vitals](<https://devfeed.tech/tags/core-web-vitals.md>), [experimental](<https://devfeed.tech/tags/experimental.md>), [fonts](<https://devfeed.tech/tags/fonts.md>), [google](<https://devfeed.tech/tags/google.md>), [performance](<https://devfeed.tech/tags/performance.md>), [shopping](<https://devfeed.tech/tags/shopping.md>), [state](<https://devfeed.tech/tags/state.md>), [svg](<https://devfeed.tech/tags/svg.md>), [web-apis](<https://devfeed.tech/tags/web-apis.md>)

### AI overview

Astro 5.7 introduces stable Sessions and SVG components, plus an experimental Fonts API. The Fonts API supports local fonts and built-in providers with automatic optimizations, while Sessions securely store server-side user data across Astro features.

### Source excerpt

Astro 5.7 has a basketload of treats, including stable Sessions and SVG components and a new Experimental Fonts API.

## Be Mine and Add Interaction with Compose and Canvas

DevFeed: [Be Mine and Add Interaction with Compose and Canvas](<https://devfeed.tech/articles/be-mine-and-add-interaction-with-compose-and-canvas-38501.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2025-02-13/be-mine-and-add-interaction-with-compose-and-canvas/>)

Author: Eevis Panula

Published: 2025-06-11T04:08:03.778000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [Canvas](<https://devfeed.tech/topics/canvas.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [compose-multiplatform](<https://devfeed.tech/topics/compose-multiplatform.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Figma](<https://devfeed.tech/topics/figma.md>)

Tags: [canvas](<https://devfeed.tech/tags/canvas.md>), [compose](<https://devfeed.tech/tags/compose.md>), [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [figma](<https://devfeed.tech/tags/figma.md>), [interaction](<https://devfeed.tech/tags/interaction.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

This tutorial shows how to use Compose and Canvas to draw interactive heart-shaped candies. It explains detecting pointer input gestures so the candies scale larger when touched, and builds on earlier work using SVG path strings with Compose Multiplatform.

### Source excerpt

Valentine's Day is approaching, and while I prefer the Finnish version ("Friend's Day"), I was inspired to do some creative coding in the holiday theme. The Hollywood-centric film industry (in addition to globalization in general) has carried those heart-shaped candies to the North as well. While browsing some images for inspiration, I decided to use them for the next piece I'm writing. And that's not all! I also wanted to continue my series of Canvas-related blog posts, so this one walks through another concept with Canvas: How to detect pointer input gestures and add some interaction. So, what are we building today? Here's a video showing some heart-shaped candies with messages and how they scale bigger when I'm touching them: Let's get coding! Drawing the Hearts This project builds on my previous blog post, Using SVGs on Canvas with Compose Multiplatform, which explained how to draw from SVG's path strings to Compose Canvas. I prepared an SVG image on Figma and then extracted the path strings to draw the hearts. We will utilize some functions from the previous blog post: Float.scaleToSize and PathNode.scaleTo. I won't explain them in this blog post; just mention them. If you want a refresher on how they work, head to the blog post describing them. Alright, let's start by drawing one heart on Canvas. Drawing One Heart We want to extract the logic for drawing the heart to a function. Let's call it drawCandyHeart, and pass the top-left offset, the size of the heart, and the color we're drawing the heart with to the function: private fun DrawScope.drawCandyHeart( topLeft: Offset, heartSize: Size, color: Color, ) { } I've defined the path strings in a separate list, but I will leave them out from this blog post for brevity. They're included in the final code, which you can find at the end of the blog post. We can get the path strings with a function pathString(color: Color): Pair<String, Color>, which returns the two path strings with the color with different opacity

## Using SVGs on Canvas with Compose Multiplatform

DevFeed: [Using SVGs on Canvas with Compose Multiplatform](<https://devfeed.tech/articles/using-svgs-on-canvas-with-compose-multiplatform-38499.md>)

Original publisher: [Read original article](<https://eevis.codes/blog/2025-01-15/using-svgs-on-canvas-with-compose-multiplatform/>)

Author: Eevis Panula

Published: 2025-06-11T04:09:33.844000Z

Content type: tutorial

Language: en

Sources: [Eevis Blog](<https://devfeed.tech/sources/eevis-blog.md>)

Topics: [compose-multiplatform](<https://devfeed.tech/topics/compose-multiplatform.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [creative technology](<https://devfeed.tech/topics/creative-technology.md>), [Figma](<https://devfeed.tech/topics/figma.md>)

Tags: [canvas](<https://devfeed.tech/tags/canvas.md>), [compose](<https://devfeed.tech/tags/compose.md>), [compose-multiplatform](<https://devfeed.tech/tags/compose-multiplatform.md>), [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [developer-tools](<https://devfeed.tech/tags/developer-tools.md>), [figma](<https://devfeed.tech/tags/figma.md>), [svg](<https://devfeed.tech/tags/svg.md>)

### AI overview

This tutorial explains how to use SVG path data to draw SVG components on Canvas in a Compose Multiplatform application. It covers extracting path data from SVG source, storing paths with color information, and preparing them for rendering on Android and iOS.

### Source excerpt

One thing that has continued to amaze me with building my Compose Multiplatform app is how easily everything has worked with Canvas. When I started building Neule.art, I assumed that Canvas would cause some problems, but it has worked smoothly on both Android and iOS. I've been writing posts about creative coding on Canvas (see, for example, Not a Phase - Text with Compose and Canvas), and also about my First Impressions of Compose Multiplatform, and this post combines elements from both themes. There are different ways to parse an SVG to be used with Compose, and in this blog post, I'm looking into using path data. This approach requires some manual work, but it also allows better flexibility for controlling, e.g., colors of the individual elements within the SVG. What We're Building Even though I'd love to show how I've built the shirt I'm using in Neule.art, simplifying the process into the form of a blog post is too difficult a task. I decided to create a smaller SVG, which we're going to convert into Canvas. It looks like this: The hearts I'm using in the SVG are from Sarah Laroche's Vector Heart Figma resource. And if you've ever seen the colors anywhere, you might recognize them as being from the non-binary flag. Getting the Paths from an SVG We first need something from the original SVG to draw it on Canvas: the paths of individual components within the SVG. In an SVG, the path's d-attribute contains the commands for defining the shape being drawn, and we're using that to parse the SVG to the path on Canvas. If you're unfamiliar with SVGs, I recommend checking MDN's documentation on SVGs, as it contains much in-depth information about SVGs. So, to prepare for drawing paths on Canvas, we'll need an SVG image as code. Then, we need to copy the path's d-attribute's content and finally store them somewhere inside our code. There are several options for opening the SVG's code - for example, open the file in an IDE or inspect it in the browser's developer tools. I

## The Making of a Logo

DevFeed: [The Making of a Logo](<https://devfeed.tech/articles/the-making-of-a-logo-39442.md>)

Original publisher: [Read original article](<https://aerotwist.com/blog/the-making-of-a-logo/>)

Author: Paul Lewis

Published: 2025-01-15T00:00:00Z

Content type: opinion

Language: en

Sources: [Paul Lewis](<https://devfeed.tech/sources/paul-lewis.md>)

Topics: [Website](<https://devfeed.tech/topics/website.md>), [blender](<https://devfeed.tech/topics/blender.md>), [3D](<https://devfeed.tech/topics/3d.md>), [stl](<https://devfeed.tech/topics/stl.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [export](<https://devfeed.tech/topics/export.md>), [render](<https://devfeed.tech/topics/render.md>), [Sketch](<https://devfeed.tech/topics/sketch.md>)

Tags: [3d](<https://devfeed.tech/tags/3d.md>), [3d-printed](<https://devfeed.tech/tags/3d-printed.md>), [blender](<https://devfeed.tech/tags/blender.md>), [cameras](<https://devfeed.tech/tags/cameras.md>), [export](<https://devfeed.tech/tags/export.md>), [file](<https://devfeed.tech/tags/file.md>), [logo](<https://devfeed.tech/tags/logo.md>), [making](<https://devfeed.tech/tags/making.md>), [render](<https://devfeed.tech/tags/render.md>), [stl](<https://devfeed.tech/tags/stl.md>), [svg](<https://devfeed.tech/tags/svg.md>), [update](<https://devfeed.tech/tags/update.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

The author describes creating a new Aerotwist logo, starting with sketches on a reMarkable 2 tablet, refining it as a vector and SVG, and preparing it for 3D printing by exporting an STL from Blender.

### Source excerpt

A new website, and a 3D printed logo!

## Why developers should embrace creative coding again

DevFeed: [Why developers should embrace creative coding again](<https://devfeed.tech/articles/why-developers-should-embrace-creative-coding-again-10247.md>)

Original publisher: [Read original article](<https://www.figma.com/blog/why-developers-should-embrace-creative-coding-again/>)

Author: Jake Albaugh

Published: 2025-01-09T00:00:00Z

Content type: article

Language: en

Sources: [Figma Blog](<https://devfeed.tech/sources/figma-blog.md>)

Topics: [creative coding](<https://devfeed.tech/topics/creative-coding.md>), [creative technology](<https://devfeed.tech/topics/creative-technology.md>), [browsers](<https://devfeed.tech/topics/browsers.md>), [Web](<https://devfeed.tech/topics/web.md>), [CSS](<https://devfeed.tech/topics/css.md>), [HTML5](<https://devfeed.tech/topics/html5.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [GSAP](<https://devfeed.tech/topics/gsap.md>), [modern web development](<https://devfeed.tech/topics/modern-web-development.md>), [WebGL](<https://devfeed.tech/topics/webgl.md>), [Figma plugin](<https://devfeed.tech/topics/figma-plugin.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [browsers](<https://devfeed.tech/tags/browsers.md>), [creative-coding](<https://devfeed.tech/tags/creative-coding.md>), [css](<https://devfeed.tech/tags/css.md>), [design](<https://devfeed.tech/tags/design.md>), [design-tools](<https://devfeed.tech/tags/design-tools.md>), [developers](<https://devfeed.tech/tags/developers.md>), [figma](<https://devfeed.tech/tags/figma.md>), [figma-plugin](<https://devfeed.tech/tags/figma-plugin.md>), [free](<https://devfeed.tech/tags/free.md>), [gsap](<https://devfeed.tech/tags/gsap.md>), [html5](<https://devfeed.tech/tags/html5.md>), [svg](<https://devfeed.tech/tags/svg.md>), [tools](<https://devfeed.tech/tags/tools.md>), [web](<https://devfeed.tech/tags/web.md>), [webgl](<https://devfeed.tech/tags/webgl.md>)

### AI overview

The article argues that developers should revive creative coding by using modern browser capabilities beyond templates and conventional design tools. It highlights HTML5, inline SVG, GSAP animations, WebGL, advanced CSS, responsive features, and newer color spaces such as HSL and OKLCH, along with the CSS color-mix() Figma plugin.

### Source excerpt

Modern browsers have evolved beyond what most design tools can do. It's up to us to break free from templates and tap into the web's true creative potential.

[Next page](<https://devfeed.tech/topics/svg.md?cursor=WyIyMDI1LTAxLTA5VDAwOjAwOjAwKzAwOjAwIiwgImJlOWIzZWFkLTY3ZWQtNGUyMC1hMDRmLWZhNDBhNDkwZDBiNSJd>)