1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
---
section: cli-commands
title: npm-search
description: Search for packages
---
# npm-search(1)
## Search for packages
### Synopsis
```bash
npm search [-l|--long] [--json] [--parseable] [--no-description] [search terms ...]
aliases: s, se, find
```
### Description
Search the registry for packages matching the search terms. `npm search`
performs a linear, incremental, lexically-ordered search through package
metadata for all files in the registry. If color is enabled, it will further
highlight the matches in the results.
Additionally, using the `--searchopts` and `--searchexclude` options paired with
more search terms will respectively include and exclude further patterns. The
main difference between `--searchopts` and the standard search terms is that the
former does not highlight results in the output and can be used for more
fine-grained filtering. Additionally, both of these can be added to `.npmrc` for
default search filtering behavior.
Search also allows targeting of maintainers in search results, by prefixing
their npm username with `=`.
If a term starts with `/`, then it's interpreted as a regular expression and
supports standard JavaScript RegExp syntax. A trailing `/` will be ignored in
this case. (Note that many regular expression characters must be escaped or
quoted in most shells.)
### A Note on caching
### Configuration
#### description
* Default: true
* Type: Boolean
Used as `--no-description`, disables search matching in package descriptions and
suppresses display of that field in results.
#### json
* Default: false
* Type: Boolean
Output search results as a JSON array.
#### parseable
* Default: false
* Type: Boolean
Output search results as lines with tab-separated columns.
#### long
* Default: false
* Type: Boolean
Display full package descriptions and other long text across multiple
lines. When disabled (default) search results are truncated to fit
neatly on a single line. Modules with extremely long names will
fall on multiple lines.
#### searchopts
* Default: ""
* Type: String
Space-separated options that are always passed to search.
#### searchexclude
* Default: ""
* Type: String
Space-separated options that limit the results from search.
#### searchstaleness
* Default: 900 (15 minutes)
* Type: Number
The age of the cache, in seconds, before another registry request is made.
#### registry
* Default: https://registry.npmjs.org/
* Type: url
Search the specified registry for modules. If you have configured npm to point
to a different default registry, such as your internal private module
repository, `npm search` will default to that registry when searching. Pass a
different registry url such as the default above in order to override this
setting.
### See Also
* [npm registry](/using-npm/registry)
* [npm config](/cli-commands/config)
* [npmrc](/configuring-npm/npmrc)
* [npm view](/cli-commands/view)
|