JSPM

starlight-numera

1.0.0
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 9
    • Score
      100M100P100Q29932F
    • License MIT

    A performance-focused numerical computing library for JavaScript inspired by NumPy

    Package Exports

    • starlight-numera

    Readme

    starlight-numera

    A fast, lightweight numerical computing library for JavaScript inspired by NumPy.

    Built for performance using TypedArrays and optimized loops.


    Features

    • Fast ndarray implementation (TypedArray-based)
    • Vectorized operations (add, sub, mul, div)
    • Matrix operations (matmul, transpose, dot)
    • Broadcasting (NumPy-style)
    • Math functions (sqrt, exp, log, trig)
    • Modular and tree-shakeable

    Installation

    npm install starlight-numera

    Quick Start

    import { array, add, matmul, sqrt } from 'starlight-numera';
    
    // Create arrays
    const a = array([[1, 2], [3, 4]]);
    const b = array([[5, 6], [7, 8]]);
    
    // Element-wise operations
    const c = add(a, b);
    
    // Matrix multiplication
    const d = matmul(a, b);
    
    // Math functions
    const e = sqrt(a);
    
    console.log(c);
    console.log(d);
    console.log(e);

    ndarray Structure

    Each array is stored as:

    {
      data: Float32Array,
      shape: number[],
      stride: number[],
      size: number
    }

    Operations

    Element-wise

    add(a, b)
    sub(a, b)
    mul(a, b)
    div(a, b)

    Broadcasting

    const a = array([[1, 2, 3]]);
    const b = array([[10], [20]]);
    
    add(a, b);
    // [
    //  [11,12,13],
    //  [21,22,23]
    // ]

    Linear Algebra

    transpose(a)
    dot(a, b)
    matmul(a, b)

    Math Functions

    sqrt(a)
    exp(a)
    log(a)
    
    sin(a)
    cos(a)
    tan(a)

    Performance

    • Uses Float32Array for fast memory access
    • Avoids unnecessary allocations
    • Optimized loops for numerical operations

    Roadmap

    • Advanced broadcasting optimizations
    • Slicing and indexing
    • GPU acceleration (WebGL / WebGPU)
    • SIMD optimizations
    • Higher-dimensional tensors

    Contributing

    Contributions are welcome.

    1. Fork the repository
    2. Create a feature branch
    3. Submit a pull request

    License

    MIT License