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

replapi-types

v0.1.0

Published

Generated TypeScript protobuf bindings for go-go-goja replapi protobuf JSON payloads.

Downloads

33

Readme

go-go-goja replapi types

This package contains generated TypeScript protobuf bindings for the goja.replapi.v1 HTTP payloads.

The generated files are produced by Buf from proto/goja/replapi/v1/replapi.proto and live under src/generated/. Hand-written code in this package is limited to an index barrel and decode smoke tests.

Usage

import { fromJson } from "@bufbuild/protobuf";
import { EvaluateResponseSchema } from "replapi-types";

const body = await fetch(`/api/v1/sessions/${sessionId}/evaluate`, {
	method: "POST",
	headers: { "Content-Type": "application/json" },
	body: JSON.stringify({ schemaVersion: 1, source: "1 + 2" }),
}).then((response) => response.json());

const decoded = fromJson(EvaluateResponseSchema, body);
console.log(decoded.cell?.execution?.status);

Validation and publishing

pnpm replapi-types:typecheck
pnpm replapi-types:test
pnpm replapi-types:build
pnpm replapi-types:pack-smoke
pnpm replapi-types:consumer-smoke

The package is published from dist/, not from the source package root. The GitHub Actions workflow .github/workflows/publish-npm.yml is designed for npm Trusted Publishing: it requests id-token: write, uses the npm-production environment, does not pass an npm token, and publishes with provenance on real publishes.

For the first publication of a new npm package, create the package once manually or through an authorized bootstrap path, then configure trusted publishing:

npx -y npm@latest trust github replapi-types \
  --repo go-go-golems/go-go-goja \
  --file publish-npm.yml \
  --env npm-production \
  --allow-publish

After a tokenless GitHub Actions publish has been verified under next, package settings can be hardened to require 2FA and disallow token publishing.

int64 and JSON values

int64 protobuf fields decode as JavaScript bigint values with @bufbuild/protobuf v2. Do not pass decoded messages with bigint fields directly to JSON.stringify; use protobuf JSON helpers such as toJson() when serializing wire payloads again.

Fields modeled as google.protobuf.Value decode to protobuf wrapper messages, but toJson() projects them back to ordinary JSON objects, arrays, strings, numbers, booleans, or null.