llm-docs-builder 0.11.0 → 0.13.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.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +35 -4
- data/.github/workflows/docker.yml +7 -7
- data/.github/workflows/push.yml +3 -3
- data/.gitignore +8 -0
- data/.rubocop.yml +1 -14
- data/.ruby-version +1 -1
- data/.yard-lint.yml +275 -0
- data/CHANGELOG.md +16 -0
- data/Dockerfile +14 -7
- data/Gemfile +1 -1
- data/Gemfile.lock +33 -25
- data/README.md +16 -0
- data/lib/llm_docs_builder/cli.rb +0 -1
- data/lib/llm_docs_builder/config.rb +33 -0
- data/lib/llm_docs_builder/helpers/prune_trailing_unsafe_link_separator.rb +31 -0
- data/lib/llm_docs_builder/helpers/squeeze_blank_lines_outside_fences.rb +71 -0
- data/lib/llm_docs_builder/helpers.rb +9 -0
- data/lib/llm_docs_builder/html_detector.rb +159 -0
- data/lib/llm_docs_builder/html_to_markdown/figure_code_block_renderer.rb +181 -0
- data/lib/llm_docs_builder/html_to_markdown/table_markup_renderer.rb +597 -0
- data/lib/llm_docs_builder/html_to_markdown_converter.rb +826 -0
- data/lib/llm_docs_builder/markdown_transformer.rb +23 -9
- data/lib/llm_docs_builder/output_formatter.rb +1 -1
- data/lib/llm_docs_builder/text_compressor.rb +2 -2
- data/lib/llm_docs_builder/transformers/base_transformer.rb +13 -1
- data/lib/llm_docs_builder/transformers/heading_transformer.rb +19 -7
- data/lib/llm_docs_builder/url_fetcher.rb +18 -0
- data/lib/llm_docs_builder/version.rb +1 -1
- data/lib/llm_docs_builder.rb +10 -0
- data/llm-docs-builder.gemspec +3 -2
- data/package-lock.json +331 -0
- data/package.json +9 -0
- data/renovate.json +22 -9
- metadata +31 -8
- data/AGENTS.md +0 -20
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: llm-docs-builder
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.13.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Maciej Mensfeld
|
|
@@ -9,6 +9,20 @@ bindir: bin
|
|
|
9
9
|
cert_chain: []
|
|
10
10
|
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: nokogiri
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - "~>"
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '1.17'
|
|
19
|
+
type: :runtime
|
|
20
|
+
prerelease: false
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - "~>"
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: '1.17'
|
|
12
26
|
- !ruby/object:Gem::Dependency
|
|
13
27
|
name: zeitwerk
|
|
14
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -27,16 +41,16 @@ dependencies:
|
|
|
27
41
|
name: bundler
|
|
28
42
|
requirement: !ruby/object:Gem::Requirement
|
|
29
43
|
requirements:
|
|
30
|
-
- - "
|
|
44
|
+
- - ">="
|
|
31
45
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '
|
|
46
|
+
version: '0'
|
|
33
47
|
type: :development
|
|
34
48
|
prerelease: false
|
|
35
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
50
|
requirements:
|
|
37
|
-
- - "
|
|
51
|
+
- - ">="
|
|
38
52
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
53
|
+
version: '0'
|
|
40
54
|
- !ruby/object:Gem::Dependency
|
|
41
55
|
name: rake
|
|
42
56
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -116,7 +130,7 @@ files:
|
|
|
116
130
|
- ".rspec"
|
|
117
131
|
- ".rubocop.yml"
|
|
118
132
|
- ".ruby-version"
|
|
119
|
-
-
|
|
133
|
+
- ".yard-lint.yml"
|
|
120
134
|
- CHANGELOG.md
|
|
121
135
|
- Dockerfile
|
|
122
136
|
- Gemfile
|
|
@@ -133,6 +147,13 @@ files:
|
|
|
133
147
|
- lib/llm_docs_builder/config.rb
|
|
134
148
|
- lib/llm_docs_builder/errors.rb
|
|
135
149
|
- lib/llm_docs_builder/generator.rb
|
|
150
|
+
- lib/llm_docs_builder/helpers.rb
|
|
151
|
+
- lib/llm_docs_builder/helpers/prune_trailing_unsafe_link_separator.rb
|
|
152
|
+
- lib/llm_docs_builder/helpers/squeeze_blank_lines_outside_fences.rb
|
|
153
|
+
- lib/llm_docs_builder/html_detector.rb
|
|
154
|
+
- lib/llm_docs_builder/html_to_markdown/figure_code_block_renderer.rb
|
|
155
|
+
- lib/llm_docs_builder/html_to_markdown/table_markup_renderer.rb
|
|
156
|
+
- lib/llm_docs_builder/html_to_markdown_converter.rb
|
|
136
157
|
- lib/llm_docs_builder/markdown_transformer.rb
|
|
137
158
|
- lib/llm_docs_builder/output_formatter.rb
|
|
138
159
|
- lib/llm_docs_builder/parser.rb
|
|
@@ -152,6 +173,8 @@ files:
|
|
|
152
173
|
- misc/diff.png
|
|
153
174
|
- misc/logo.png
|
|
154
175
|
- misc/logo_wide.png
|
|
176
|
+
- package-lock.json
|
|
177
|
+
- package.json
|
|
155
178
|
- renovate.json
|
|
156
179
|
homepage: https://github.com/mensfeld/llm-docs-builder
|
|
157
180
|
licenses:
|
|
@@ -170,14 +193,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
170
193
|
requirements:
|
|
171
194
|
- - ">="
|
|
172
195
|
- !ruby/object:Gem::Version
|
|
173
|
-
version: '3.
|
|
196
|
+
version: '3.3'
|
|
174
197
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
175
198
|
requirements:
|
|
176
199
|
- - ">="
|
|
177
200
|
- !ruby/object:Gem::Version
|
|
178
201
|
version: '0'
|
|
179
202
|
requirements: []
|
|
180
|
-
rubygems_version:
|
|
203
|
+
rubygems_version: 4.0.6
|
|
181
204
|
specification_version: 4
|
|
182
205
|
summary: Build and optimize documentation for LLMs - generate llms.txt, transform
|
|
183
206
|
markdown, and more
|
data/AGENTS.md
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Repository Guidelines
|
|
2
|
-
|
|
3
|
-
## Project Structure & Module Organization
|
|
4
|
-
Core gem code lives in `lib/llm_docs_builder`, with single-responsibility modules such as `generator.rb`, `validator.rb`, and the CLI glue in `cli.rb`. Shared entrypoint `lib/llm_docs_builder.rb` wires dependencies. Executables reside in `bin/`: `llm-docs-builder` boots the CLI, while `rspecs` runs the full test matrix. Specs mirror library files under `spec/` with command-level coverage in `spec/integrations`. Static assets (logos, diff screenshots) are in `misc/`. Example configuration templates live at `llm-docs-builder.yml.example`.
|
|
5
|
-
|
|
6
|
-
## Build, Test, and Development Commands
|
|
7
|
-
- `bundle install` — sync gem dependencies defined in `Gemfile`.
|
|
8
|
-
- `bundle exec rake` — default task; runs RSpec and RuboCop together.
|
|
9
|
-
- `bundle exec rspec` or `bin/rspecs` — execute unit and integration specs with doc formatter.
|
|
10
|
-
- `bundle exec rubocop` — enforce the Ruby style guide; mirrors CI.
|
|
11
|
-
- `bin/llm-docs-builder transform --docs README.md` — smoke-test the CLI against a local file.
|
|
12
|
-
|
|
13
|
-
## Coding Style & Naming Conventions
|
|
14
|
-
Target Ruby 3.2 with two-space indentation and trailing newline. Prefer single-quoted strings; enable `# frozen_string_literal: true` headers on Ruby files. Keep lines ≤120 characters except where the RuboCop config allows. Use descriptive module/class names (e.g., `LlmDocsBuilder::Generator`) and predicate methods ending with `?` when returning booleans. Place supporting fixtures in `spec/support` if added, and name files after the class they extend.
|
|
15
|
-
|
|
16
|
-
## Testing Guidelines
|
|
17
|
-
RSpec is the sole testing framework. Name files `*_spec.rb` and align describe blocks with constant paths. Integration scenarios belong in `spec/integrations` to capture CLI behaviors. SimpleCov is enabled by default for line and branch coverage; export `SIMPLECOV=false` for quick local runs. Persist example statuses with the automatically managed `spec/examples.txt`.
|
|
18
|
-
|
|
19
|
-
## Commit & Pull Request Guidelines
|
|
20
|
-
Keep commit subjects short, present-tense, and focused (e.g., `Align CLI config (#27)`). Group related changes together so `git log` remains readable. Pull requests should describe motivation, summarize behavioral impact, link related issues or discussions, and include CLI output or screenshots when touching generated docs. Ensure CI passes (`bundle exec rake`) before requesting review, and note any follow-up work in the PR description.
|