npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

romdev-spimdisasm

v0.1.0

Published

spimdisasm (MIPS disassembler used by splat) ported to plain JavaScript ESM, for romdev. Reproduces spimdisasm 1.42.4, 1.39.3 and 1.35.0 output byte for byte, selectable at runtime.

Readme

romdev-spimdisasm

A plain JavaScript (ESM) port of spimdisasm, the MIPS disassembler splat uses to turn N64 and PS1 binaries into assembly and data files. It reproduces the output of three spimdisasm releases byte for byte, selected at run time. No Python is needed.

It is part of romdev.

Upstream and license

  • Upstream: spimdisasm (Decompollaborate), https://github.com/Decompollaborate/spimdisasm

  • Reproduced releases:

    | spimdisasm | commit | rabbitizer used | |---|---|---| | 1.42.4 (base) | 4b5d4c68eeb9f9eae14b3bb713971433ae2c3c43 | 1.16.2 | | 1.39.3 | c4737d9266fe626c130823b3c21c60f1209f39fa | 1.14.3 | | 1.35.0 | cc2104b561c6b4468441862de7dec7140fad052f | 1.13.0 |

  • License: MIT (spimdisasm and the port). The Japanese codec tables, float formatting and set iteration order follow CPython (PSF-2.0, Copyright (c) 2001 Python Software Foundation). See LICENSE and NOTICE.

  • src/common/, src/mips/ and src/elf32/ translate the Python package module by module. The command-line frontends (disasmdis, rspDisasm, elfObjDisasm, singleFileDisasm) are not ported.

How romdev uses it

romdev-splat loads it as its disassembler backend. romdevtools' decomp tool runs splat when it sets up or imports an N64 or PS1 decomp project (decomp({op:'setup'}), decomp({op:'import'})), with the spimdisasm version the project pins.

API

import * as spimdisasm from "romdev-spimdisasm";

spimdisasm.configureVersion("1.39.3"); // before building any Context or section
const { common, mips, elf32 } = spimdisasm;

The module mirrors the Python package layout: the common, mips and elf32 namespaces keep upstream's class, function and attribute names. configureVersion(v) (alias setVersion) selects the release to reproduce and activates the paired rabbitizer; getVersion(), __version__, SUPPORTED_VERSIONS, DEFAULT_VERSION and RABBITIZER_VERSION_FOR describe the selection. setRabbitizer lets a caller supply its own rabbitizer namespace. Exports: . only.

Requirements

Node >= 24, ESM only. Depends on romdev-rabbitizer. No Python, no native code.

Versions

romdev-spimdisasm 0.1.0 reproduces spimdisasm 1.42.4, 1.39.3 and 1.35.0.