jake-scripts 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 354b490f527b4d8f6ad58786b31f229df2fb103b
4
+ data.tar.gz: 15a67696fdab7490087d9b44238d8d4f8d52cfbe
5
+ SHA512:
6
+ metadata.gz: a843c10b51135ec1c4d77efdbf2d626b71bf966bb4b0c140b9137031827a4c926fe3506efa9b241b4994c39788d88309e3d2001f69d1bac68b849fbc5cf17e76
7
+ data.tar.gz: 545c30fdf476fb71cafe5df749f3a38269c91d13a1e41bcc290d3aa84a5c83a62094e5c2c54cc6fd1412d03bc25d541d545af1266e900d83a33a59e9087c0e5b
data/.gitignore ADDED
@@ -0,0 +1,12 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
10
+
11
+ # rspec failure tracking
12
+ .rspec_status
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ sudo: false
2
+ language: ruby
3
+ rvm:
4
+ - 2.4.0
5
+ before_install: gem install bundler -v 1.15.1
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in jake-scripts.gemspec
4
+ gemspec
data/README.md ADDED
@@ -0,0 +1,35 @@
1
+ # Jake::Scripts
2
+
3
+ Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/jake/scripts`. To experiment with that code, run `bin/console` for an interactive prompt.
4
+
5
+ TODO: Delete this and the text above, and describe your gem
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'jake-scripts'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install jake-scripts
22
+
23
+ ## Usage
24
+
25
+ TODO: Write usage instructions here
26
+
27
+ ## Development
28
+
29
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
+
31
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
+
33
+ ## Contributing
34
+
35
+ Bug reports and pull requests are welcome on GitHub at https://github.com/jakewmeyer/jake-scripts.
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "jake/scripts"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start(__FILE__)
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
data/exe/currency ADDED
@@ -0,0 +1,55 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # CLI app for currency conversion
4
+ # Uses Ruby Money for accuracy
5
+ # Uses Fixer.io for exchange data
6
+
7
+ require 'rest-client'
8
+ require 'json'
9
+ require 'money'
10
+ require 'monetize'
11
+
12
+
13
+ def conversion
14
+ # User input
15
+ puts
16
+ print "Base => "
17
+ base_currency = gets.chomp.upcase
18
+ print "Amount => "
19
+ initial_amount = gets.chomp
20
+ print "Convert to => "
21
+ convert_to = gets.chomp.upcase
22
+
23
+ # Fetches API info
24
+ begin
25
+ url = "http://api.fixer.io/latest?base=#{base_currency}&symbols=#{convert_to}"
26
+ response = RestClient.get(url)
27
+ parsed = JSON.parse(response)
28
+ convert_factor = (parsed['rates'][convert_to])
29
+ rescue
30
+ puts
31
+ puts 'No exchange rate found'
32
+ puts
33
+ exit(1)
34
+ end
35
+
36
+ # Fixes locale exception bug
37
+ I18n.enforce_available_locales = false
38
+
39
+ # Creates money exchange rate and new money object
40
+ Money.add_rate(base_currency, convert_to, convert_factor)
41
+ initial = Monetize.parse("#{base_currency} #{initial_amount}")
42
+ final_convert = initial.exchange_to(convert_to)
43
+
44
+ # Output formatting
45
+ puts
46
+ puts '================'
47
+ puts "| #{base_currency} to #{convert_to}"
48
+ puts "| RATE: #{convert_factor}"
49
+ puts "| #{base_currency}: #{initial.format}"
50
+ puts "| #{convert_to}: #{final_convert.format}"
51
+ puts '================'
52
+ puts
53
+ end
54
+
55
+ conversion
data/exe/decrypt ADDED
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # Decrypts files easily using
4
+ # openssl commands. Essentially
5
+ # an easy wrapper for openssl
6
+
7
+ # Ex. $ decrypt encrypted.txt names.txt
8
+
9
+ def decrypt
10
+ input_file = ARGV[0]
11
+ output_file = ARGV[1]
12
+ unless system("openssl enc -aes-256-cbc -d -a -in #{input_file} -out #{output_file}")
13
+ puts "Files not found!"
14
+ end
15
+ puts 'Sucessfully decrypted'
16
+ end
17
+
18
+ decrypt
data/exe/encrypt ADDED
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # Encrypts files easily using
4
+ # openssl commands. Essentially
5
+ # an easy wrapper for openssl
6
+
7
+ # Ex. $ encrypt names.txt encrypted.txt
8
+
9
+ def encrypt
10
+ input_file = ARGV[0]
11
+ output_file = ARGV[1]
12
+ unless system("openssl enc -aes-256-cbc -salt -a -in #{input_file} -out #{output_file}")
13
+ puts "Files not found!"
14
+ end
15
+ puts "Sucessfully encrypted"
16
+ end
17
+
18
+ encrypt
data/exe/ip ADDED
@@ -0,0 +1,53 @@
1
+ #!/usr/bin/env ruby
2
+ # Gets WAN IP, Lan IP, Router IP, and DNS Server.
3
+ # Compiles to a nice list.
4
+
5
+ require 'rest-client'
6
+ require 'socket'
7
+
8
+ def network_info
9
+ # Grabs public WAN address.
10
+ begin
11
+ url = "https://api.ipify.org"
12
+ response = RestClient.get(url)
13
+ rescue
14
+ puts "Can't find WAN"
15
+ exit(1)
16
+ end
17
+
18
+ # Grabs assigned IP and formats it.
19
+ begin
20
+ ip = Socket.ip_address_list.detect{|intf| intf.ipv4_private?}
21
+ lan = ip.ip_address
22
+ rescue
23
+ puts "Cant find LAN"
24
+ exit(1)
25
+ end
26
+
27
+ # Greps scutil for DNS server.
28
+ begin
29
+ dns = %x[scutil --dns | grep nameserver | head -1 | awk '{print$3}']
30
+ rescue
31
+ puts "Can't find DNS"
32
+ exit(1)
33
+ end
34
+
35
+ # Greps netstat for router address.
36
+ begin
37
+ router = %x[netstat -rn | grep default | head -1 | awk '{print$2}']
38
+ rescue
39
+ puts "Can't find Router"
40
+ exit(1)
41
+ end
42
+
43
+ puts
44
+ puts "======================"
45
+ puts "| WAN: #{response}"
46
+ puts "| LAN: #{lan}"
47
+ puts "| ROUTER: #{router}"
48
+ puts "| DNS: #{dns}"
49
+ puts "======================"
50
+ puts
51
+ end
52
+
53
+ network_info
data/exe/ip_geo ADDED
@@ -0,0 +1,55 @@
1
+ #!/usr/bin/env ruby
2
+ #CLI program to find IP geolocation
3
+
4
+ require 'rest-client'
5
+ require 'json'
6
+
7
+ def ip_location
8
+ puts
9
+ print 'IP => '
10
+ ip = gets.chomp
11
+
12
+ if ip == 'quit' || ip == 'exit'
13
+ puts
14
+ exit(1)
15
+ else
16
+
17
+ begin
18
+ url = "http://ip-api.com/json/#{ip}"
19
+ response = RestClient.get(url)
20
+ info = JSON.parse(response)
21
+ rescue
22
+ puts
23
+ puts 'IP not found.'
24
+ puts
25
+ exit(1)
26
+ end
27
+
28
+ ip = info['query']
29
+ city = info['city']
30
+ region = info['region']
31
+ country = info['country']
32
+ isp = info['isp']
33
+ zip = info['zip']
34
+
35
+ if city.nil?
36
+ puts
37
+ puts 'IP not found.'
38
+ puts
39
+ exit(1)
40
+ else
41
+ puts
42
+ puts '============================='
43
+ puts "| IP: #{ip}"
44
+ puts "| City: #{city}"
45
+ puts "| Region: #{region}"
46
+ puts "| Country: #{country}"
47
+ puts "| ZIP: #{zip}"
48
+ puts "| ISP: #{isp}"
49
+ puts '============================='
50
+ puts
51
+ end
52
+ end
53
+ end
54
+
55
+ ip_location
data/exe/ip_location ADDED
@@ -0,0 +1,45 @@
1
+ #!/usr/bin/env ruby
2
+ # Returns geolocation data for current IP
3
+
4
+ require 'rest-client'
5
+ require 'json'
6
+
7
+ def ip_current_geo
8
+ begin
9
+ url = "http://ip-api.com/json"
10
+ response = RestClient.get(url)
11
+ info = JSON.parse(response)
12
+ rescue
13
+ puts
14
+ puts 'No IP found.'
15
+ puts
16
+ exit(1)
17
+ end
18
+
19
+ ip = info["query"]
20
+ city = info["city"]
21
+ region = info["region"]
22
+ country = info["country"]
23
+ isp = info["isp"]
24
+ zip = info['zip']
25
+
26
+ if city.nil?
27
+ puts
28
+ puts 'No IP found.'
29
+ puts
30
+ exit(1)
31
+ else
32
+ puts
33
+ puts '============================='
34
+ puts "| IP: #{ip}"
35
+ puts "| City: #{city}"
36
+ puts "| Region: #{region}"
37
+ puts "| Country: #{country}"
38
+ puts "| ZIP: #{zip}"
39
+ puts "| ISP: #{isp}"
40
+ puts '============================='
41
+ puts
42
+ end
43
+ end
44
+
45
+ ip_current_geo
data/exe/movie ADDED
@@ -0,0 +1,69 @@
1
+ #!/usr/bin/env ruby
2
+ # CLI app that searched movies and returns info
3
+
4
+ require 'rest-client'
5
+ require 'json'
6
+
7
+ # Word wrapping method
8
+ def wrap(s, width = 78)
9
+ s.gsub(/(.{1,#{width}})(\s+|\Z)/, "\\1\n| ")
10
+ end
11
+
12
+ def movie
13
+ # This is a live API key, don't absue it
14
+ api_key = '946f500a'
15
+
16
+ puts
17
+ print 'Movie => '
18
+ movie_name = gets.chomp
19
+
20
+ # Program escape statements
21
+ if movie_name == 'quit' || movie_name == 'exit'
22
+ puts
23
+ exit(1)
24
+ else
25
+ url = "http://www.omdbapi.com/?t=#{movie_name}&apikey=#{api_key}"
26
+ response = RestClient.get(url)
27
+ info = JSON.parse(response)
28
+ end
29
+
30
+ # Exception for invalid response
31
+ if info['Response'] == 'False'
32
+ puts
33
+ puts 'No Movie Found'
34
+ puts
35
+ exit(1)
36
+ else
37
+ # Rescue if no tomato score
38
+ # Word wrap added to plot and actors
39
+ begin
40
+ title = info['Title']
41
+ year = info['Year']
42
+ score = info['Ratings'][1]['Value']
43
+ rescue
44
+ score = 'No Score Found'
45
+ end
46
+
47
+ rated = info['Rated']
48
+ genre = info['Genre']
49
+ director = info['Director']
50
+ actors = wrap(info['Actors'], 48)
51
+ plot_unformatted = info['Plot']
52
+ plot = wrap(plot_unformatted, 48)
53
+
54
+ puts
55
+ puts '=================================================='
56
+ puts "| Title: #{title}"
57
+ puts "| Year: #{year}"
58
+ puts "| Tomato: #{score}"
59
+ puts "| Rated: #{rated}"
60
+ puts "| Genre: #{genre}"
61
+ puts "| Director: #{director}"
62
+ puts "| Actors: #{actors}"
63
+ puts "| Plot: #{plot}"
64
+ puts '=================================================='
65
+ puts
66
+ end
67
+ end
68
+
69
+ movie
data/exe/stock ADDED
@@ -0,0 +1,67 @@
1
+ #!/usr/bin/env ruby
2
+ # CLI app that searches stock info by symbol.
3
+
4
+ require 'rest-client'
5
+ require 'json'
6
+
7
+ def stock_search
8
+ puts
9
+ print 'Stock => '
10
+ symbol = gets.chomp
11
+
12
+ if symbol == 'quit' || symbol == 'exit'
13
+ exit(1)
14
+ else
15
+ begin
16
+ # Takes user input and generates ticker symbol.
17
+ url = "http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=#{symbol}&region=1&lang=en%22"
18
+ response = RestClient.get(url)
19
+ parsed = JSON.parse(response)
20
+ parsed_symbol = parsed['ResultSet']['Result'][0]['symbol']
21
+ rescue
22
+ puts
23
+ puts 'Invalid Search'
24
+ puts
25
+ exit(1)
26
+ end
27
+
28
+ # Rest API to fetch current JSON data.
29
+ url = "http://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=#{parsed_symbol}&apikey=946DU3BV54DQIGIK"
30
+ response = RestClient.get(url)
31
+ parsed = JSON.parse(response)
32
+
33
+ # Check API response validity.
34
+ if parsed['Realtime Global Securities Quote'].empty?
35
+ puts
36
+ puts 'No Stock Found'
37
+ puts
38
+ exit(1)
39
+ else
40
+ # Assign variables to hash key values.
41
+ parsed_symbol = parsed['Realtime Global Securities Quote']['01. Symbol']
42
+ parsed_price = parsed['Realtime Global Securities Quote']['03. Latest Price']
43
+ parsed_open = parsed['Realtime Global Securities Quote']['04. Open (Current Trading Day)']
44
+ parsed_high = parsed['Realtime Global Securities Quote']['05. High (Current Trading Day)']
45
+ parsed_price_chg = parsed['Realtime Global Securities Quote']['08. Price Change']
46
+ parsed_price_pct = parsed['Realtime Global Securities Quote']['09. Price Change Percentage']
47
+ parsed_volume = parsed['Realtime Global Securities Quote']['10. Volume (Current Trading Day)']
48
+ parsed_exchange = parsed['Realtime Global Securities Quote']['02. Exchange Name']
49
+
50
+ # Output of parsed hash.
51
+ puts
52
+ puts '======================'
53
+ puts "| Symbol: #{parsed_symbol}"
54
+ puts "| Price: $#{parsed_price}"
55
+ puts "| Open: $#{parsed_open}"
56
+ puts "| High: $#{parsed_high}"
57
+ puts "| Price Chg: $#{parsed_price_chg}"
58
+ puts "| Price Chg % : #{parsed_price_pct}"
59
+ puts "| Volume: #{parsed_volume}"
60
+ puts "| Echange: #{parsed_exchange}"
61
+ puts '======================'
62
+ puts
63
+ end
64
+ end
65
+ end
66
+
67
+ stock_search
data/exe/weather ADDED
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/env ruby
2
+ # CLI app that brings in current location weather.
3
+
4
+ require 'rest-client'
5
+ require 'json'
6
+
7
+ def weather_search
8
+ # This key is functional, please don't abuse it
9
+ api_key = "6510b92495fd472ca30155709172803&q"
10
+
11
+ # Uses IP to get current city
12
+ begin
13
+ url = "http://ip-api.com/json"
14
+ response = RestClient.get(url)
15
+ parsed = JSON.parse(response)
16
+ location = parsed["city"]
17
+ rescue
18
+ puts "No IP Response"
19
+ exit(1)
20
+ end
21
+
22
+ # Uses city to fetch weather
23
+ begin
24
+ url = "https://api.apixu.com/v1/current.json?key=#{api_key}=#{location}"
25
+ response = RestClient.get(url)
26
+ parsed = JSON.parse(response)
27
+
28
+ # Assigning values to variables
29
+ location_name = parsed["location"]["name"]
30
+ temp = parsed["current"]["temp_f"]
31
+ wind_speed = parsed["current"]["wind_mph"]
32
+ humidity = parsed["current"]["humidity"]
33
+ feels_like = parsed["current"]["feelslike_f"]
34
+ visability = parsed["current"]["vis_miles"]
35
+ rescue
36
+ puts "No Weather API Response"
37
+ exit(1)
38
+ end
39
+
40
+ puts
41
+ puts "======================"
42
+ puts "| City: #{location_name}"
43
+ puts "| Temp: #{temp}°"
44
+ puts "| Feels Like: #{feels_like}°"
45
+ puts "| Humidity: #{humidity}%"
46
+ puts "| Wind Speed: #{wind_speed} mph"
47
+ puts "| Visability: #{visability} mi"
48
+ puts "======================"
49
+ puts
50
+ end
51
+
52
+ weather_search
@@ -0,0 +1,28 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "jake/scripts/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "jake-scripts"
8
+ spec.version = Jake::Scripts::VERSION
9
+ spec.authors = ["Jake Meyer"]
10
+ spec.email = ["jakewmeyer@gmail.com"]
11
+
12
+ spec.summary = %q{Gem containing my scripts, tools, and utilities}
13
+ spec.homepage = "https://github.com/jakewmeyer/Ruby-Scripts"
14
+
15
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
16
+ f.match(%r{^(test|spec|features)/})
17
+ end
18
+ spec.bindir = "exe"
19
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
+ spec.require_paths = ["lib"]
21
+
22
+ spec.add_development_dependency "bundler", "~> 1.15"
23
+ spec.add_development_dependency "rake", "~> 10.0"
24
+ spec.add_development_dependency "rspec", "~> 3.0"
25
+ spec.add_development_dependency "rest-client", "~> 2.0.2"
26
+ spec.add_development_dependency "money", "~> 6.9.0"
27
+ spec.add_development_dependency "monetize", "~> 1.7.0"
28
+ end
@@ -0,0 +1,5 @@
1
+ module Jake
2
+ module Scripts
3
+ VERSION = "0.1.0"
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ require "jake/scripts/version"
2
+
3
+ module Jake
4
+ module Scripts
5
+ # Your code goes here...
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,156 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jake-scripts
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Jake Meyer
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2017-06-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.15'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.15'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rest-client
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 2.0.2
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 2.0.2
69
+ - !ruby/object:Gem::Dependency
70
+ name: money
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 6.9.0
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 6.9.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: monetize
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 1.7.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 1.7.0
97
+ description:
98
+ email:
99
+ - jakewmeyer@gmail.com
100
+ executables:
101
+ - currency
102
+ - decrypt
103
+ - encrypt
104
+ - ip
105
+ - ip_geo
106
+ - ip_location
107
+ - movie
108
+ - stock
109
+ - weather
110
+ extensions: []
111
+ extra_rdoc_files: []
112
+ files:
113
+ - ".gitignore"
114
+ - ".rspec"
115
+ - ".travis.yml"
116
+ - Gemfile
117
+ - README.md
118
+ - Rakefile
119
+ - bin/console
120
+ - bin/setup
121
+ - exe/currency
122
+ - exe/decrypt
123
+ - exe/encrypt
124
+ - exe/ip
125
+ - exe/ip_geo
126
+ - exe/ip_location
127
+ - exe/movie
128
+ - exe/stock
129
+ - exe/weather
130
+ - jake-scripts.gemspec
131
+ - lib/jake/scripts.rb
132
+ - lib/jake/scripts/version.rb
133
+ homepage: https://github.com/jakewmeyer/Ruby-Scripts
134
+ licenses: []
135
+ metadata: {}
136
+ post_install_message:
137
+ rdoc_options: []
138
+ require_paths:
139
+ - lib
140
+ required_ruby_version: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - ">="
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ required_rubygems_version: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ requirements: []
151
+ rubyforge_project:
152
+ rubygems_version: 2.6.12
153
+ signing_key:
154
+ specification_version: 4
155
+ summary: Gem containing my scripts, tools, and utilities
156
+ test_files: []