local_documentation 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/app/assets/images/documentation/link.svg +28 -0
  4. data/app/assets/images/documentation/logo-black.svg +23 -0
  5. data/app/assets/images/documentation/logo-white.svg +23 -0
  6. data/app/assets/images/documentation/page.svg +16 -0
  7. data/app/assets/images/documentation/pin.svg +15 -0
  8. data/app/assets/images/documentation/recommendation.svg +11 -0
  9. data/app/assets/images/documentation/search.svg +10 -0
  10. data/app/assets/images/documentation/unhappy.svg +15 -0
  11. data/app/assets/images/documentation/warning.svg +16 -0
  12. data/app/assets/javascripts/documentation/application.coffee +78 -0
  13. data/app/assets/javascripts/documentation/jquery-ui.js +4146 -0
  14. data/app/assets/javascripts/documentation/jquery.autosize.js +263 -0
  15. data/app/assets/stylesheets/documentation/application.scss +322 -0
  16. data/app/assets/stylesheets/documentation/markdown.scss +168 -0
  17. data/app/assets/stylesheets/documentation/page_form.scss +39 -0
  18. data/app/assets/stylesheets/documentation/reset.scss +101 -0
  19. data/app/controllers/documentation/application_controller.rb +27 -0
  20. data/app/controllers/documentation/pages_controller.rb +93 -0
  21. data/app/helpers/documentation/application_helper.rb +13 -0
  22. data/app/models/documentation/page.rb +214 -0
  23. data/app/models/documentation/screenshot.rb +15 -0
  24. data/app/views/documentation/pages/_admin_buttons.html.haml +18 -0
  25. data/app/views/documentation/pages/form.html.haml +16 -0
  26. data/app/views/documentation/pages/index.html.haml +13 -0
  27. data/app/views/documentation/pages/positioning.html.haml +22 -0
  28. data/app/views/documentation/pages/screenshot.html.haml +15 -0
  29. data/app/views/documentation/pages/search.html.haml +12 -0
  30. data/app/views/documentation/pages/show.html.haml +14 -0
  31. data/app/views/documentation/shared/access_denied.html.haml +10 -0
  32. data/app/views/documentation/shared/not_found.html.haml +10 -0
  33. data/app/views/layouts/documentation/_footer.html.haml +0 -0
  34. data/app/views/layouts/documentation/_head.html.haml +0 -0
  35. data/app/views/layouts/documentation/_header.html.haml +3 -0
  36. data/app/views/layouts/documentation/_search.html.haml +5 -0
  37. data/app/views/layouts/documentation/application.html.haml +22 -0
  38. data/config/locales/en.yml +62 -0
  39. data/config/routes.rb +11 -0
  40. data/db/migrate/20140711185212_create_documentation_pages.rb +10 -0
  41. data/db/migrate/20140724111844_create_nifty_attachments_table.rb +16 -0
  42. data/db/migrate/20140724114255_create_documentation_screenshots.rb +7 -0
  43. data/db/seeds.rb +15 -0
  44. data/doc/developers-guide/authorization.md +37 -0
  45. data/doc/developers-guide/building-views/accessing-pages.md +38 -0
  46. data/doc/developers-guide/building-views/helpers.md +105 -0
  47. data/doc/developers-guide/building-views/overview.md +3 -0
  48. data/doc/developers-guide/customization.md +9 -0
  49. data/doc/developers-guide/overview.md +20 -0
  50. data/doc/developers-guide/search-backends.md +17 -0
  51. data/doc/markdown/overview.md +37 -0
  52. data/lib/documentation.rb +20 -0
  53. data/lib/documentation/authorizer.rb +60 -0
  54. data/lib/documentation/config.rb +31 -0
  55. data/lib/documentation/engine.rb +29 -0
  56. data/lib/documentation/errors.rb +7 -0
  57. data/lib/documentation/generators/setup_generator.rb +17 -0
  58. data/lib/documentation/markdown_renderer.rb +62 -0
  59. data/lib/documentation/search_result.rb +84 -0
  60. data/lib/documentation/searchers/abstract.rb +47 -0
  61. data/lib/documentation/searchers/simple.rb +40 -0
  62. data/lib/documentation/version.rb +3 -0
  63. data/lib/documentation/view_helpers.rb +159 -0
  64. data/lib/tasks/documentation.rake +44 -0
  65. metadata +307 -0
