@theglitchking/hit-em-with-the-docs 2.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.
- package/.claude-plugin/marketplace.json +46 -0
- package/.claude-plugin/plugin.json +114 -0
- package/LICENSE +21 -0
- package/MIGRATION.md +255 -0
- package/README.backup.md +714 -0
- package/README.md +869 -0
- package/action.yml +56 -0
- package/dist/action/action/index.d.ts +2 -0
- package/dist/action/action/index.d.ts.map +1 -0
- package/dist/action/cli/index.d.ts +3 -0
- package/dist/action/cli/index.d.ts.map +1 -0
- package/dist/action/core/audit/auditor.d.ts +43 -0
- package/dist/action/core/audit/auditor.d.ts.map +1 -0
- package/dist/action/core/audit/rules.d.ts +37 -0
- package/dist/action/core/audit/rules.d.ts.map +1 -0
- package/dist/action/core/discover/antipatterns.d.ts +24 -0
- package/dist/action/core/discover/antipatterns.d.ts.map +1 -0
- package/dist/action/core/discover/dependencies.d.ts +57 -0
- package/dist/action/core/discover/dependencies.d.ts.map +1 -0
- package/dist/action/core/discover/patterns.d.ts +38 -0
- package/dist/action/core/discover/patterns.d.ts.map +1 -0
- package/dist/action/core/discover/standards.d.ts +58 -0
- package/dist/action/core/discover/standards.d.ts.map +1 -0
- package/dist/action/core/domains/classifier.d.ts +41 -0
- package/dist/action/core/domains/classifier.d.ts.map +1 -0
- package/dist/action/core/domains/constants.d.ts +40 -0
- package/dist/action/core/domains/constants.d.ts.map +1 -0
- package/dist/action/core/domains/detector.d.ts +35 -0
- package/dist/action/core/domains/detector.d.ts.map +1 -0
- package/dist/action/core/integrate/integrator.d.ts +35 -0
- package/dist/action/core/integrate/integrator.d.ts.map +1 -0
- package/dist/action/core/links/checker.d.ts +64 -0
- package/dist/action/core/links/checker.d.ts.map +1 -0
- package/dist/action/core/links/tracker.d.ts +69 -0
- package/dist/action/core/links/tracker.d.ts.map +1 -0
- package/dist/action/core/maintain/orchestrator.d.ts +39 -0
- package/dist/action/core/maintain/orchestrator.d.ts.map +1 -0
- package/dist/action/core/metadata/generator.d.ts +26 -0
- package/dist/action/core/metadata/generator.d.ts.map +1 -0
- package/dist/action/core/metadata/schema.d.ts +201 -0
- package/dist/action/core/metadata/schema.d.ts.map +1 -0
- package/dist/action/core/metadata/sync.d.ts +36 -0
- package/dist/action/core/metadata/sync.d.ts.map +1 -0
- package/dist/action/generators/index-generator.d.ts +19 -0
- package/dist/action/generators/index-generator.d.ts.map +1 -0
- package/dist/action/generators/registry-generator.d.ts +11 -0
- package/dist/action/generators/registry-generator.d.ts.map +1 -0
- package/dist/action/generators/scaffold.d.ts +30 -0
- package/dist/action/generators/scaffold.d.ts.map +1 -0
- package/dist/action/generators/templates/document.d.ts +14 -0
- package/dist/action/generators/templates/document.d.ts.map +1 -0
- package/dist/action/generators/templates/domain-index.d.ts +6 -0
- package/dist/action/generators/templates/domain-index.d.ts.map +1 -0
- package/dist/action/generators/templates/domain-registry.d.ts +6 -0
- package/dist/action/generators/templates/domain-registry.d.ts.map +1 -0
- package/dist/action/index.d.ts +31 -0
- package/dist/action/index.d.ts.map +1 -0
- package/dist/action/index.js +17 -0
- package/dist/action/index.js.map +1 -0
- package/dist/action/package.json +3 -0
- package/dist/action/reports/audit-report.d.ts +15 -0
- package/dist/action/reports/audit-report.d.ts.map +1 -0
- package/dist/action/reports/health-report.d.ts +15 -0
- package/dist/action/reports/health-report.d.ts.map +1 -0
- package/dist/action/reports/link-report.d.ts +15 -0
- package/dist/action/reports/link-report.d.ts.map +1 -0
- package/dist/action/utils/frontmatter.d.ts +50 -0
- package/dist/action/utils/frontmatter.d.ts.map +1 -0
- package/dist/action/utils/glob.d.ts +63 -0
- package/dist/action/utils/glob.d.ts.map +1 -0
- package/dist/action/utils/logger.d.ts +42 -0
- package/dist/action/utils/logger.d.ts.map +1 -0
- package/dist/action/utils/markdown.d.ts +89 -0
- package/dist/action/utils/markdown.d.ts.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +287 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/audit/auditor.d.ts +43 -0
- package/dist/core/audit/auditor.d.ts.map +1 -0
- package/dist/core/audit/auditor.js +273 -0
- package/dist/core/audit/auditor.js.map +1 -0
- package/dist/core/audit/rules.d.ts +37 -0
- package/dist/core/audit/rules.d.ts.map +1 -0
- package/dist/core/audit/rules.js +223 -0
- package/dist/core/audit/rules.js.map +1 -0
- package/dist/core/discover/antipatterns.d.ts +24 -0
- package/dist/core/discover/antipatterns.d.ts.map +1 -0
- package/dist/core/discover/antipatterns.js +354 -0
- package/dist/core/discover/antipatterns.js.map +1 -0
- package/dist/core/discover/dependencies.d.ts +57 -0
- package/dist/core/discover/dependencies.d.ts.map +1 -0
- package/dist/core/discover/dependencies.js +311 -0
- package/dist/core/discover/dependencies.js.map +1 -0
- package/dist/core/discover/patterns.d.ts +38 -0
- package/dist/core/discover/patterns.d.ts.map +1 -0
- package/dist/core/discover/patterns.js +371 -0
- package/dist/core/discover/patterns.js.map +1 -0
- package/dist/core/discover/standards.d.ts +58 -0
- package/dist/core/discover/standards.d.ts.map +1 -0
- package/dist/core/discover/standards.js +359 -0
- package/dist/core/discover/standards.js.map +1 -0
- package/dist/core/domains/classifier.d.ts +41 -0
- package/dist/core/domains/classifier.d.ts.map +1 -0
- package/dist/core/domains/classifier.js +208 -0
- package/dist/core/domains/classifier.js.map +1 -0
- package/dist/core/domains/constants.d.ts +40 -0
- package/dist/core/domains/constants.d.ts.map +1 -0
- package/dist/core/domains/constants.js +252 -0
- package/dist/core/domains/constants.js.map +1 -0
- package/dist/core/domains/detector.d.ts +35 -0
- package/dist/core/domains/detector.d.ts.map +1 -0
- package/dist/core/domains/detector.js +176 -0
- package/dist/core/domains/detector.js.map +1 -0
- package/dist/core/integrate/integrator.d.ts +35 -0
- package/dist/core/integrate/integrator.d.ts.map +1 -0
- package/dist/core/integrate/integrator.js +216 -0
- package/dist/core/integrate/integrator.js.map +1 -0
- package/dist/core/links/checker.d.ts +64 -0
- package/dist/core/links/checker.d.ts.map +1 -0
- package/dist/core/links/checker.js +190 -0
- package/dist/core/links/checker.js.map +1 -0
- package/dist/core/links/tracker.d.ts +69 -0
- package/dist/core/links/tracker.d.ts.map +1 -0
- package/dist/core/links/tracker.js +184 -0
- package/dist/core/links/tracker.js.map +1 -0
- package/dist/core/maintain/orchestrator.d.ts +39 -0
- package/dist/core/maintain/orchestrator.d.ts.map +1 -0
- package/dist/core/maintain/orchestrator.js +372 -0
- package/dist/core/maintain/orchestrator.js.map +1 -0
- package/dist/core/metadata/generator.d.ts +26 -0
- package/dist/core/metadata/generator.d.ts.map +1 -0
- package/dist/core/metadata/generator.js +221 -0
- package/dist/core/metadata/generator.js.map +1 -0
- package/dist/core/metadata/schema.d.ts +201 -0
- package/dist/core/metadata/schema.d.ts.map +1 -0
- package/dist/core/metadata/schema.js +184 -0
- package/dist/core/metadata/schema.js.map +1 -0
- package/dist/core/metadata/sync.d.ts +36 -0
- package/dist/core/metadata/sync.d.ts.map +1 -0
- package/dist/core/metadata/sync.js +195 -0
- package/dist/core/metadata/sync.js.map +1 -0
- package/dist/generators/index-generator.d.ts +19 -0
- package/dist/generators/index-generator.d.ts.map +1 -0
- package/dist/generators/index-generator.js +191 -0
- package/dist/generators/index-generator.js.map +1 -0
- package/dist/generators/registry-generator.d.ts +11 -0
- package/dist/generators/registry-generator.d.ts.map +1 -0
- package/dist/generators/registry-generator.js +156 -0
- package/dist/generators/registry-generator.js.map +1 -0
- package/dist/generators/scaffold.d.ts +30 -0
- package/dist/generators/scaffold.d.ts.map +1 -0
- package/dist/generators/scaffold.js +213 -0
- package/dist/generators/scaffold.js.map +1 -0
- package/dist/generators/templates/document.d.ts +14 -0
- package/dist/generators/templates/document.d.ts.map +1 -0
- package/dist/generators/templates/document.js +305 -0
- package/dist/generators/templates/document.js.map +1 -0
- package/dist/generators/templates/domain-index.d.ts +6 -0
- package/dist/generators/templates/domain-index.d.ts.map +1 -0
- package/dist/generators/templates/domain-index.js +68 -0
- package/dist/generators/templates/domain-index.js.map +1 -0
- package/dist/generators/templates/domain-registry.d.ts +6 -0
- package/dist/generators/templates/domain-registry.d.ts.map +1 -0
- package/dist/generators/templates/domain-registry.js +59 -0
- package/dist/generators/templates/domain-registry.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/reports/audit-report.d.ts +15 -0
- package/dist/reports/audit-report.d.ts.map +1 -0
- package/dist/reports/audit-report.js +150 -0
- package/dist/reports/audit-report.js.map +1 -0
- package/dist/reports/health-report.d.ts +15 -0
- package/dist/reports/health-report.d.ts.map +1 -0
- package/dist/reports/health-report.js +175 -0
- package/dist/reports/health-report.js.map +1 -0
- package/dist/reports/link-report.d.ts +15 -0
- package/dist/reports/link-report.d.ts.map +1 -0
- package/dist/reports/link-report.js +165 -0
- package/dist/reports/link-report.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +50 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +93 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/glob.d.ts +63 -0
- package/dist/utils/glob.d.ts.map +1 -0
- package/dist/utils/glob.js +128 -0
- package/dist/utils/glob.js.map +1 -0
- package/dist/utils/logger.d.ts +42 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +118 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/markdown.d.ts +89 -0
- package/dist/utils/markdown.d.ts.map +1 -0
- package/dist/utils/markdown.js +192 -0
- package/dist/utils/markdown.js.map +1 -0
- package/package.json +100 -0
- package/templates/claude/CLAUDE.md +204 -0
package/README.md
ADDED
|
@@ -0,0 +1,869 @@
|
|
|
1
|
+
# hit-em-with-the-docs
|
|
2
|
+
|
|
3
|
+
> A self-managing documentation system that keeps your docs organized, accurate, and easy to find.
|
|
4
|
+
|
|
5
|
+
[](https://github.com/marketplace/actions/hit-em-with-the-docs)
|
|
6
|
+
[](https://www.npmjs.com/package/hit-em-with-the-docs)
|
|
7
|
+
[](https://opensource.org/licenses/MIT)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
> [!IMPORTANT]
|
|
11
|
+
> You will still need to remember to invoke this plugin for document creation! As projects continue to scale, documetnation will need to be created / maintained. a user will still need to invoke this plugin or ask and LLM for that documentation to be created for your > feature / workflow / infrastructure, or create it yourself using the commands from this plugin. This plugin needs to be invoked to either create / update / maintain it all.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## Summary
|
|
16
|
+
|
|
17
|
+
Documentation often becomes messy and hard to find as projects grow. Important information gets scattered across many files, links break when files move, and nobody knows if docs are up to date. Hit-em-with-the-docs solves these problems by organizing your documentation into 15 clear categories, checking links automatically, and making sure every document has proper information about what it contains. It keeps your documentation healthy without you having to think about it.
|
|
18
|
+
|
|
19
|
+
## Operational Summary
|
|
20
|
+
|
|
21
|
+
The plugin creates a special folder called `.documentation` in your project with 15 organized sections (called "domains") like security, API, database, and testing. Each document gets tagged with metadata - information like title, category, and last update date - that helps you and the system understand what it's about.
|
|
22
|
+
|
|
23
|
+
The system has built-in tools that automatically check your documentation for problems. It finds broken links between documents, makes sure metadata is complete, and verifies files are named correctly. You can run these checks manually or set them up to run automatically in your build process. The plugin can also scan your actual code to discover patterns and create documentation from what it finds. Everything is designed to work with markdown files and integrates seamlessly with GitHub Actions for continuous monitoring.
|
|
24
|
+
|
|
25
|
+
## Features
|
|
26
|
+
|
|
27
|
+
- **Organized Structure**: Automatically creates 15 specialized categories for different types of documentation
|
|
28
|
+
- **Smart Classification**: Analyzes your documents and automatically puts them in the right category
|
|
29
|
+
- **Metadata Management**: Tracks 22 different pieces of information about each document (title, status, tags, etc.)
|
|
30
|
+
- **Link Checking**: Finds and reports broken links between documents
|
|
31
|
+
- **Auto-Fixing**: Can automatically repair common problems like missing metadata
|
|
32
|
+
- **Pattern Discovery**: Scans your code to find and document coding patterns
|
|
33
|
+
- **Health Reports**: Generates reports showing the overall quality of your documentation
|
|
34
|
+
- **GitHub Integration**: Works as a GitHub Action for automated checks
|
|
35
|
+
- **CLI Tool**: Full command-line interface for all operations
|
|
36
|
+
- **Search Functionality**: Quick search across all documentation
|
|
37
|
+
|
|
38
|
+
## Quick Start
|
|
39
|
+
|
|
40
|
+
### Installation Methods
|
|
41
|
+
|
|
42
|
+
#### Method 1: Global Installation (Recommended for CLI use)
|
|
43
|
+
|
|
44
|
+
This method installs the tool on your computer so you can use it anywhere.
|
|
45
|
+
|
|
46
|
+
1. Open your terminal or command prompt
|
|
47
|
+
2. Type this command and press Enter:
|
|
48
|
+
```bash
|
|
49
|
+
npm install -g hit-em-with-the-docs
|
|
50
|
+
```
|
|
51
|
+
3. Wait for the installation to complete
|
|
52
|
+
4. Verify it worked by typing:
|
|
53
|
+
```bash
|
|
54
|
+
hewtd --version
|
|
55
|
+
```
|
|
56
|
+
5. You should see the version number
|
|
57
|
+
|
|
58
|
+
#### Method 2: Project Installation
|
|
59
|
+
|
|
60
|
+
This method installs the tool only for your current project.
|
|
61
|
+
|
|
62
|
+
1. Open your terminal in your project folder
|
|
63
|
+
2. Type this command:
|
|
64
|
+
```bash
|
|
65
|
+
npm install --save-dev hit-em-with-the-docs
|
|
66
|
+
```
|
|
67
|
+
3. Add a script to your `package.json`:
|
|
68
|
+
```json
|
|
69
|
+
"scripts": {
|
|
70
|
+
"docs": "hewtd"
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
4. Use it with: `npm run docs`
|
|
74
|
+
|
|
75
|
+
#### Method 3: One-Time Use (No Installation)
|
|
76
|
+
|
|
77
|
+
You can run the tool without installing it using `npx`:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
npx hit-em-with-the-docs <command>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
#### Method 4: GitHub Action
|
|
84
|
+
|
|
85
|
+
Add this to your repository at `.github/workflows/docs-check.yml`:
|
|
86
|
+
|
|
87
|
+
```yaml
|
|
88
|
+
name: Documentation Health Check
|
|
89
|
+
|
|
90
|
+
on:
|
|
91
|
+
push:
|
|
92
|
+
paths:
|
|
93
|
+
- '.documentation/**'
|
|
94
|
+
schedule:
|
|
95
|
+
- cron: '0 16 * * 5' # Every Friday at 4 PM
|
|
96
|
+
|
|
97
|
+
jobs:
|
|
98
|
+
docs-check:
|
|
99
|
+
runs-on: ubuntu-latest
|
|
100
|
+
steps:
|
|
101
|
+
- uses: actions/checkout@v4
|
|
102
|
+
|
|
103
|
+
- name: Run Documentation Health Check
|
|
104
|
+
uses: TheGlitchKing/hit-em-with-the-docs@v1
|
|
105
|
+
with:
|
|
106
|
+
command: maintain
|
|
107
|
+
mode: quick
|
|
108
|
+
fail-on-error: true
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Initializing the Plugin
|
|
112
|
+
|
|
113
|
+
After installing, you need to create the documentation structure:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
# Create .documentation folder with all 15 categories
|
|
117
|
+
hewtd init
|
|
118
|
+
|
|
119
|
+
# Or specify a different location
|
|
120
|
+
hewtd init --path ./docs
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
This creates a folder structure like:
|
|
124
|
+
```
|
|
125
|
+
.documentation/
|
|
126
|
+
├── INDEX.md # Main navigation page
|
|
127
|
+
├── REGISTRY.md # Quick reference list
|
|
128
|
+
├── README.md # Overview of the documentation
|
|
129
|
+
├── security/ # Security-related docs
|
|
130
|
+
├── api/ # API documentation
|
|
131
|
+
├── database/ # Database docs
|
|
132
|
+
├── testing/ # Test documentation
|
|
133
|
+
└── ... (11 more categories)
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## CLI Commands
|
|
139
|
+
|
|
140
|
+
### Basic Commands
|
|
141
|
+
|
|
142
|
+
| Command | Description |
|
|
143
|
+
|---------|-------------|
|
|
144
|
+
| `hewtd init` | Create the documentation structure |
|
|
145
|
+
| `hewtd maintain` | Run full health check and maintenance |
|
|
146
|
+
| `hewtd integrate <file>` | Add a document to the system |
|
|
147
|
+
| `hewtd list` | Show all documentation categories |
|
|
148
|
+
| `hewtd search <query>` | Search for content in documentation |
|
|
149
|
+
|
|
150
|
+
### Maintenance Commands
|
|
151
|
+
|
|
152
|
+
| Command | Description |
|
|
153
|
+
|---------|-------------|
|
|
154
|
+
| `hewtd metadata-sync` | Update and fix document metadata |
|
|
155
|
+
| `hewtd link-check` | Find broken links |
|
|
156
|
+
| `hewtd audit` | Check documentation quality |
|
|
157
|
+
| `hewtd report <type>` | Generate reports (health, audit, links) |
|
|
158
|
+
|
|
159
|
+
### Discovery Commands
|
|
160
|
+
|
|
161
|
+
| Command | Description |
|
|
162
|
+
|---------|-------------|
|
|
163
|
+
| `hewtd discover patterns` | Find coding patterns in your codebase |
|
|
164
|
+
| `hewtd discover anti-patterns` | Find problematic code patterns |
|
|
165
|
+
| `hewtd discover standards` | Extract coding standards from code |
|
|
166
|
+
| `hewtd discover dependencies` | Analyze project dependencies |
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
### Command Details and Examples
|
|
171
|
+
|
|
172
|
+
#### `hewtd init` - Create Documentation Structure
|
|
173
|
+
|
|
174
|
+
**When to use**: First time setting up documentation in a project.
|
|
175
|
+
|
|
176
|
+
**What it does**: Creates the `.documentation` folder with 15 organized categories and starter files.
|
|
177
|
+
|
|
178
|
+
**Examples**:
|
|
179
|
+
```bash
|
|
180
|
+
# Basic initialization
|
|
181
|
+
hewtd init
|
|
182
|
+
|
|
183
|
+
# Custom location
|
|
184
|
+
hewtd init --path ./my-docs
|
|
185
|
+
|
|
186
|
+
# Overwrite existing structure
|
|
187
|
+
hewtd init --force
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
**What to expect**: You'll see 53 files and folders created. Each category gets an INDEX.md (table of contents) and REGISTRY.md (quick reference list).
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
#### `hewtd maintain` - Full Documentation Maintenance
|
|
195
|
+
|
|
196
|
+
**When to use**: Weekly checkups, before releases, or after adding lots of documentation.
|
|
197
|
+
|
|
198
|
+
**What it does**: Runs a complete health check - fixes metadata, checks links, and creates a report with a score.
|
|
199
|
+
|
|
200
|
+
**Examples**:
|
|
201
|
+
```bash
|
|
202
|
+
# Full maintenance (checks everything)
|
|
203
|
+
hewtd maintain
|
|
204
|
+
|
|
205
|
+
# Quick mode (skips link checking - faster)
|
|
206
|
+
hewtd maintain --quick
|
|
207
|
+
|
|
208
|
+
# Quick mode with auto-fix
|
|
209
|
+
hewtd maintain --quick --fix
|
|
210
|
+
|
|
211
|
+
# Specific folder
|
|
212
|
+
hewtd maintain --path ./docs
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
**What to expect**:
|
|
216
|
+
- See a health score from 0 to 100
|
|
217
|
+
- Get a list of issues found
|
|
218
|
+
- See how many issues were fixed
|
|
219
|
+
- Find a detailed report in `.documentation/reports/`
|
|
220
|
+
|
|
221
|
+
**Use it on**: Your entire documentation folder, especially before merging code or releasing.
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
#### `hewtd integrate` - Add Documents to the System
|
|
226
|
+
|
|
227
|
+
**When to use**: Adding new documentation files or organizing existing ones.
|
|
228
|
+
|
|
229
|
+
**What it does**: Reads your document, figures out which category it belongs in, adds metadata, and moves it to the right place.
|
|
230
|
+
|
|
231
|
+
**Examples**:
|
|
232
|
+
```bash
|
|
233
|
+
# Add a single document
|
|
234
|
+
hewtd integrate ./my-guide.md
|
|
235
|
+
|
|
236
|
+
# Preview where it would go (doesn't actually move it)
|
|
237
|
+
hewtd integrate ./my-guide.md --dry-run
|
|
238
|
+
|
|
239
|
+
# Automatic mode (no questions asked)
|
|
240
|
+
hewtd integrate ./my-guide.md --auto
|
|
241
|
+
|
|
242
|
+
# Add multiple documents
|
|
243
|
+
for file in old-docs/*.md; do
|
|
244
|
+
hewtd integrate "$file" --auto
|
|
245
|
+
done
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
**What to expect**: The tool will read your document and suggest a category like "security" or "api" based on its content. It adds metadata and moves the file.
|
|
249
|
+
|
|
250
|
+
**Use it on**: New markdown files you want to add to your documentation system.
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
#### `hewtd metadata-sync` - Update Document Information
|
|
255
|
+
|
|
256
|
+
**When to use**: After manually editing files or when metadata is missing.
|
|
257
|
+
|
|
258
|
+
**What it does**: Checks all documents for proper metadata and fills in missing information automatically.
|
|
259
|
+
|
|
260
|
+
**Examples**:
|
|
261
|
+
```bash
|
|
262
|
+
# Check everything (preview only)
|
|
263
|
+
hewtd metadata-sync
|
|
264
|
+
|
|
265
|
+
# Fix all issues
|
|
266
|
+
hewtd metadata-sync --fix
|
|
267
|
+
|
|
268
|
+
# Only check security documentation
|
|
269
|
+
hewtd metadata-sync --domain security --fix
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
**What to expect**: Sees how many documents have complete information, automatically adds things like word count and reading time.
|
|
273
|
+
|
|
274
|
+
**Use it on**: The entire `.documentation` folder or specific categories.
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
#### `hewtd link-check` - Find Broken Links
|
|
279
|
+
|
|
280
|
+
**When to use**: Before releases, after moving files, or monthly maintenance.
|
|
281
|
+
|
|
282
|
+
**What it does**: Checks every link in your documentation to make sure it points to a real file.
|
|
283
|
+
|
|
284
|
+
**Examples**:
|
|
285
|
+
```bash
|
|
286
|
+
# Check all links
|
|
287
|
+
hewtd link-check
|
|
288
|
+
|
|
289
|
+
# Check specific category
|
|
290
|
+
hewtd link-check --domain api
|
|
291
|
+
|
|
292
|
+
# Generate detailed report
|
|
293
|
+
hewtd link-check --report
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
**What to expect**: See a list of broken links with file names and line numbers. The report saves to `.documentation/reports/`.
|
|
297
|
+
|
|
298
|
+
**Use it on**: Your entire documentation, especially after reorganizing files.
|
|
299
|
+
|
|
300
|
+
---
|
|
301
|
+
|
|
302
|
+
#### `hewtd audit` - Check Documentation Quality
|
|
303
|
+
|
|
304
|
+
**When to use**: Quality checks, code reviews, or establishing a baseline.
|
|
305
|
+
|
|
306
|
+
**What it does**: Checks if files follow naming rules, are in the right categories, and have complete metadata.
|
|
307
|
+
|
|
308
|
+
**Examples**:
|
|
309
|
+
```bash
|
|
310
|
+
# Audit everything
|
|
311
|
+
hewtd audit
|
|
312
|
+
|
|
313
|
+
# Only show problems
|
|
314
|
+
hewtd audit --issues-only
|
|
315
|
+
|
|
316
|
+
# Audit specific category
|
|
317
|
+
hewtd audit --domain standards
|
|
318
|
+
|
|
319
|
+
# Generate full report
|
|
320
|
+
hewtd audit --report
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
**What to expect**: Get a quality score and detailed list of what needs fixing.
|
|
324
|
+
|
|
325
|
+
**Use it on**: The entire documentation system to measure quality.
|
|
326
|
+
|
|
327
|
+
---
|
|
328
|
+
|
|
329
|
+
#### `hewtd discover patterns` - Find Code Patterns
|
|
330
|
+
|
|
331
|
+
**When to use**: Creating architecture documentation, onboarding guides, or style guides.
|
|
332
|
+
|
|
333
|
+
**What it does**: Scans your code and creates documentation about patterns it finds (like Singleton, Factory, Repository).
|
|
334
|
+
|
|
335
|
+
**Examples**:
|
|
336
|
+
```bash
|
|
337
|
+
# Find all patterns
|
|
338
|
+
hewtd discover patterns
|
|
339
|
+
|
|
340
|
+
# Only TypeScript files
|
|
341
|
+
hewtd discover patterns --language typescript
|
|
342
|
+
|
|
343
|
+
# Scan specific folder
|
|
344
|
+
hewtd discover patterns --root ./src
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
**What to expect**: Creates markdown files with examples of patterns found in your code, including file locations.
|
|
348
|
+
|
|
349
|
+
**Use it on**: Your source code folders (automatically skips node_modules and other common folders).
|
|
350
|
+
|
|
351
|
+
---
|
|
352
|
+
|
|
353
|
+
#### `hewtd list` - Show All Categories
|
|
354
|
+
|
|
355
|
+
**When to use**: Quick reference to see available categories.
|
|
356
|
+
|
|
357
|
+
**What it does**: Displays all 15 categories with descriptions.
|
|
358
|
+
|
|
359
|
+
**Example**:
|
|
360
|
+
```bash
|
|
361
|
+
hewtd list
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
**What to expect**: A table showing category names, priority, and descriptions.
|
|
365
|
+
|
|
366
|
+
---
|
|
367
|
+
|
|
368
|
+
#### `hewtd search` - Find Documentation
|
|
369
|
+
|
|
370
|
+
**When to use**: Looking for specific information across all docs.
|
|
371
|
+
|
|
372
|
+
**What it does**: Searches through all documentation files for your search term.
|
|
373
|
+
|
|
374
|
+
**Examples**:
|
|
375
|
+
```bash
|
|
376
|
+
# Basic search
|
|
377
|
+
hewtd search "authentication"
|
|
378
|
+
|
|
379
|
+
# Search in specific category
|
|
380
|
+
hewtd search "authentication" --domain security
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
**What to expect**: List of files containing your search term, sorted by relevance.
|
|
384
|
+
|
|
385
|
+
**Use it on**: Any topic you need to find in your documentation.
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
#### `hewtd report` - Generate Reports
|
|
390
|
+
|
|
391
|
+
**When to use**: Weekly metrics, stakeholder updates, or dashboards.
|
|
392
|
+
|
|
393
|
+
**What it does**: Creates comprehensive reports in markdown or JSON format.
|
|
394
|
+
|
|
395
|
+
**Examples**:
|
|
396
|
+
```bash
|
|
397
|
+
# Health report
|
|
398
|
+
hewtd report health
|
|
399
|
+
|
|
400
|
+
# Audit report
|
|
401
|
+
hewtd report audit
|
|
402
|
+
|
|
403
|
+
# Link topology report
|
|
404
|
+
hewtd report links
|
|
405
|
+
|
|
406
|
+
# JSON output for automation
|
|
407
|
+
hewtd report health --format json
|
|
408
|
+
```
|
|
409
|
+
|
|
410
|
+
**What to expect**: Detailed report saved to `.documentation/reports/` with scores, statistics, and recommendations.
|
|
411
|
+
|
|
412
|
+
**Use it on**: Your documentation system to get metrics and trends.
|
|
413
|
+
|
|
414
|
+
---
|
|
415
|
+
|
|
416
|
+
## Claude Code Integration
|
|
417
|
+
|
|
418
|
+
This tool works as a Claude Code plugin to help Claude understand and work with your documentation.
|
|
419
|
+
|
|
420
|
+
### Available Claude Commands
|
|
421
|
+
|
|
422
|
+
These commands can be used in conversation with Claude when the plugin is installed:
|
|
423
|
+
|
|
424
|
+
| Command | Description |
|
|
425
|
+
|---------|-------------|
|
|
426
|
+
| `/docs load <domain>` | Load a specific category of documentation |
|
|
427
|
+
| `/docs list` | Show all documentation categories |
|
|
428
|
+
| `/docs search <query>` | Search through documentation |
|
|
429
|
+
| `/docs stats` | Display documentation statistics |
|
|
430
|
+
| `/docs maintain` | Run maintenance checks |
|
|
431
|
+
|
|
432
|
+
### Setting Up Claude Integration
|
|
433
|
+
|
|
434
|
+
Create or update `.claude/CLAUDE.md` in your project:
|
|
435
|
+
|
|
436
|
+
```markdown
|
|
437
|
+
# Documentation System
|
|
438
|
+
|
|
439
|
+
This project uses hit-em-with-the-docs for documentation management.
|
|
440
|
+
|
|
441
|
+
## Available Documentation Commands
|
|
442
|
+
|
|
443
|
+
- `/docs load <domain>` - Load specific documentation domain
|
|
444
|
+
- `/docs list` - List all available domains
|
|
445
|
+
- `/docs search <query>` - Search documentation
|
|
446
|
+
- `/docs stats` - Show documentation statistics
|
|
447
|
+
- `/docs maintain` - Run documentation maintenance
|
|
448
|
+
|
|
449
|
+
## Documentation Structure
|
|
450
|
+
|
|
451
|
+
Documentation is organized into 15 domains:
|
|
452
|
+
- security: Authentication, authorization, security practices
|
|
453
|
+
- api: API endpoints and specifications
|
|
454
|
+
- database: Database schema and queries
|
|
455
|
+
- testing: Test strategies and patterns
|
|
456
|
+
- And 11 more specialized categories
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
### How to Use with Claude
|
|
460
|
+
|
|
461
|
+
**Loading documentation**:
|
|
462
|
+
```
|
|
463
|
+
You: /docs load security
|
|
464
|
+
Claude: [Loads all security-related documentation and can answer questions about it]
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
**Searching documentation**:
|
|
468
|
+
```
|
|
469
|
+
You: /docs search authentication
|
|
470
|
+
Claude: [Shows files containing "authentication"]
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
**Getting statistics**:
|
|
474
|
+
```
|
|
475
|
+
You: /docs stats
|
|
476
|
+
Claude: [Shows health score, document counts, recent updates]
|
|
477
|
+
```
|
|
478
|
+
|
|
479
|
+
**Running maintenance**:
|
|
480
|
+
```
|
|
481
|
+
You: /docs maintain
|
|
482
|
+
Claude: [Runs health check and reports issues]
|
|
483
|
+
```
|
|
484
|
+
|
|
485
|
+
**When to use these commands**:
|
|
486
|
+
- Use `/docs load` when asking Claude questions about specific topics
|
|
487
|
+
- Use `/docs search` to find existing documentation before writing new content
|
|
488
|
+
- Use `/docs stats` to check documentation health
|
|
489
|
+
- Use `/docs maintain` before committing changes
|
|
490
|
+
|
|
491
|
+
**What to expect**: Claude will have full context of your documentation and can answer questions, suggest improvements, or help maintain it.
|
|
492
|
+
|
|
493
|
+
---
|
|
494
|
+
|
|
495
|
+
## Common Workflows
|
|
496
|
+
|
|
497
|
+
### Daily Development
|
|
498
|
+
```bash
|
|
499
|
+
# Quick health check before committing
|
|
500
|
+
hewtd maintain --quick
|
|
501
|
+
```
|
|
502
|
+
|
|
503
|
+
### Adding New Documentation
|
|
504
|
+
```bash
|
|
505
|
+
# 1. Write your document
|
|
506
|
+
vim my-new-guide.md
|
|
507
|
+
|
|
508
|
+
# 2. Add it to the system
|
|
509
|
+
hewtd integrate my-new-guide.md
|
|
510
|
+
|
|
511
|
+
# 3. Quick check
|
|
512
|
+
hewtd maintain --quick --fix
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
### Weekly Maintenance
|
|
516
|
+
```bash
|
|
517
|
+
# Auto-fix all issues
|
|
518
|
+
hewtd maintain --quick --fix
|
|
519
|
+
|
|
520
|
+
# Review the report
|
|
521
|
+
cat .documentation/reports/maintenance-*.md
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
### Before Releasing
|
|
525
|
+
```bash
|
|
526
|
+
# 1. Full maintenance with link checking
|
|
527
|
+
hewtd maintain --fix
|
|
528
|
+
|
|
529
|
+
# 2. Generate health report
|
|
530
|
+
hewtd report health
|
|
531
|
+
|
|
532
|
+
# 3. Make sure score is above 80
|
|
533
|
+
# 4. Commit changes
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
### Migrating Existing Documentation
|
|
537
|
+
```bash
|
|
538
|
+
# 1. Create structure
|
|
539
|
+
hewtd init
|
|
540
|
+
|
|
541
|
+
# 2. Preview where files will go
|
|
542
|
+
for file in old-docs/*.md; do
|
|
543
|
+
hewtd integrate "$file" --dry-run
|
|
544
|
+
done
|
|
545
|
+
|
|
546
|
+
# 3. Integrate all files
|
|
547
|
+
for file in old-docs/*.md; do
|
|
548
|
+
hewtd integrate "$file" --auto
|
|
549
|
+
done
|
|
550
|
+
|
|
551
|
+
# 4. Run maintenance
|
|
552
|
+
hewtd maintain --fix
|
|
553
|
+
|
|
554
|
+
# 5. Check results
|
|
555
|
+
hewtd report health
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
---
|
|
559
|
+
|
|
560
|
+
## Technical Details
|
|
561
|
+
|
|
562
|
+
### Architecture Overview
|
|
563
|
+
|
|
564
|
+
The system is built with TypeScript and organized into several core modules:
|
|
565
|
+
|
|
566
|
+
```
|
|
567
|
+
src/
|
|
568
|
+
├── cli/ # Command-line interface
|
|
569
|
+
├── core/
|
|
570
|
+
│ ├── audit/ # Documentation quality auditing
|
|
571
|
+
│ ├── discover/ # Code pattern discovery
|
|
572
|
+
│ ├── domains/ # Domain classification system
|
|
573
|
+
│ ├── integrate/ # Document integration
|
|
574
|
+
│ ├── links/ # Link checking and tracking
|
|
575
|
+
│ ├── maintain/ # Maintenance orchestration
|
|
576
|
+
│ └── metadata/ # Metadata management
|
|
577
|
+
├── generators/ # Scaffold and template generation
|
|
578
|
+
├── reports/ # Report generation
|
|
579
|
+
└── utils/ # Shared utilities
|
|
580
|
+
```
|
|
581
|
+
|
|
582
|
+
### File Structure
|
|
583
|
+
|
|
584
|
+
**Root Documentation Files**:
|
|
585
|
+
- `INDEX.md` - Main navigation hub with links to all domains
|
|
586
|
+
- `REGISTRY.md` - Quick reference list of all documents
|
|
587
|
+
- `README.md` - Overview and getting started guide
|
|
588
|
+
|
|
589
|
+
**Domain Structure**:
|
|
590
|
+
Each of the 15 domains follows this pattern:
|
|
591
|
+
```
|
|
592
|
+
domain-name/
|
|
593
|
+
├── INDEX.md # Domain table of contents
|
|
594
|
+
├── REGISTRY.md # Quick reference for this domain
|
|
595
|
+
└── *.md # Individual documentation files
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
**Generated Files**:
|
|
599
|
+
```
|
|
600
|
+
.documentation/
|
|
601
|
+
├── reports/ # Health, audit, and link reports
|
|
602
|
+
│ ├── maintenance-YYYYMMDD-HHMMSS.md
|
|
603
|
+
│ ├── audit-YYYYMMDD-HHMMSS.md
|
|
604
|
+
│ └── links-YYYYMMDD-HHMMSS.md
|
|
605
|
+
└── drafts/ # Work-in-progress documents
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
### Domain System
|
|
609
|
+
|
|
610
|
+
The system organizes documentation into 15 specialized domains:
|
|
611
|
+
|
|
612
|
+
| Domain | Category | Priority | Description |
|
|
613
|
+
|--------|----------|----------|-------------|
|
|
614
|
+
| `standards` | development | 10 | Coding standards and conventions |
|
|
615
|
+
| `security` | core | 9 | Security, auth, encryption |
|
|
616
|
+
| `quickstart` | features | 9 | Setup and onboarding |
|
|
617
|
+
| `devops` | core | 8 | Deployment and infrastructure |
|
|
618
|
+
| `database` | core | 8 | Schema and queries |
|
|
619
|
+
| `api` | core | 8 | API endpoints and specs |
|
|
620
|
+
| `testing` | development | 7 | Test strategies and patterns |
|
|
621
|
+
| `architecture` | development | 7 | System design and patterns |
|
|
622
|
+
| `features` | features | 6 | Feature implementation guides |
|
|
623
|
+
| `procedures` | features | 6 | Step-by-step operations |
|
|
624
|
+
| `troubleshooting` | advanced | 6 | Debug guides and solutions |
|
|
625
|
+
| `workflows` | features | 5 | Process documentation |
|
|
626
|
+
| `agents` | advanced | 5 | AI agent documentation |
|
|
627
|
+
| `backups` | advanced | 4 | Backup and recovery |
|
|
628
|
+
| `plans` | advanced | 3 | Planning and roadmaps |
|
|
629
|
+
|
|
630
|
+
**Priority System**: Domains with higher priority (1-10 scale) are loaded first by Claude Code and other integrations.
|
|
631
|
+
|
|
632
|
+
**Categories**:
|
|
633
|
+
- `core`: Essential project infrastructure
|
|
634
|
+
- `development`: Development practices and patterns
|
|
635
|
+
- `features`: Feature-specific documentation
|
|
636
|
+
- `advanced`: Specialized or less-frequently accessed
|
|
637
|
+
|
|
638
|
+
### Metadata Schema
|
|
639
|
+
|
|
640
|
+
Every document includes YAML frontmatter with up to 22 fields:
|
|
641
|
+
|
|
642
|
+
**Required Fields**:
|
|
643
|
+
```yaml
|
|
644
|
+
title: "Document Title"
|
|
645
|
+
tier: guide|standard|example|reference|admin
|
|
646
|
+
domains: [primary-domain, secondary-domain]
|
|
647
|
+
status: draft|active|deprecated|archived
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
**Auto-Generated Fields**:
|
|
651
|
+
```yaml
|
|
652
|
+
word_count: 1234 # Calculated from content
|
|
653
|
+
estimated_read_time: "5 minutes" # Based on 200 words/minute
|
|
654
|
+
last_validated: '2024-01-15' # Date of last metadata sync
|
|
655
|
+
```
|
|
656
|
+
|
|
657
|
+
**Optional Fields**:
|
|
658
|
+
```yaml
|
|
659
|
+
# Discovery
|
|
660
|
+
purpose: "One-sentence description"
|
|
661
|
+
tags: [tag1, tag2, tag3]
|
|
662
|
+
audience: [developers|devops|admin|all]
|
|
663
|
+
related_docs: [./other-doc.md]
|
|
664
|
+
|
|
665
|
+
# Lifecycle
|
|
666
|
+
last_updated: '2024-01-15'
|
|
667
|
+
version: '1.0.0'
|
|
668
|
+
review_frequency: monthly|quarterly|annually
|
|
669
|
+
|
|
670
|
+
# Ownership
|
|
671
|
+
author: "Name"
|
|
672
|
+
maintainer: "Team Name"
|
|
673
|
+
|
|
674
|
+
# Implementation
|
|
675
|
+
implementation_status: planned|in_progress|complete
|
|
676
|
+
tested: true|false
|
|
677
|
+
production_ready: true|false
|
|
678
|
+
load_priority: 1-10
|
|
679
|
+
backlinks: [] # Auto-generated by link checker
|
|
680
|
+
```
|
|
681
|
+
|
|
682
|
+
### Classification Algorithm
|
|
683
|
+
|
|
684
|
+
The domain classifier uses keyword-based scoring with Levenshtein distance:
|
|
685
|
+
|
|
686
|
+
1. **Keyword Matching** (`src/core/domains/classifier.ts`):
|
|
687
|
+
- Extracts words from document title and content
|
|
688
|
+
- Scores each domain based on keyword matches
|
|
689
|
+
- Uses weighted scoring (title matches count more)
|
|
690
|
+
|
|
691
|
+
2. **Fuzzy Matching**:
|
|
692
|
+
- Uses Levenshtein distance for similar words
|
|
693
|
+
- Catches variations (e.g., "authenticate" matches "authentication")
|
|
694
|
+
- Configurable similarity threshold
|
|
695
|
+
|
|
696
|
+
3. **Confidence Scoring**:
|
|
697
|
+
- Returns confidence percentage for each domain
|
|
698
|
+
- Suggests top 3 matches
|
|
699
|
+
- Falls back to user selection if confidence is low
|
|
700
|
+
|
|
701
|
+
### Link Tracking
|
|
702
|
+
|
|
703
|
+
The link checker (`src/core/links/checker.ts`) maintains a topology map:
|
|
704
|
+
|
|
705
|
+
- Parses markdown links in all documents
|
|
706
|
+
- Resolves relative paths
|
|
707
|
+
- Tracks cross-domain references
|
|
708
|
+
- Builds backlink map
|
|
709
|
+
- Detects broken links and orphaned documents
|
|
710
|
+
|
|
711
|
+
### Maintenance Orchestrator
|
|
712
|
+
|
|
713
|
+
The maintenance system (`src/core/maintain/orchestrator.ts`) coordinates:
|
|
714
|
+
|
|
715
|
+
1. **Metadata Sync**: Updates frontmatter across all documents
|
|
716
|
+
2. **Link Check**: Validates internal links (optional in quick mode)
|
|
717
|
+
3. **Audit**: Checks naming conventions and file placement
|
|
718
|
+
4. **Report Generation**: Creates health score and detailed report
|
|
719
|
+
|
|
720
|
+
Health score calculation:
|
|
721
|
+
- Metadata completeness: 40%
|
|
722
|
+
- Link health: 30%
|
|
723
|
+
- Naming compliance: 20%
|
|
724
|
+
- File placement accuracy: 10%
|
|
725
|
+
|
|
726
|
+
### GitHub Action
|
|
727
|
+
|
|
728
|
+
The action (`src/action/index.ts`) wraps the CLI for GitHub workflows:
|
|
729
|
+
|
|
730
|
+
**Inputs**:
|
|
731
|
+
- `command`: CLI command to run
|
|
732
|
+
- `mode`: Execution mode (quick/full/fix)
|
|
733
|
+
- `docs-path`: Path to documentation
|
|
734
|
+
- `domain`: Specific domain filter
|
|
735
|
+
- `fail-on-error`: Exit code behavior
|
|
736
|
+
- `fail-threshold`: Minimum health score
|
|
737
|
+
|
|
738
|
+
**Outputs**:
|
|
739
|
+
- `health-score`: Overall quality (0-100)
|
|
740
|
+
- `total-documents`: Document count
|
|
741
|
+
- `issues-found`: Problem count
|
|
742
|
+
- `issues-fixed`: Auto-fixed count
|
|
743
|
+
- `broken-links`: Broken link count
|
|
744
|
+
- `metadata-compliance`: Metadata completeness %
|
|
745
|
+
- `report-path`: Generated report location
|
|
746
|
+
|
|
747
|
+
### Edge Cases and Handling
|
|
748
|
+
|
|
749
|
+
**Duplicate Documents**:
|
|
750
|
+
- Detected during integration
|
|
751
|
+
- User prompted to merge or keep separate
|
|
752
|
+
- Can force integration with `--force` flag
|
|
753
|
+
|
|
754
|
+
**Missing Metadata**:
|
|
755
|
+
- Auto-generated with sensible defaults
|
|
756
|
+
- Required fields must be provided
|
|
757
|
+
- Validation prevents invalid values
|
|
758
|
+
|
|
759
|
+
**Circular Links**:
|
|
760
|
+
- Detected but not flagged as errors
|
|
761
|
+
- Logged in link topology report
|
|
762
|
+
- Useful for navigation structures
|
|
763
|
+
|
|
764
|
+
**Large Files**:
|
|
765
|
+
- Configurable size limit (default: 50KB)
|
|
766
|
+
- Warning for oversized documents
|
|
767
|
+
- Suggest splitting into multiple files
|
|
768
|
+
|
|
769
|
+
**Non-Standard Domains**:
|
|
770
|
+
- Custom domains via configuration
|
|
771
|
+
- Must include keywords and description
|
|
772
|
+
- Integrated into classification system
|
|
773
|
+
|
|
774
|
+
**Empty Documents**:
|
|
775
|
+
- Flagged in audit
|
|
776
|
+
- Not counted in health score
|
|
777
|
+
- Suggested for removal or completion
|
|
778
|
+
|
|
779
|
+
### Configuration
|
|
780
|
+
|
|
781
|
+
Create `.hewtd.config.json` for customization:
|
|
782
|
+
|
|
783
|
+
```json
|
|
784
|
+
{
|
|
785
|
+
"docsPath": ".documentation",
|
|
786
|
+
"domains": {
|
|
787
|
+
"custom-domain": {
|
|
788
|
+
"description": "Custom domain description",
|
|
789
|
+
"keywords": ["keyword1", "keyword2"],
|
|
790
|
+
"loadPriority": 5,
|
|
791
|
+
"category": "features"
|
|
792
|
+
}
|
|
793
|
+
},
|
|
794
|
+
"metadata": {
|
|
795
|
+
"requiredFields": ["title", "tier", "domains", "status"],
|
|
796
|
+
"autoGenerate": ["word_count", "estimated_read_time", "last_validated"]
|
|
797
|
+
},
|
|
798
|
+
"audit": {
|
|
799
|
+
"namingConvention": "kebab-case",
|
|
800
|
+
"maxFileSize": 50000,
|
|
801
|
+
"allowedTiers": ["guide", "standard", "example", "reference", "admin"]
|
|
802
|
+
},
|
|
803
|
+
"discover": {
|
|
804
|
+
"excludePaths": ["node_modules", "dist", "vendor", ".git"],
|
|
805
|
+
"languages": ["typescript", "javascript", "python", "go"],
|
|
806
|
+
"patterns": {
|
|
807
|
+
"enabled": true,
|
|
808
|
+
"minOccurrences": 2
|
|
809
|
+
}
|
|
810
|
+
},
|
|
811
|
+
"links": {
|
|
812
|
+
"checkExternal": false,
|
|
813
|
+
"ignorePatterns": ["http://localhost", "*.example.com"]
|
|
814
|
+
},
|
|
815
|
+
"reports": {
|
|
816
|
+
"outputPath": ".documentation/reports",
|
|
817
|
+
"format": "markdown",
|
|
818
|
+
"includeTimestamp": true
|
|
819
|
+
}
|
|
820
|
+
}
|
|
821
|
+
```
|
|
822
|
+
|
|
823
|
+
### Performance Considerations
|
|
824
|
+
|
|
825
|
+
**Large Repositories**:
|
|
826
|
+
- Uses streaming for file reads
|
|
827
|
+
- Parallel processing where possible
|
|
828
|
+
- Configurable concurrency limits
|
|
829
|
+
- Quick mode skips expensive operations
|
|
830
|
+
|
|
831
|
+
**Memory Usage**:
|
|
832
|
+
- Metadata cached in memory during operations
|
|
833
|
+
- Link topology built incrementally
|
|
834
|
+
- Reports streamed to disk
|
|
835
|
+
|
|
836
|
+
**CI/CD Optimization**:
|
|
837
|
+
- Quick mode recommended for frequent checks
|
|
838
|
+
- Full mode for scheduled/release checks
|
|
839
|
+
- Use `fail-threshold` to allow gradual improvement
|
|
840
|
+
|
|
841
|
+
---
|
|
842
|
+
|
|
843
|
+
## Requirements
|
|
844
|
+
|
|
845
|
+
- Node.js >= 20.0.0
|
|
846
|
+
- npm or yarn
|
|
847
|
+
- Git (for GitHub Action)
|
|
848
|
+
|
|
849
|
+
## Contributing
|
|
850
|
+
|
|
851
|
+
Contributions are welcome! Please read our [Contributing Guide](CONTRIBUTING.md) for details on:
|
|
852
|
+
- Setting up development environment
|
|
853
|
+
- Running tests
|
|
854
|
+
- Code style guidelines
|
|
855
|
+
- Submitting pull requests
|
|
856
|
+
|
|
857
|
+
## License
|
|
858
|
+
|
|
859
|
+
MIT - see [LICENSE](LICENSE) for details.
|
|
860
|
+
|
|
861
|
+
## Support
|
|
862
|
+
|
|
863
|
+
- **Issues**: [GitHub Issues](https://github.com/TheGlitchKing/hit-em-with-the-docs/issues)
|
|
864
|
+
- **Discussions**: [GitHub Discussions](https://github.com/TheGlitchKing/hit-em-with-the-docs/discussions)
|
|
865
|
+
- **Documentation**: This README and `.documentation/` in your project
|
|
866
|
+
|
|
867
|
+
## Changelog
|
|
868
|
+
|
|
869
|
+
See [releases](https://github.com/TheGlitchKing/hit-em-with-the-docs/releases) for version history and changes.
|