openstates 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 54bc4b599a448cce3390ad41081fa947d9fc1ea7
4
+ data.tar.gz: 2abd48ee2bd954dc8de98abebe8f1bcfd08ae680
5
+ SHA512:
6
+ metadata.gz: e8589886070d20f45029466d77e45de96b09a3020a2aa6d27e16be36ea17d102aaa0ad5987b5fd52106853cc36be155775f6fcbfb9a0bf35511a8dad4fcd38f5
7
+ data.tar.gz: 419adea1911286dc3fc60a1d171eafd0380eeba57f55f9b15061696f1317c174776208f0e4a3f084440ade7bdef16a8dff6aa0e72468a7358e305aaee192f6b8
@@ -0,0 +1 @@
1
+ 2.3.1
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # Ruby::Openstates
1
+ # Openstates
2
2
 
3
- Ruby gem to interact with the OpenStates API.
3
+ Ruby gem to interact with the Sunlight Labs OpenStates API.
4
4
 
5
5
  ## Installation
6
6
 
@@ -16,8 +16,136 @@ Or install it yourself as:
16
16
 
17
17
  $ gem install openstates
18
18
 
19
+ ## Configuration
20
+
21
+ You will need to register for an API key with [Sunlight
22
+ Labs](http://services.sunlightlabs.com/api/register/).
23
+
24
+ If you intend to use this gem in a rails project, you should add the
25
+ following in `config/initializers/openstates.rb`
26
+
27
+ ```rb
28
+ OpenStates.configure do |config|
29
+ config.api_key ='yourkeyhere'
30
+ config.logger = Rails.logger
31
+ end
32
+ ```
33
+
34
+ If your project is not rails based, you just need to include the above
35
+ configuration somewhere in your ruby environment with single change.
36
+
37
+ ```rb
38
+ OpenStates.configure do |config|
39
+ config.api_key ='yourkeyhere'
40
+ config.logger = ::Logger.new(STDOUT)
41
+ config.logger.level = ::Logger::DEBUG
42
+ end
43
+ ```
44
+
19
45
  ## Usage
20
46
 
47
+ ### OpenStates::Bill
48
+
49
+ You can search for bills using the `where` class method on
50
+ OpenStates::Bill.
51
+
52
+ ```rb
53
+ bills = OpenStates::Bill.where(state: 'tx', q: 'taxi')
54
+ ```
55
+
56
+ You can also search for a specific bill by it's bill_id.
57
+
58
+ ```rb
59
+ bill = OpenStates::Bill.find("12345")
60
+ ```
61
+
62
+ And lastly, you can get bill details by using the `bill_details` class
63
+ method on OpenStates::Bill.
64
+
65
+ ```rb
66
+ bill = OpenStates::Bill.bill_details('fl', '2013', '12345')
67
+ ```
68
+
69
+ You can find a list of all query parameters for Bills
70
+ [here](http://sunlightlabs.github.io/openstates-api/bills.html).
71
+
72
+ ### OpenStates::Committee
73
+
74
+ You can search for committees using the `where` class method on
75
+ OpenStates::Committee.
76
+
77
+ ```rb
78
+ committees = OpenStates::Committee.where(state: 'ny')
79
+ ```
80
+
81
+ You can also search for a specific committee by it's id.
82
+
83
+ ```rb
84
+ committee = OpenStates::Committee.find("NYC000099")
85
+ ```
86
+
87
+ You can find a list of all query parameters for Committees
88
+ [here](http://sunlightlabs.github.io/openstates-api/committees.html)
89
+
90
+ ### OpenStates::District
91
+
92
+ You can search for districts using the `where` class method on
93
+ OpenStates::District.
94
+
95
+ ```rb
96
+ districts = OpenStates::District.where(state: 'nj')
97
+ ```
98
+
99
+ You can also search for a specific district by it's boundary_id.
100
+
101
+ ```rb
102
+ district = OpenStates::District.find('12345')
103
+ ```
104
+
105
+ You can find a list of all query parameters for Districts
106
+ [here](http://sunlightlabs.github.io/openstates-api/districts.html)
107
+
108
+ ### OpenStates::Event
109
+
110
+ You can search for events using the `where` class method on
111
+ OpenStates::Event.
112
+
113
+ ```rb
114
+ events = OpenStates::Event.where(state: 'ok')
115
+ ```
116
+
117
+ You can also search for a specific event by it's event_id.
118
+
119
+ ```rb
120
+ event = OpenStates::Event.find('1234567')
121
+ ```
122
+
123
+ You can find a list of all query parameters for Events
124
+ [here](http://sunlightlabs.github.io/openstates-api/events.html)
125
+
126
+ ### OpenStates::Legislator
127
+
128
+ You can search for legislators using the `where` class method on
129
+ OpenStates::Legislator.
130
+
131
+ ```rb
132
+ legislators = OpenStates::Legislator.where(state: 'ga')
133
+ ```
134
+
135
+ You can also search for a specific legislator by their leg_id.
136
+
137
+ ```rb
138
+ legislator = OpenStates::Legislator.find('12345')
139
+ ```
140
+
141
+ And lastly, you can search for legislators by geolocation details.
142
+
143
+ ```rb
144
+ legislators = OpenStates::Legislator.by_location(45.13, -85.10)
145
+ ```
146
+
147
+ You can find a list of all query parameters for Legislators
148
+ [here](http://sunlightlabs.github.io/openstates-api/legislators.html)
21
149
 
22
150
  ## Contributing
23
151
 
@@ -1,6 +1,6 @@
1
1
  module OpenStates
2
2
  module Connection
3
- BASE_URL = 'http://openstates.org/api/v1/'
3
+ BASE_URL = 'https://openstates.org/api/v1/'
4
4
  def connection
5
5
  @connection ||= begin
6
6
  conn = Faraday.new(BASE_URL) do |b|
@@ -9,6 +9,7 @@ module OpenStates
9
9
  :chamber,
10
10
  :id,
11
11
  :lat_delta,
12
+ :legislators,
12
13
  :lon_delta,
13
14
  :name,
14
15
  :num_seats,
@@ -1,3 +1,3 @@
1
1
  module OpenStates
2
- VERSION = "0.0.1"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -23,9 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency "bundler", "~> 1.3"
24
24
  spec.add_development_dependency "rake"
25
25
  spec.add_development_dependency "rspec"
26
- spec.add_development_dependency "guard"
27
- spec.add_development_dependency "guard-rspec"
28
26
  spec.add_development_dependency "pry"
29
27
  spec.add_development_dependency "pry-remote"
30
- spec.add_development_dependency "pry-debugger"
28
+ spec.add_development_dependency "pry-byebug"
31
29
  end
metadata CHANGED
@@ -1,174 +1,125 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openstates
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Chris
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-12-01 00:00:00.000000000 Z
11
+ date: 2017-01-06 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: faraday_middleware
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: hashie
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
47
  version: '1.3'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
54
  version: '1.3'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
94
- - !ruby/object:Gem::Dependency
95
- name: guard
96
- requirement: !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ! '>='
100
- - !ruby/object:Gem::Version
101
- version: '0'
102
- type: :development
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '0'
110
- - !ruby/object:Gem::Dependency
111
- name: guard-rspec
112
- requirement: !ruby/object:Gem::Requirement
113
- none: false
114
- requirements:
115
- - - ! '>='
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - ! '>='
80
+ - - ">="
124
81
  - !ruby/object:Gem::Version
125
82
  version: '0'
126
83
  - !ruby/object:Gem::Dependency
127
84
  name: pry
128
85
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
86
  requirements:
131
- - - ! '>='
87
+ - - ">="
132
88
  - !ruby/object:Gem::Version
133
89
  version: '0'
134
90
  type: :development
135
91
  prerelease: false
136
92
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
93
  requirements:
139
- - - ! '>='
94
+ - - ">="
140
95
  - !ruby/object:Gem::Version
141
96
  version: '0'
142
97
  - !ruby/object:Gem::Dependency
143
98
  name: pry-remote
144
99
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
100
  requirements:
147
- - - ! '>='
101
+ - - ">="
148
102
  - !ruby/object:Gem::Version
149
103
  version: '0'
150
104
  type: :development
151
105
  prerelease: false
152
106
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
107
  requirements:
155
- - - ! '>='
108
+ - - ">="
156
109
  - !ruby/object:Gem::Version
157
110
  version: '0'
158
111
  - !ruby/object:Gem::Dependency
159
- name: pry-debugger
112
+ name: pry-byebug
160
113
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
114
  requirements:
163
- - - ! '>='
115
+ - - ">="
164
116
  - !ruby/object:Gem::Version
165
117
  version: '0'
166
118
  type: :development
167
119
  prerelease: false
168
120
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
121
  requirements:
171
- - - ! '>='
122
+ - - ">="
172
123
  - !ruby/object:Gem::Version
173
124
  version: '0'
174
125
  description: Ruby gem to interact with the OpenStates API.
@@ -178,8 +129,9 @@ executables: []
178
129
  extensions: []
179
130
  extra_rdoc_files: []
180
131
  files:
181
- - .gitignore
182
- - .rspec
132
+ - ".gitignore"
133
+ - ".rspec"
134
+ - ".ruby-version"
183
135
  - Gemfile
184
136
  - Guardfile
185
137
  - LICENSE.txt
@@ -210,33 +162,26 @@ files:
210
162
  homepage: https://github.com/WideEyeLabs
211
163
  licenses:
212
164
  - MIT
165
+ metadata: {}
213
166
  post_install_message:
214
167
  rdoc_options: []
215
168
  require_paths:
216
169
  - lib
217
170
  required_ruby_version: !ruby/object:Gem::Requirement
218
- none: false
219
171
  requirements:
220
- - - ! '>='
172
+ - - ">="
221
173
  - !ruby/object:Gem::Version
222
174
  version: '0'
223
- segments:
224
- - 0
225
- hash: -4304350490256027937
226
175
  required_rubygems_version: !ruby/object:Gem::Requirement
227
- none: false
228
176
  requirements:
229
- - - ! '>='
177
+ - - ">="
230
178
  - !ruby/object:Gem::Version
231
179
  version: '0'
232
- segments:
233
- - 0
234
- hash: -4304350490256027937
235
180
  requirements: []
236
181
  rubyforge_project:
237
- rubygems_version: 1.8.25
182
+ rubygems_version: 2.5.1
238
183
  signing_key:
239
- specification_version: 3
184
+ specification_version: 4
240
185
  summary: Ruby gem to interact with the OpenStates API.
241
186
  test_files:
242
187
  - spec/openstates/api_spec.rb