Skip to content

guseggert/pkggodev-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a CLI and Go client for the valuable data at pkg.go.dev, allowing you to programmatically find e.g. what code depends on your code, license information, etc. Since pkg.go.dev has no API, this scrapes the website to extract the data.

View package metadata:

$ go build ./cmd/pkggodev

$ ./pkggodev package-info github.com/ipfs/go-ipfs
Package:                        github.com/ipfs/go-ipfs
IsModule:                       true
IsPackage:                      true
Version:                        v0.10.0
Published:                      2021-09-30
License:                        Apache-2.0, MIT, Apache-2.0, MIT
HasValidGoModFile:              true
HasRedistributableLicense:      true
HasTaggedVersion:               true
HasStableVersion:               false
Repository:                     github.com/ipfs/go-ipfs

Every command supports json output:

$ ./pkggodev package-info github.com/ipfs/go-ipfs --format json | jq
{
  "Package": "github.com/ipfs/go-ipfs",
  "IsModule": true,
  "IsPackage": true,
  "Version": "v0.10.0",
  "Published": "2021-09-30",
  "License": "Apache-2.0, MIT, Apache-2.0, MIT",
  "HasValidGoModFile": true,
  "HasRedistributableLicense": true,
  "HasTaggedVersion": true,
  "HasStableVersion": false,
  "Repository": "github.com/ipfs/go-ipfs"
}

Find packages that import a package:

$ ./pkggodev imported-by github.com/ipfs/go-ipfs | head
gitee.com/Crazyrw/go-ipfs/cmd/ipfs
gitee.com/Crazyrw/go-ipfs/core
gitee.com/Crazyrw/go-ipfs/core/commands
gitee.com/Crazyrw/go-ipfs/core/corehttp
github.com/Angie3120/go-ipfs/cmd/ipfs
github.com/Angie3120/go-ipfs/core
github.com/Angie3120/go-ipfs/core/commands
github.com/Angie3120/go-ipfs/core/corehttp
github.com/BDWare/go-ipfs/cmd/ipfs
github.com/BDWare/go-ipfs/core

Search for packages:

$ ./pkggodev search yaml --limit 2
Package:        gopkg.in/yaml.v2
Version:        v2.4.0
Published:      2020-11-17
ImportedBy:     25575
License:        Apache-2.0
Synopsis:       Package yaml implements YAML support for the Go language.

Package:        gopkg.in/yaml.v3
Version:        v3.0.0-...-496545a
Published:      2021-01-07
ImportedBy:     2634
License:        Apache-2.0, MIT
Synopsis:       Package yaml implements YAML support for the Go language.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages