Class: DocsBuilder
- Inherits:
-
Object
- Object
- DocsBuilder
- Defined in:
- lib/docs_builder.rb
Constant Summary collapse
- GITHUB_URL =
'https://github.com/ismasan/steppe'
Instance Method Summary collapse
- #build ⇒ Object
-
#initialize(readme_path:, output_dir:) ⇒ DocsBuilder
constructor
A new instance of DocsBuilder.
Constructor Details
#initialize(readme_path:, output_dir:) ⇒ DocsBuilder
Returns a new instance of DocsBuilder.
10 11 12 13 14 |
# File 'lib/docs_builder.rb', line 10 def initialize(readme_path:, output_dir:) @readme_path = readme_path @output_dir = output_dir @sections = [] end |
Instance Method Details
#build ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/docs_builder.rb', line 16 def build puts "Reading #{@readme_path}..." markdown = File.read(@readme_path) puts "Parsing markdown..." doc = Kramdown::Document.new(markdown, input: 'GFM', auto_ids: true) puts "Extracting structure..." extract_structure(doc.root) puts "Generating HTML..." html = generate_html(doc) puts "Writing to #{@output_dir}/index.html..." FileUtils.mkdir_p(@output_dir) File.write(File.join(@output_dir, 'index.html'), html) puts "Done! Documentation built successfully." end |