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

rensa-name-resolver

v0.1.0

Published

Resolve .rns names in MetaMask on Robinhood Chain Mainnet using Rensa's read-only API

Readme

Rensa Name Resolver

Rensa Name Resolver lets .rns names resolve directly in MetaMask recipient fields on Robinhood Chain Mainnet. For example, rensa.rns currently resolves to 0x2Fe9d43Bd6d78fF6799b53E6Df358E98e048c490 through Rensa's live resolver; the address is not hardcoded in the Snap.

This package is not yet published or allowlisted. A user-reported manual test installed the local Snap in MetaMask Flask and confirmed that typing rensa.rns in Send displayed the expected address and Rensa attribution on chain 4663. No transfer was sent. Other recipient-field cases still need recorded review evidence.

Source: project-rensa/rensa-name-resolver. The source repository includes an MIT license. For issues, use the repository issue tracker; do not post private keys or sensitive wallet details.

Scope

  • Network: Robinhood Chain Mainnet, chain ID 4663, CAIP-2 eip155:4663.
  • Namespace: one lowercase ASCII label followed by .rns; labels follow the registry's 3–255 character rules.
  • Canonical registry: 0x08ed77b2ec313c7ad5ce23747b07d483071485f9.
  • Official site: rensalabs.xyz.
  • Forward lookups: GET https://rensalabs.xyz/api/resolve/{name}.
  • Reverse lookups: GET https://rensalabs.xyz/api/reverse/{address}. A reverse result exists only if the API reports a valid primary name.

The Snap returns no result for another chain, another TLD, malformed or uppercase names, subdomains, invalid addresses, non-success API responses, invalid JSON, or a timed-out request. It asks only for chain-scoped name lookup and network access. It does not access private keys or recovery phrases, manage accounts, request account permission, sign, or submit transactions. It stores no wallet data. The Rensa API is a trusted external resolution source; users should still check the resolved recipient address before sending assets.

Privacy

A forward lookup sends the requested .rns name to Rensa's API. A reverse lookup sends the public address being checked. The API operator and network infrastructure can observe those requests; this project does not claim that they are anonymous or that the API keeps no logs. See PRIVACY.md and SECURITY.md.

Development and checks

Use Node.js 22.13 or later. From this directory:

npm ci
npm run typecheck
npm run lint
npm test
npm run build
npm run manifest:validate
npm run eval

For a local test in a separate MetaMask Flask browser profile, start these in two terminals:

npm run serve:snap
npm run serve:install

Open http://localhost:8000 in that Flask profile, install local:http://localhost:8080, select Robinhood Chain Mainnet, and enter rensa.rns in MetaMask Send. Check the displayed address and close Send without submitting. The local install page is development tooling; it is not part of the npm package or the production website.

Release gates

The intended npm identifier is rensa-name-resolver, subject to a final availability and ownership check. Before npm publication, confirm package-name control and approved-mark distribution rights, rerun the checks and Snapper, and inspect npm pack --dry-run. Remove private: true only with explicit publication authorization. MetaMask allowlisting of the requested protected permissions is a separate step after npm publication. Neither step has been authorized here.