对沙发和redis没有任何经验,这在这一点上变得比我能处理的更多。
npm网站允许您按关键字搜索包 - https://npmjs.org/browse/keyword/awesome
但是,它没有提供以json格式获取此信息的任何方式 - 理想情况下,我们可以https://npmjs.org/browse/keyword/awesome.json但事实并非如此:(
我知道npm网站是由couchdb和本地redis实例提供支持的。远程couchdb安装为http://registry.npmjs.org/,由https://github.com/isaacs/npmjs.org
提供支持然而,花一天时间研究这个,我只是想不通如何获得特定关键字的所有包。有谁知道怎么样?如果你还解释了你去了解如何做到这一过程的过程,那么下次我知道:)
答案 0 :(得分:22)
很棒的问题!
这将为您提供有关特定模块的信息:
npm view request
要获得您想要的所有模块,您可以点击URL: https://registry.npmjs.org/-/all/
在倾注了这两个文件之后:
我得出以下结论:
试试这个:
https://registry.npmjs.org/-/_view/byKeyword?startkey=["keyword"]&endkey=["keyword",{}]&group_level=3
另外,快速说明一下,这是一个可能在大约4秒内在node.js聊天室或邮件列表中得到解答的问题:)
希望有所帮助。
答案 1 :(得分:2)
基于这个答案,我为节点https://github.com/wires/npm-keywordsearch写了一个小的lib。
npm install npm-keywordsearch
然后
var search = require('npm-keywordsearch')
search('my-plugin', function (error, packages) {
packages.forEach(function (pkg) {
console.log(pkg.name + ': ' + pkg.description)
})
})
对你有用
答案 2 :(得分:0)
2018年的某个时间,npm retired /-/_view/byKeyword
API:
新API现在是:/-/v1/search
:
https://registry.npmjs.org/-/v1/search?text=keywords:docpad-plugin&size=250
它的文档在这里:
https://github.com/npm/registry/blob/master/docs/REGISTRY-API.md#get-v1search
我已相应更新pluginclerk包。它是一个节点包,它提供了一个API来命中该调用,同时提供缓存以及依赖性兼容性解析。