--- /dev/null
+.TH "NPM\-SEARCH" "3" "October 2016" "" ""
+.SH "NAME"
+\fBnpm-search\fR \- Search for packages
+.SH SYNOPSIS
+.P
+.RS 2
+.nf
+npm\.commands\.search(searchTerms, [silent,] [staleness,] callback)
+.fi
+.RE
+.SH DESCRIPTION
+.P
+Search the registry for packages matching the search terms\. The available parameters are:
+.RS 0
+.IP \(bu 2
+searchTerms:
+Array of search terms\. These terms are case\-insensitive\.
+.IP \(bu 2
+silent:
+If true, npm will not log anything to the console\.
+.IP \(bu 2
+staleness:
+This is the threshold for stale packages\. "Fresh" packages are not refreshed
+from the registry\. This value is measured in seconds\.
+.IP \(bu 2
+callback:
+Returns an object where each key is the name of a package, and the value
+is information about that package along with a 'words' property, which is
+a space\-delimited string of all of the interesting words in that package\.
+The only properties included are those that are searched, which generally include:
+.RS 0
+.IP \(bu 2
+name
+.IP \(bu 2
+description
+.IP \(bu 2
+maintainers
+.IP \(bu 2
+url
+.IP \(bu 2
+keywords
+
+.RE
+
+.RE
+.P
+A search on the registry excludes any result that does not match all of the
+search terms\. It also removes any items from the results that contain an
+excluded term (the "searchexclude" config)\. The search is case insensitive
+and doesn't try to read your mind (it doesn't do any verb tense matching or the
+like)\.
+