#!/usr/bin/env ruby require "technologist" require "slop" def framework_report(title, frameworks) return if frameworks.empty? puts title frameworks.each do |framework| puts "* #{framework}" end end def main(path) result = Technologist::Repository.new(path) if result.primary_frameworks.empty? && result.secondary_frameworks.empty? puts "No known frameworks could be detected." puts <<-END.gsub(/^ {4}/, '') If you think that a framework should be detected for this repository you could add a new rule by creating a pull request on Github (see https://github.com/koffeinfrei/technologist#contributing) or report an issue https://github.com/koffeinfrei/technologist/issues/new. Thanks! END else framework_report('Primary Frameworks', result.primary_frameworks) framework_report('Secondary Frameworks', result.secondary_frameworks) end end Slop.parse do banner "Usage: #{File.basename($0)} [options] [repository_path]" run do |opts, args| if args.empty? args << Dir.pwd end main(args.join(' ')) end on '-v', '--version', 'print the version' do puts Technologist::VERSION exit end on '-h', '--help' do puts help exit end end