go library to find all modules / languages / build-systems / specifications in a project
Installation
go get -u github.com/cidverse/repoanalyzer
Example
result := analyzer.ScanDirectory("/my-project")
for k, v := range result {
fmt.Printf("MODULE %d: %+v\n", k, v)
}
Custom Example
You can add your own scanners and enable result caching.
myAnalyzer := analyzer.NewAnalyzer()
myAnalyzer.EnableCache(true)
// myAnalyzer.Add(yourCustomScanner)
result := myAnalyzer.Scan("/my-project")
for k, v := range result {
fmt.Printf("MODULE %d: %+v\n", k, v)
}
...
Released under the MIT License.