github.com/src-d/enry/v2 (go): Package enry implements multiple strategies for programming language identification.  Identification is made based on file name and file content using a seriece of strategies to narrow down possible option. Each strategy is available as a separate API call, as well as a main enty point  It is a port of the https://github.com/github/linguist from Ruby. Upstream Linguist YAML files are used to generate datastructures for data package.
Keywords: cli|golang|java|language-detection|linguist