@@ -0,0 +1,40 @@
1
+ module Documentation
2
+ module Searchers
3
+ class Simple < Documentation::Searchers::Abstract
4
+
5
+ def search(query, options = {})
6
+ # Default options
7
+ options[:page] ||= 1
8
+ options[:per_page] ||= 15
9
+
10
+ # Query string
11
+ query_string = "content LIKE ? OR title LIKE ?", "%#{query}%", "%#{query}"
12
+
13
+ # Get the total number of pages
14
+ total_results = pages = Documentation::Page.where(query_string).count
15
+
16
+ # Get the actual pages
17
+ pages = Documentation::Page.where(query_string)
18
+ pages = pages.offset((options[:page].to_i - 1) * options[:per_page].to_i)
19
+ pages = pages.limit(options[:per_page].to_i)
20
+
21
+ # Create a result object
22
+ result = Documentation::SearchResult.new
23
+ result.page = options[:page].to_i
24
+ result.per_page = options[:per_page].to_i
25
+ result.total_results = total_results
26
+ result.query = query
27
+ result.time = 0
28
+ result.results = pages
29
+
30
+ # Return the result
31
+ result
32
+ end
33
+
34
+ def index(page)
35
+ true
36
+ end
37
+
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,3 @@
1
+ module Documentation
2
+ VERSION = '1.0.0'
3
+ end
@@ -0,0 +1,159 @@
1
+ module Documentation
2
+ module ViewHelpers
3
+
4
+ #
5
+ # Path to edit a page in the manager UI
6
+ #
7
+ def documentation_edit_page_path(page)
8
+ "#{::Documentation::Engine.mounted_path}/edit/#{page.full_permalink}"
9
+ end
10
+
11
+ #
12
+ # Path to view a page in the manager UI
13
+ #
14
+ def documentation_page_path(page)
15
+ "#{::Documentation::Engine.mounted_path}/#{page.try(:full_permalink)}"
16
+ end
17
+
18
+ #
19
+ # Return a breadcrumb for the given page
20
+ #
21
+ def documentation_breadcrumb_for(page, options = {})
22
+ options[:root_link] = options[:root_link].nil? ? t('documentation.helpers.documentation_breadcrumb_for.default_root_link') : options[:root_link]
23
+ options[:class] ||= 'breadcrumb'
24
+
25
+ String.new.tap do |s|
26
+ s << "<nav class='#{options[:class]}'><ul>"
27
+
28
+ if options[:root_link]
29
+ s << "<li><a href='#{documentation_doc_root.blank? ? '/' : documentation_doc_root}'>#{options[:root_link]}</a></li>"
30
+ end
31
+
32
+ if page.is_a?(::Documentation::Page)
33
+ page.breadcrumb.each do |child|
34
+ s << "<li><a href='#{documentation_doc_root}/#{child.full_permalink}'>#{child.title}</a></li>"
35
+ end
36
+ end
37
+
38
+ s << "</ul></nav>"
39
+ end.html_safe
40
+ end
41
+
42
+ #
43
+ # Return a default navigation tree for the given page
44
+ #
45
+ def documentation_navigation_tree_for(page)
46
+ String.new.tap do |s|
47
+ s << "<ul>"
48
+ if page.is_a?(::Documentation::Page)
49
+ page.navigation.select { |p,c| documentation_authorizer.can_view_page?(p) }.each do |p, children|
50
+ s << "<li>"
51
+ s << "<a #{page == p ? "class='active'" : ''} href='#{documentation_doc_root}/#{p.full_permalink}'>#{p.title}</a>"
52
+ unless children.empty?
53
+ s << "<ul>"
54
+ children.select { |c| documentation_authorizer.can_view_page?(c) }.each do |p|
55
+ s << "<li><a #{page == p ? "class='active'" : ''} href='#{documentation_doc_root}/#{p.full_permalink}'>#{p.title}</a></li>"
56
+ end
57
+ s << "</ul>"
58
+ end
59
+ s << "</li>"
60
+ end
61
+ else
62
+ ::Documentation::Page.roots.each do |page|
63
+ s << "<li><a href='#{documentation_doc_root}/#{page.full_permalink}'>#{page.title}</a></li>"
64
+ end
65
+ end
66
+ s << "</ul>"
67
+ end.html_safe
68
+ end
69
+
70
+ #
71
+ # Return appropriate content for a given page
72
+ #
73
+ def documentation_content_for(page)
74
+ # Get the content
75
+ content = page.compiled_content.to_s
76
+
77
+ # Insert navigation
78
+ content.gsub!("<p class=''>{{nav}}</p>") do
79
+ children = page.children
80
+ children = children.select { |c| documentation_authorizer.can_view_page?(c) }
81
+ items = children.map { |c| "<li><a href='#{documentation_doc_root}/#{c.full_permalink}'>#{c.title}</a></li>" }.join
82
+ "<ul class='pages'>#{items}</ul>"
83
+ end
84
+
85
+ # Set the document root as appropriate
86
+ content.gsub!("{{docRoot}}", documentation_doc_root)
87
+
88
+ # Return HTML safe content
89
+ content.html_safe
90
+ end
91
+
92
+ #
93
+ # Return the documentation document root
94
+ #
95
+ def documentation_doc_root
96
+ @documentation_doc_root ||= begin
97
+ if controller.is_a?(Documentation::ApplicationController)
98
+ ::Documentation::Engine.mounted_path.to_s.sub(/\/$/, '')
99
+ else
100
+ ::Documentation.config.preview_path_prefix.to_s.sub(/\/$/, '')
101
+ end
102
+ end
103
+ end
104
+
105
+ #
106
+ # Return the documentation authorizer
107
+ #
108
+ def documentation_authorizer
109
+ @documentation_authorizer ||= Documentation.config.authorizer.new(controller)
110
+ end
111
+
112
+ #
113
+ # Return summary information for search results
114
+ #
115
+ def documentation_search_summary(result)
116
+ t('documentation.helpers.documentation_search_summary.text', :total_results => result.total_results, :start_result => result.start_result_number, :end_result => result.end_result_number, :query => result.query)
117
+ end
118
+
119
+ #
120
+ # Return the search results
121
+ #
122
+ def documentation_search_results(result, options = {})
123
+ options[:class] ||= 'searchResults'
124
+ String.new.tap do |s|
125
+ s << "<ul class='#{options[:class]}'>"
126
+ result.results.each do |page|
127
+ s << "<li>"
128
+ s << "<h4><a href='#{documentation_doc_root}/#{page.full_permalink}'>#{page.title}</a></h4>"
129
+ unless page.parents.empty?
130
+ s << "<p class='in'>#{t('documentation.helpers.documentation_search_results.in')} "
131
+ s << page.parents.map { |c| link_to(h(c.title), "#{documentation_doc_root}/#{c.full_permalink}")}.join(" &#8658; ").html_safe
132
+ s << "</p>"
133
+ end
134
+ s << "<p class='excerpt'>#{result.excerpt_for(page)}</p>"
135
+ s << "</li>"
136
+ end
137
+ s << "</ul>"
138
+ end.html_safe
139
+ end
140
+
141
+ #
142
+ # Return search pagination links
143
+ #
144
+ def documentation_search_pagination(result, options = {})
145
+ String.new.tap do |s|
146
+ unless result.first_page?
147
+ querystring = {:query => result.query, :page => result.page - 1}.to_query
148
+ s << link_to(t('documentation.helpers.documentation_search_pagination.previous'), "#{documentation_doc_root}/search?#{querystring}", :class => [options[:link_class], options[:previous_link_class]].compact.join(' '))
149
+ end
150
+
151
+ unless result.last_page?
152
+ querystring = {:query => result.query, :page => result.page + 1}.to_query
153
+ s << link_to(t('documentation.helpers.documentation_search_pagination.next'), "#{documentation_doc_root}/search?#{querystring}", :class => [options[:link_class], options[:next_link_class]].compact.join(' '))
154
+ end
155
+ end.html_safe
156
+ end
157
+
158
+ end
159
+ end
@@ -0,0 +1,44 @@
1
+ namespace :documentation do
2
+
3
+ desc "Load a set of initial guides"
4
+ task :install_guides => :environment do
5
+ require File.expand_path('../../../db/seeds', __FILE__)
6
+ end
7
+
8
+
9
+ namespace :db do
10
+ desc 'Migrates the documentation database'
11
+ task :migrate => :environment do
12
+ p "documentation db migrate"
13
+ with_engine_connection do
14
+ ActiveRecord::Migrator.migrate("#{File.dirname(__FILE__)}/../../db/migrate", ENV['VERSION'].try(:to_i))
15
+ end
16
+ Rake::Task['documentation:db:schema:dump'].invoke
17
+ end
18
+
19
+ task :'schema:dump' => :environment do
20
+ require 'active_record/schema_dumper'
21
+
22
+ with_engine_connection do
23
+ File.open(Rails.root.join('db', 'documentation_schema.rb'), 'w') do |file|
24
+ ActiveRecord::SchemaDumper.dump ActiveRecord::Base.connection, file
25
+ end
26
+ end
27
+ end
28
+
29
+ task :'schema:load' => :environment do
30
+ with_engine_connection do
31
+ load Rails.root.join('db', 'documentation_schema.rb')
32
+ end
33
+ end
34
+ end
35
+ end
36
+
37
+ # Hack to temporarily connect AR::Base to documentation.
38
+ def with_engine_connection
39
+ original = ActiveRecord::Base.remove_connection
40
+ ActiveRecord::Base.establish_connection "documentation".to_sym
41
+ yield
42
+ ensure
43
+ ActiveRecord::Base.establish_connection original
44
+ end
metadata ADDED
@@ -0,0 +1,307 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: local_documentation
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Zakaria Braksa
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-10-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 4.0.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 4.0.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: haml
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '4.0'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '4.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: dynamic_form
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.1'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 1.1.4
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: '1.1'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 1.1.4
67
+ - !ruby/object:Gem::Dependency
68
+ name: jquery-rails
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '3'
74
+ type: :runtime
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '3'
81
+ - !ruby/object:Gem::Dependency
82
+ name: coffee-rails
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '4'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '4'
95
+ - !ruby/object:Gem::Dependency
96
+ name: sass-rails
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: '4.0'
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: '4.0'
109
+ - !ruby/object:Gem::Dependency
110
+ name: uglifier
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: '2.2'
116
+ - - "<"
117
+ - !ruby/object:Gem::Version
118
+ version: '3.0'
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '2.2'
126
+ - - "<"
127
+ - !ruby/object:Gem::Version
128
+ version: '3.0'
129
+ - !ruby/object:Gem::Dependency
130
+ name: redcarpet
131
+ requirement: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: 3.1.0
136
+ - - "<"
137
+ - !ruby/object:Gem::Version
138
+ version: '4.0'
139
+ type: :runtime
140
+ prerelease: false
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: 3.1.0
146
+ - - "<"
147
+ - !ruby/object:Gem::Version
148
+ version: '4.0'
149
+ - !ruby/object:Gem::Dependency
150
+ name: pygments.rb
151
+ requirement: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - ">="
154
+ - !ruby/object:Gem::Version
155
+ version: '0.5'
156
+ - - "<"
157
+ - !ruby/object:Gem::Version
158
+ version: '1.0'
159
+ type: :runtime
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0.5'
166
+ - - "<"
167
+ - !ruby/object:Gem::Version
168
+ version: '1.0'
169
+ - !ruby/object:Gem::Dependency
170
+ name: nifty-attachments
171
+ requirement: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ version: 1.0.3
176
+ type: :runtime
177
+ prerelease: false
178
+ version_requirements: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ version: 1.0.3
183
+ - !ruby/object:Gem::Dependency
184
+ name: nifty-dialog
185
+ requirement: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - "~>"
188
+ - !ruby/object:Gem::Version
189
+ version: '1'
190
+ type: :runtime
191
+ prerelease: false
192
+ version_requirements: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - "~>"
195
+ - !ruby/object:Gem::Version
196
+ version: '1'
197
+ - !ruby/object:Gem::Dependency
198
+ name: sqlite3
199
+ requirement: !ruby/object:Gem::Requirement
200
+ requirements:
201
+ - - "~>"
202
+ - !ruby/object:Gem::Version
203
+ version: '1.3'
204
+ type: :development
205
+ prerelease: false
206
+ version_requirements: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - "~>"
209
+ - !ruby/object:Gem::Version
210
+ version: '1.3'
211
+ description: Easily add markdown-based project documentation to your Rails application
212
+ email:
213
+ - zakaria.braksa@gmail.com
214
+ executables: []
215
+ extensions: []
216
+ extra_rdoc_files: []
217
+ files:
218
+ - MIT-LICENSE
219
+ - app/assets/images/documentation/link.svg
220
+ - app/assets/images/documentation/logo-black.svg
221
+ - app/assets/images/documentation/logo-white.svg
222
+ - app/assets/images/documentation/page.svg
223
+ - app/assets/images/documentation/pin.svg
224
+ - app/assets/images/documentation/recommendation.svg
225
+ - app/assets/images/documentation/search.svg
226
+ - app/assets/images/documentation/unhappy.svg
227
+ - app/assets/images/documentation/warning.svg
228
+ - app/assets/javascripts/documentation/application.coffee
229
+ - app/assets/javascripts/documentation/jquery-ui.js
230
+ - app/assets/javascripts/documentation/jquery.autosize.js
231
+ - app/assets/stylesheets/documentation/application.scss
232
+ - app/assets/stylesheets/documentation/markdown.scss
233
+ - app/assets/stylesheets/documentation/page_form.scss
234
+ - app/assets/stylesheets/documentation/reset.scss
235
+ - app/controllers/documentation/application_controller.rb
236
+ - app/controllers/documentation/pages_controller.rb
237
+ - app/helpers/documentation/application_helper.rb
238
+ - app/models/documentation/page.rb
239
+ - app/models/documentation/screenshot.rb
240
+ - app/views/documentation/pages/_admin_buttons.html.haml
241
+ - app/views/documentation/pages/form.html.haml
242
+ - app/views/documentation/pages/index.html.haml
243
+ - app/views/documentation/pages/positioning.html.haml
244
+ - app/views/documentation/pages/screenshot.html.haml
245
+ - app/views/documentation/pages/search.html.haml
246
+ - app/views/documentation/pages/show.html.haml
247
+ - app/views/documentation/shared/access_denied.html.haml
248
+ - app/views/documentation/shared/not_found.html.haml
249
+ - app/views/layouts/documentation/_footer.html.haml
250
+ - app/views/layouts/documentation/_head.html.haml
251
+ - app/views/layouts/documentation/_header.html.haml
252
+ - app/views/layouts/documentation/_search.html.haml
253
+ - app/views/layouts/documentation/application.html.haml
254
+ - config/locales/en.yml
255
+ - config/routes.rb
256
+ - db/migrate/20140711185212_create_documentation_pages.rb
257
+ - db/migrate/20140724111844_create_nifty_attachments_table.rb
258
+ - db/migrate/20140724114255_create_documentation_screenshots.rb
259
+ - db/seeds.rb
260
+ - doc/developers-guide/authorization.md
261
+ - doc/developers-guide/building-views/accessing-pages.md
262
+ - doc/developers-guide/building-views/helpers.md
263
+ - doc/developers-guide/building-views/overview.md
264
+ - doc/developers-guide/customization.md
265
+ - doc/developers-guide/overview.md
266
+ - doc/developers-guide/search-backends.md
267
+ - doc/markdown/overview.md
268
+ - lib/documentation.rb
269
+ - lib/documentation/authorizer.rb
270
+ - lib/documentation/config.rb
271
+ - lib/documentation/engine.rb
272
+ - lib/documentation/errors.rb
273
+ - lib/documentation/generators/setup_generator.rb
274
+ - lib/documentation/markdown_renderer.rb
275
+ - lib/documentation/search_result.rb
276
+ - lib/documentation/searchers/abstract.rb
277
+ - lib/documentation/searchers/simple.rb
278
+ - lib/documentation/version.rb
279
+ - lib/documentation/view_helpers.rb
280
+ - lib/tasks/documentation.rake
281
+ homepage: http://braksa.com
282
+ licenses:
283
+ - MIT
284
+ metadata: {}
285
+ post_install_message:
286
+ rdoc_options: []
287
+ require_paths:
288
+ - lib
289
+ required_ruby_version: !ruby/object:Gem::Requirement
290
+ requirements:
291
+ - - ">="
292
+ - !ruby/object:Gem::Version
293
+ version: '0'
294
+ required_rubygems_version: !ruby/object:Gem::Requirement
295
+ requirements:
296
+ - - ">="
297
+ - !ruby/object:Gem::Version
298
+ version: '0'
299
+ requirements: []
300
+ rubyforge_project:
301
+ rubygems_version: 2.2.2
302
+ signing_key:
303
+ specification_version: 4
304
+ summary: Rails Engine for easily adding markdown-based project documentation to your
305
+ Rails application
306
+ test_files: []
307
+ has_rdoc: