mathfuse: TypeScript-Math-Utility zero deps

TypeScript-Devs kennen das: aufgepumpte Math-Bibs, die Bundles für simple Stats unnötig aufblasen. Mathfuse dreht den Spieß um: schlank, typisiert, zero deps – endlich.

Mathfuse: Die TypeScript-Math-Bib ohne Abhängigkeiten, die Devs wirklich brauchen — theAIcatchup

Key Takeaways

  • Zero deps, tree-shakebar – perfekt für schlanke Bundles in TS-Projekten.
  • Stats, Vektoren, Matrizen mit vollen Generics und präzisen Ops.
  • Cross-runtime-Stark: Node, Bun, Deno, Browser – ohne Kompromisse.

Jeder hielt TypeScript-Math-Tools für 500-KB-Monster wie math.js oder numeric.js, oder? So Bibs, die alles versprechen, aber dein Frontend keuchen lassen. Dann kommt mathfuse – ein Toolkit ohne Firlefanz: zero deps, voll typisiert, tree-shakebar. Das revolutioniert Zahlenspiele für Devs ohne Ballast.

Ich stecke seit IE6-Zeiten in JS-Math-Bibs fest – damals baute man Vektor-Dots selbst, weil nichts da war. Mathfuse bringt diese Einfachheit zurück, aufgebohrt mit Generics.

Warum TypeScript-Devs fette Math-Bibs hassen

Müde, riesige Math-Bibs für Mittelwert oder Dot-Produkt zu laden? Direkt aus dem GitHub-Readme – trifft ins Mark, oder?

Müde, riesige Math-Bibs für Mittelwert oder Dot-Produkt zu laden? mathfuse gibt dir eine schlanke, tree-shakebare TypeScript-Math-Bib ohne Abhängigkeiten.

Und das ist kein Geschwätz. Mittelwert, Median, Stddev, Perzentil? Array rein, Zahlen raus. Keine Import-Hölle.

So sieht’s aus:

import { mean, median, stddev, percentile } from 'mathfuse';
const data = [2, 4, 4, 4, 5, 5, 7, 9];
console.log(mean(data)); // 5
console.log(median(data)); // 4.5
console.log(stddev(data)); // 2
console.log(percentile(data, 75)); // 6

Fünf Zeilen. Läuft in Bun, Deno, Node, Browser. Keine Polyfills nötig.

Aber Vektoren. Verdammt, Vektoren in JS waren immer ein Witz – bis jetzt.

Meistert mathfuse Vektoren ohne Ballast?

import { dot, magnitude, normalize } from 'mathfuse';
const v1 = [1, 2, 3];
const v2 = [4, 5, 6];
console.log(dot(v1, v2)); // 32
console.log(magnitude(v1)); // 3.74
console.log(normalize(v1)); // [0.27, 0.53, 0.80]

Präzise. Typisiert. Und Matrizen? Matmul, Transpose, Determinante – Kram, der früher PhD-Geduld für untypisierte Hacks brauchte.

import { matmul, transpose, determinant } from 'mathfuse';
const A = [[1, 2], [3, 4]];
console.log(matmul(A, [[5,6],[7,8]])); // [[19,22],[43,50]]
console.log(determinant(A)); // -2

Zero deps halten dein Bundle schlank. Tree-shakebare ESM/CJS? Check. Volle Generics? Klar, IntelliSense lässt dich nicht im Stich.

Dutzende ‘leichte’ Math-Bibs sind gefloppt – numeric.js? Super auf Papier, Bundle-Hölle in der Praxis. Mathfuse fühlt sich anders an. Mein Tipp: Wird Standard für Three.js-Helfer oder Data-Viz-Dashboards. Einziger Twist: Spiritueller Nachfolger von gl-matrix, aber typisiert für TS-Zeit, ohne WebGL-Kram. Wer verdient? Maintainer kriegt Stars, vielleicht GitHub-Sponsors-Kohle. Reines Open Source, keine VC-Geier.

Der Skeptiker in mir fragt: Kampftested? Repo ist frisch – https://github.com/Avinashvelu03/mathfuse – aber erste Benchmarks brüllen Effizienz. Kein lodash-Äquivalent-Mist; pure Math.

Matrizen gehen tiefer. Inverse? Kommt wohl. Aktuell: volle Stats-Suite, Vektor-Ops ohne Ende, Matrix-Basics festgenagelt. Readme-Wunsch: “Welche Math-Funktionen sollen in TypeScript einfacher sein?” Fair – Community treibt’s besser als Lone-Wolf-Helden.

Ist mathfuse produktionsreif?

Kurz: Ja, wenn’s zu deinen Needs passt. Production heißt zero deps, cross-runtime. Node? Läuft. Bun? Fliegt. Deno? Clean Imports. Browser? ESM-Zauber – kein Bundler-Zoff.

Zynischer Seitenhieb: Silicon Valley hyped jetzt ‘AI-Math’, aber das ist alte Schule Numerical-Crunching. Keine Tensoren (noch), also weg damit, wenn du PyTorch träumst. Für 90 Prozent Devs mit Charts oder Game-Vektoren? Gold wert.

Stell dir dein React-Dashboard vor: mean, percentile importieren – zack, Analytics ohne 2-MB-Parcel-Kotz. Oder Svelte-Game: Vektoren normalisieren, kein Webpack-Gequatsche.

Historischer Vergleich: JS 2010 sehnte sich nach leichter Util-Bib. Underscore füllte’s, mutierte zu lodash-Bloat. Mathfuse stoppt das im Keim – bleibt schlank oder stirbt.

PR-Geschwafel? Fehlanzeige. Solo-Dev, kein Newsletter-Bumm. Erfrischend. Aber Achtung: Bei 10k Stars kommt der ‘enterprise’-Fork mit Deps.

npm install mathfuse. Oder bun add. Zwei Sekunden, du rechnest.

Tiefer in stddev: Population oder Sample? Docs klären (Sample default, clever). Perzentil? R

James Kowalski
Written by

Investigative tech reporter focused on AI ethics, regulation, and societal impact.

Worth sharing?

Get the best AI stories of the week in your inbox — no noise, no spam.

Originally reported by dev.to