Alternatives
Products that do what Minimalist library to generate SVG views of scientific data does
Just wanted to share with HN a simple/minimal open source Python library that generates SVG files visualizing two dimensional data and distributions, in case others find it useful or interesting. I wrote it as a fun project, mostly because I found that the standard libraries in Python generated unnecessarily large SVG files. One nice property is that I can configure the visuals through CSS, which allows me to support dark/light mode browser settings. The graphs are specified as JSON files (the repository includes a few examples). It supports scatterplots, line plots, histograms,…
- 1

- 2IM
2025 · seve.blog
- 3AJ
Here's a project I've been working on for a little while now. Ripl is a JS library that provides a unified API for rendering shapes on both canvas and SVG interchangeably. Over the years I've used D3 extensively to create data visualisations so I figured I'd have a go at making my own version with a slightly more modern API and stricter TypeScript support. I am aware there are already libraries that can draw to multiple contexts interchangeably, but I've added a few little niceties to Ripl that (as far as I know) some other libraries don't have such as CSS-like query selectors, DOM-like…
2024 · github.com
- 4VO
Hello HN. I've always found writing data visualisation scripts boring and repetitive in data science workflows earlier in my career, so I built this tool to automate it. The available methods are based on my experience in econometrics where histograms and scatterplots were the starting points to check data distributions. The link is to the documentation and the app is freely available at https://visprex.com, and if you're curious about the implementation it's open source at https://github.com/visprex/visprex. I'd appreciate any comments and feedback!
2024 · docs.visprex.com
- 5EV
2023 · github.com
- 6AT
2021 · svija.love
- 7

- 8SA
2022 · svelvet.io
- 9GS
2017 · github.com
- 10AG
2023 · vectorart.ai
- 11

- 12

- 13

- 14RF
2020 · pixeltrue.com
- 15ES
2014 · chartspree.com
- 16SC
Svader is a library for rendering 2D shaders on Svelte websites, using either WebGL or WebGPU. It's streamlined for the specific use case of rendering 2D graphics using fragment shaders as an alternative to SVG or the JS canvas API, so it's not meant for doing 3D objects like three.js, for example. This started as something I needed for my own project, but I eventually decided to split it into a separate library. I've since found that this use case fits really well into the Svelte compiler-based approach and its fine-grained reactivity system. In general, I think using shaders like these has…
2024 · github.com
- 17

- 18IC
2024 · github.com
- 19

- 20

- 21PL
2022 · github.com
- 22RW
Hi HN, I'm Holger, a developer who worked in the lighting industry. I built this to scratch my own itch and put it on crates.io and PyPI where nothing like it existed. The old file formats (EULUMDAT from 1990, IES from 1991) still work fine for basic photometry. But the industry is moving toward spectral data – full wavelength distributions instead of just lumen values. The new standards (TM-33, ATLA-S001) are barely supported by existing tools. So this handles both: legacy formats for compatibility, spectral data for anyone who wants to work with the new standards. Stack: Rust core, then…
Dec 2025 · eulumdat.icu
- 23IB
This has been an experiment to see if I could create everything using scripts and AI. If AI couldn't do it I'd get it to create the code such as API calls and so on. This websvg.com site was completely created using these AI tools. Including the DNS being applied, the Cloudflare Pages were automatically set up and the the web site was a Svelte 5 application generated by v0.dev and Cursor. Every image was generated in Midjourney and converted to SVG. I have now taken all of these scripts and can create a similar landing or directory site in less than a minute, provided I have the data. Anyway…
2025 · websvg.com
- 24

Ranked by how close each launch is in meaning, then by votes. Refine with a description →