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 🙏

© 2024 – Pkg Stats / Ryan Hefner

@wserdtryftvubhijnokmpl/uncors_windows_386

v9.9.9

Published

<!--suppress HtmlDeprecatedAttribute --> <p align="center"> <a href="https://github.com/evg4b/goreleaser-npm-publisher" title="goreleaser-npm-publisher"> <img alt="goreleaser-npm-publisher logo" width="30%" src="https://raw.githubusercontent.com/evg

Downloads

193

Readme

Quick start:

First, create a release of your package using goreleaser.

goreleaser build --clean

Then, run goreleaser-npm-publisher in the same directory. Make sure you're logged into the registry.

npx -y goreleaser-npm-publisher publish --clean

Alternatively, add the --token parameter to use your NPM_AUTH_TOKEN.

npx -y goreleaser-npm-publisher publish --clean --token npm_********

That’s it!

Use as a library

You can use goreleaser-npm-publisher as a standard npm package.

import { publish } from 'goreleaser-npm-publisher';

publish({ token: process.env.NPM_TOKEN })
  .then(console.log)
  .catch(console.error);

Use as a GitHub Action

You can use goreleaser-npm-publisher as a GitHub Action.

- name: Publish to npm
  uses: evg4b/[email protected]
  with:
    prefix: '@evg4b'
    token: ${{ secrets.NPM_AUTH_TOKEN }}

For more details, see the GitHub Action documentation.

CLI commands and options:

goreleaser-npm-publisher provides the following CLI commands:

list

Displays a list of packages that can be built in the current project using the specified options.

Options

| Option | type | Description | |-----------------|---------|------------------------------------------------------------------------------| | project | string | Specifies the path to the root of the Go package. | | builder | string | The name of the builder whose output will be used for building the packages. | | prefix | string | NPM package scope prefix. | | description | string | NPM package description. | | verbose | boolean | Print verbose output. |

build

Builds all packages that can be built in the current project using the specified parameters. The built packages can be found in the dist/npm folder.

| Option | Type | Description | |-----------------|----------|---------------------------------------------------------------------------------------------| | project | string | Specifies the path to the root of the Go package. | | builder | string | The name of the builder whose output will be used for building the packages. | | clear | boolean | Clean the dist/npm folder before the build. | | prefix | string | NPM package scope prefix. | | description | string | NPM package description. | | files | string[] | Files that should be included in the NPM package (e.g., README.md, LICENSE by default). | | verbose | boolean | Print verbose output. |

publish

Builds and publishes to the registry all packages that can be built in the current project using the specified parameters.

| Option | Type | Description | |-----------------|----------|---------------------------------------------------------------------------------------------| | project | string | Specifies the path to the root of the Go package. | | builder | string | The name of the builder whose output will be used for building the packages. | | clear | boolean | Clean the dist/npm folder before the build. | | prefix | string | NPM package scope prefix. | | description | string | NPM package description. | | files | string[] | Files that should be included in the NPM package (e.g., README.md, LICENSE by default). | | token | string | The NPM authentication token. | | verbose | boolean | Print verbose output. |

Structure of npm package:

The output will include a main package and platform packages. The main package will contain the executable script that detects the platform and architecture, running the corresponding platform package. The platform packages will include the Go binary for the specific platform and architecture.

For example, for the package go-package with version 0.0.17, and with Goreleaser building for linux, windows, and darwin along with ia32, x64, and arm64 architectures:

Main package:

[email protected]
  os: linux, win32, darwin
  cpu: ia32, x64, arm64

Platform packages:

[email protected]
  os: linux
  cpu: ia32
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-linux-386-go-package

[email protected]
  os: win32
  cpu: ia32
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-windows-386-go-package-exe

[email protected]
  os: linux
  cpu: x64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-linux-amd-64-v-1-go-package

[email protected]
  os: linux
  cpu: arm64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-linux-arm-64-go-package

[email protected]
  os: win32
  cpu: arm64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-windows-arm-64-go-package-exe

[email protected]
  os: win32
  cpu: x64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-windows-amd-64-v-1-go-package-exe

[email protected]
  os: darwin
  cpu: x64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-darwin-amd-64-v-1-go-package

[email protected]
  os: darwin
  cpu: arm64
  bin: /Users/<user>/go-package/dist/npm/dist-go-package-darwin-arm-64-go-package

Supported platforms and architectures:

Platforms:

| GOOS | Node.js Platform | |---------|------------------| | darwin | darwin | | linux | linux | | windows | win32 | | android | android | | aix | aix | | freebsd | freebsd | | openbsd | openbsd | | solaris | sunos | | netbsd | netbsd |

Architectures:

| GOARCH | Node.js Platform | |---------|------------------| | amd64 | x64 | | 386 | ia32 | | arm | arm | | arm64 | arm64 | | s390x | s390x | | s390 | s390 | | riscv64 | riscv64 | | ppc64 | ppc64 | | ppc | ppc | | mips | mips |