mathfuse: TypeScript 수학 유틸리티 (통계, 벡터, 행렬) Zero Dependencies

발행: (2026년 4월 4일 오전 01:41 GMT+9)
2 분 소요
원문: Dev.to

Source: Dev.to

개요

평균이나 내적을 계산하기 위해 거대한 수학 라이브러리를 끌어오는 것이 지겹나요? mathfuse는 의존성이 전혀 없는 가볍고 트리‑쉐이킹 가능한 TypeScript 수학 툴킷을 제공합니다. 통계, 벡터, 행렬 등 다양한 타입드 유틸리티를 포함하고 있습니다.

설치

npm install mathfuse
# or
bun add mathfuse

통계

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

벡터

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]

행렬

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

주요 특징

  • 의존성 없음
  • 완전한 TypeScript 제네릭
  • 트리‑쉐이킹 가능한 ESM/CJS 빌드
  • 모든 환경에서 동작 (Node.js, Bun, Deno, 브라우저)

저장소

GitHub – mathfuse

0 조회
Back to Blog

관련 글

더 보기 »

TypeScript 타입 가드

결제 시스템을 구축할 때, “대충 맞다”는 충분하지 않습니다. 하나의 undefined 값이나 일치하지 않는 object property가 차이를 만들 수 있습니다…

Python에서 행렬

행렬 정의 python matrix = 1, 2, 3, 4, 5, 6, 7, 8, 9 3x3 행렬 만들기 python matrix_3x3 = 0 3 for in range3 일반적인 행렬 문제 행렬 전치…

아무도 추천하지 않은 Stack

백엔드: FastAPI 저는 JavaScript와 TypeScript를 사용해 온 개발자로, 프론트엔드에서는 수년간 React를, 백엔드에서는 Express와 Fastify를 사용했습니다. 이 프로젝트를…