npm-view(1) npm-view(1)
NAME
npm-view - View registry info
Synopsis
npm view [<package-spec>] [<field>[.subfield]...]
aliases: info, show, v
Description
This command shows data about a package and prints it to stdout.
As an example, to view information about the connect package from the
registry, you would run:
npm view connect
The default version is "latest" if unspecified.
Field names can be specified after the package descriptor. For example,
to show the dependencies of the ronn package at version 0.3.5, you
could do the following:
npm view ronn@0.3.5 dependencies
By default, npm view shows data about the current project context (by
looking for a package.json). To show field data for the current project
use a file path (i.e. .):
npm view . dependencies
You can view child fields by separating them with a period. To view the
git repository URL for the latest version of npm, you would run the
following command:
npm view npm repository.url
This makes it easy to view information about a dependency with a bit of
shell scripting. For example, to view all the data about the version of
opts that ronn depends on, you could write the following:
npm view opts@$(npm view ronn dependencies.opts)
For fields that are arrays, requesting a non-numeric field will return
all of the values from the objects in the list. For example, to get all
the contributor email addresses for the express package, you would run:
npm view express contributors.email
You may also use numeric indices in square braces to specifically
select an item in an array field. To just get the email address of the
first contributor in the list, you can run:
npm view express contributors[0].email
If the field value you are querying for is a property of an object, you
should run:
npm view express time'[4.8.0]'
Note: When accessing object properties that contain special characters
or numeric keys, you need to use quotes around the key name. For
example, to get the publish time of a specific version:
npm view express "time[4.17.1]"
Without quotes, the shell may interpret the square brackets as glob
patterns, causing the command to fail. You can also access the time
field for a specific version by specifying the version in the package
descriptor:
npm view express@4.17.1 time
This will return all version-time pairs, but the context will be for
that specific version.
Multiple fields may be specified, and will be printed one after
another. For example, to get all the contributor names and email
addresses, you can do this:
npm view express contributors.name contributors.email
"Person" fields are shown as a string if they would be shown as an
object. So, for example, this will show the list of npm contributors in
the shortened string format. (See package.json </configuring-
npm/package-json> for more on this.)
npm view npm contributors
If a version range is provided, then data will be printed for every
matching version of the package. This will show which version of jsdom
was required by each matching version of yui3:
npm view yui3@'>0.5.4' dependencies.jsdom
To show the connect package version history, you can do this:
npm view connect versions
Field Access Patterns
The npm view command supports different ways to access nested fields
and array elements in package metadata. Understanding these patterns
makes it easier to extract specific information.
Nested Object Fields
Use dot notation to access nested object fields:
# Access nested properties
npm view npm repository.url
npm view express bugs.url
Array Element Access
For arrays, use numeric indices in square brackets to access specific
elements:
# Get the first contributor's email
npm view express contributors[0].email
# Get the second maintainer's name
npm view express maintainers[1].name
Object Property Access
For object properties (like accessing specific versions in the time
field), use bracket notation with the property name in quotes:
# Get publish time for a specific version
npm view express "time[4.17.1]"
# Get dist-tags
npm view express "dist-tags.latest"
Extracting Fields from Arrays
Request a non-numeric field on an array to get all values from objects
in the list:
# Get all contributor emails
npm view express contributors.email
# Get all contributor names
npm view express contributors.name
Configuration
json
o Default: false
o Type: Boolean
Whether or not to output JSON data, rather than the normal output.
o In npm pkg set it enables parsing set values with JSON.parse()
before saving them to your package.json.
Not supported by all npm commands.
workspace
o Default:
o Type: String (can be set multiple times)
Enable running a command in the context of the configured workspaces of
the current project while filtering by running only the workspaces
defined by this configuration option.
Valid values for the workspace config are either:
o Workspace names
o Path to a workspace directory
o Path to a parent workspace directory (will result in selecting all
workspaces within that folder)
When set for the npm init command, this may be set to the folder of a
workspace which does not yet exist, to create the folder and set it up
as a brand new workspace within the project.
This value is not exported to the environment for child processes.
workspaces
o Default: null
o Type: null or Boolean
Set to true to run the command in the context of all configured
workspaces.
Explicitly setting this to false will cause commands like install to
ignore workspaces altogether. When not set explicitly:
o Commands that operate on the node_modules tree (install, update,
etc.) will link workspaces into the node_modules folder. - Commands
that do other things (test, exec, publish, etc.) will operate on
the root project, unless one or more workspaces are specified in
the workspace config.
This value is not exported to the environment for child processes.
include-workspace-root
o Default: false
o Type: Boolean
Include the workspace root when workspaces are enabled for a command.
When false, specifying individual workspaces via the workspace config,
or all workspaces via the workspaces flag, will cause npm to operate
only on the specified workspaces, and not on the root project.
This value is not exported to the environment for child processes.
Output
If only a single string field for a single version is output, then it
will not be colorized or quoted, to enable piping the output to another
command. If the field is an object, it will be output as a JavaScript
object literal.
If the --json flag is given, the outputted fields will be JSON.
If the version range matches multiple versions then each printed value
will be prefixed with the version it applies to.
If multiple fields are requested, then each of them is prefixed with
the field name.
See Also
o npm help "package spec"
o npm help search
o npm help registry
o npm help config
o npm help npmrc
o npm help docs
NPM@11.7.0 December 2025 npm-view(1)
npm 11.7.0 - Generated Tue Jan 6 18:31:46 CST 2026
