documentation-hub 5.7.2
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/.eslintrc.json +43 -0
- package/.github/workflows/build.yml +64 -0
- package/.github/workflows/ci.yml +39 -0
- package/.vscode/extensions.json +3 -0
- package/Current.md +97 -0
- package/DocHub_Image.png +0 -0
- package/README.md +666 -0
- package/USER_GUIDE.md +1173 -0
- package/Updater.md +311 -0
- package/build/256x256.png +0 -0
- package/build/512x512.png +0 -0
- package/build/app-update.yml +4 -0
- package/build/create-icon.js +208 -0
- package/build/icon.ico +0 -0
- package/build/icon.png +0 -0
- package/build/icon_1024x1024.png +0 -0
- package/dist/assets/Analytics-BpsG9895.js +1 -0
- package/dist/assets/Card-IAZin8kp.js +1 -0
- package/dist/assets/CurrentSession-B-rFkHvf.js +12 -0
- package/dist/assets/Dashboard-C_5gMb0q.js +1 -0
- package/dist/assets/Documents-CqZ25axS.js +1 -0
- package/dist/assets/Input-l89xwXBi.js +1 -0
- package/dist/assets/Reporting-DqdHJY_a.js +1 -0
- package/dist/assets/Search-XNbu5z_3.js +1 -0
- package/dist/assets/SessionManager-lH9hZfzH.js +1 -0
- package/dist/assets/Sessions-ClZOPYNc.js +1 -0
- package/dist/assets/Settings-DUEHGURa.js +11 -0
- package/dist/assets/index-8xUe8ptc.js +24 -0
- package/dist/assets/index-RYyJqF7O.css +1 -0
- package/dist/assets/path-BkOl0AGO.js +1 -0
- package/dist/assets/promises-ID_B9S-h.js +1 -0
- package/dist/assets/urlHelpers-TvgahX0r.js +1 -0
- package/dist/assets/useToast-yRSO1dkm.js +1 -0
- package/dist/assets/vendor-charts-RkGK5ROP.js +36 -0
- package/dist/assets/vendor-db-l0sNRNKZ.js +1 -0
- package/dist/assets/vendor-react-BVZ_anCF.js +4 -0
- package/dist/assets/vendor-search-Dw8P0qyA.js +1 -0
- package/dist/assets/vendor-ui-BU7NfluV.js +53 -0
- package/dist/electron/PowerAutomateApiService-LfW09ZGr.js +147 -0
- package/dist/electron/main-CXkNtyv-.js +19789 -0
- package/dist/electron/main.js +5 -0
- package/dist/electron/preload.js +1 -0
- package/dist/icon.png +0 -0
- package/dist/index.html +27 -0
- package/docs/CODEBASE_ANALYSIS_REPORT.md +309 -0
- package/docs/DEBUG_LOGGING_GUIDE.md +244 -0
- package/docs/README.md +115 -0
- package/docs/TOC_WIRING_GUIDE.md +344 -0
- package/docs/analysis/Bullet_Symbol_Bug_Analysis.md +136 -0
- package/docs/analysis/DOCXMLATER_ANALYSIS_SUMMARY.txt +169 -0
- package/docs/analysis/Document_Processing_Issues_Analysis.md +704 -0
- package/docs/analysis/FIELD_PRESERVATION_ANALYSIS.md +1200 -0
- package/docs/analysis/INDENTATION_PRESERVE_ANALYSIS.md +181 -0
- package/docs/analysis/INDENTATION_PRESERVE_IMPLEMENTATION.md +207 -0
- package/docs/analysis/List_Implementation.md +206 -0
- package/docs/analysis/List_Implementation_Accuracy_Report.md +366 -0
- package/docs/analysis/PROCESSING_OPTIONS_UI_UPDATES.md +220 -0
- package/docs/analysis/RefactorStyles.md +852 -0
- package/docs/analysis/STYLE_PARAMETER_ENHANCEMENT.md +143 -0
- package/docs/analysis/docxmlater-comparison-todo-2025-11-13.md +636 -0
- package/docs/analysis/docxmlater-implementation-analysis-2025-11-13.md +340 -0
- package/docs/analysis/docxmlater-template_ui-integration-analysis.md +263 -0
- package/docs/analysis/github-issues-to-create.md +237 -0
- package/docs/api/API_README.md +538 -0
- package/docs/api/API_REFERENCE.md +751 -0
- package/docs/api/TYPE_DEFINITIONS.md +869 -0
- package/docs/architecture/FONT_EMBEDDING_GUIDE.md +318 -0
- package/docs/architecture/docxmlater-functions-and-structure.md +726 -0
- package/docs/docxmlater-readme.md +1341 -0
- package/docs/fixes/EXECUTION_LOG_TEST_BASE.md +573 -0
- package/docs/fixes/HYPERLINK_TEXT_SANITIZATION.md +253 -0
- package/docs/fixes/README.md +37 -0
- package/docs/github-issues/issue-1-body.md +125 -0
- package/docs/github-issues/issue-10-body.md +850 -0
- package/docs/github-issues/issue-2-body.md +200 -0
- package/docs/github-issues/issue-3-body.md +270 -0
- package/docs/github-issues/issue-4-body.md +169 -0
- package/docs/github-issues/issue-5-body.md +173 -0
- package/docs/github-issues/issue-6-body.md +158 -0
- package/docs/github-issues/issue-7-body.md +171 -0
- package/docs/github-issues/issue-8-body.md +407 -0
- package/docs/github-issues/issue-9-body.md +515 -0
- package/docs/github-issues/issue-tracker.md +274 -0
- package/docs/github-issues/predictive-analysis-2025-10-18.md +2131 -0
- package/docs/implementation/List_Framework_Refactor_Plan.md +336 -0
- package/docs/implementation/PRIMARY_TEXT_COLOR_FEATURE.md +217 -0
- package/docs/implementation/RELEASE_PLAN_v2.1.0.md +362 -0
- package/docs/implementation/RefactorStyles.md +588 -0
- package/docs/implementation/implement-plan.md +489 -0
- package/docs/implementation/missing-helpers-implementation.md +391 -0
- package/docs/implementation/refactor-plan.md +520 -0
- package/docs/implementation/session-implementation-complete.md +233 -0
- package/docs/implementation/session-management-plan.md +250 -0
- package/docs/setup-checklist.md +77 -0
- package/docs/versions/changelog.md +345 -0
- package/electron/customUpdater.ts +656 -0
- package/electron/main.ts +2441 -0
- package/electron/memoryConfig.ts +187 -0
- package/electron/preload.ts +394 -0
- package/electron/proxyConfig.ts +340 -0
- package/electron/services/BackupService.ts +452 -0
- package/electron/services/DictionaryService.ts +402 -0
- package/electron/services/LocalDictionaryLookupService.ts +147 -0
- package/electron/services/PowerAutomateApiService.ts +231 -0
- package/electron/services/SharePointSyncService.ts +474 -0
- package/electron/windowsCertStore.ts +427 -0
- package/electron/zscalerConfig.ts +381 -0
- package/eslint.config.js +92 -0
- package/jest.config.js +52 -0
- package/package.json +214 -0
- package/postcss.config.mjs +6 -0
- package/public/icon.png +0 -0
- package/publish-release.ps1 +5 -0
- package/renovate.json +30 -0
- package/src/App.tsx +216 -0
- package/src/__mocks__/p-limit.js +12 -0
- package/src/__mocks__/styleMock.js +1 -0
- package/src/components/common/BugReportButton.tsx +44 -0
- package/src/components/common/BugReportDialog.tsx +193 -0
- package/src/components/common/Button.tsx +153 -0
- package/src/components/common/Card.tsx +86 -0
- package/src/components/common/ColorPickerDialog.tsx +177 -0
- package/src/components/common/ConfirmDialog.tsx +96 -0
- package/src/components/common/DebugConsole.tsx +275 -0
- package/src/components/common/EmptyState.tsx +183 -0
- package/src/components/common/ErrorBoundary.tsx +98 -0
- package/src/components/common/ErrorDetailsDialog.tsx +153 -0
- package/src/components/common/ErrorFallback.tsx +218 -0
- package/src/components/common/Input.tsx +109 -0
- package/src/components/common/Skeleton.tsx +184 -0
- package/src/components/common/SplashScreen.tsx +81 -0
- package/src/components/common/Toast.tsx +155 -0
- package/src/components/common/Tooltip.tsx +79 -0
- package/src/components/common/UpdateNotification.tsx +320 -0
- package/src/components/comparison/ComparisonWindow.tsx +374 -0
- package/src/components/comparison/SideBySideDiff.tsx +486 -0
- package/src/components/comparison/index.ts +8 -0
- package/src/components/document/DocumentUploader.tsx +288 -0
- package/src/components/document/HyperlinkPreview.tsx +430 -0
- package/src/components/document/HyperlinkService.md +1484 -0
- package/src/components/document/Hyperlink_Technical_Documentation.md +496 -0
- package/src/components/document/InlineChangesView.tsx +707 -0
- package/src/components/document/ProcessingProgress.tsx +303 -0
- package/src/components/document/ProcessingResults.tsx +256 -0
- package/src/components/document/TrackedChangesDetail.tsx +530 -0
- package/src/components/document/TrackedChangesPanel.tsx +546 -0
- package/src/components/document/VirtualDocumentList.tsx +240 -0
- package/src/components/editor/DocumentEditor.tsx +723 -0
- package/src/components/editor/DocumentEditorModal.tsx +640 -0
- package/src/components/editor/EditorQuickActions.tsx +502 -0
- package/src/components/editor/EditorToolbar.tsx +312 -0
- package/src/components/editor/TableEditor.tsx +926 -0
- package/src/components/editor/index.ts +18 -0
- package/src/components/layout/Header.tsx +190 -0
- package/src/components/layout/Sidebar.tsx +313 -0
- package/src/components/layout/TitleBar.tsx +190 -0
- package/src/components/navigation/CommandPalette.tsx +233 -0
- package/src/components/navigation/KeyboardShortcutsModal.tsx +173 -0
- package/src/components/sessions/ChangeItem.tsx +408 -0
- package/src/components/sessions/ChangeViewer.tsx +1155 -0
- package/src/components/sessions/DocumentComparisonModal.tsx +314 -0
- package/src/components/sessions/ProcessingOptions.tsx +297 -0
- package/src/components/sessions/ReplacementsTab.tsx +438 -0
- package/src/components/sessions/RevisionHandlingOptions.tsx +87 -0
- package/src/components/sessions/SessionManager.tsx +188 -0
- package/src/components/sessions/StylesEditor.tsx +1335 -0
- package/src/components/sessions/TabContainer.tsx +151 -0
- package/src/components/sessions/VirtualSessionList.tsx +157 -0
- package/src/components/sessions/sessionToProcessorManager.tsx +420 -0
- package/src/components/settings/CertificateManager.tsx +410 -0
- package/src/components/settings/SegmentedControl.tsx +88 -0
- package/src/components/settings/SettingRow.tsx +52 -0
- package/src/contexts/GlobalStatsContext.tsx +396 -0
- package/src/contexts/SessionContext.tsx +2129 -0
- package/src/contexts/ThemeContext.tsx +428 -0
- package/src/contexts/UserSettingsContext.tsx +290 -0
- package/src/contexts/__tests__/GlobalStatsContext.test.tsx +390 -0
- package/src/global.d.ts +273 -0
- package/src/hooks/useDocumentQueue.tsx +210 -0
- package/src/hooks/useToast.tsx +55 -0
- package/src/main.tsx +10 -0
- package/src/pages/Analytics.tsx +386 -0
- package/src/pages/CurrentSession.tsx +1174 -0
- package/src/pages/Dashboard.tsx +319 -0
- package/src/pages/Documents.tsx +317 -0
- package/src/pages/Projects.tsx +250 -0
- package/src/pages/Reporting.tsx +386 -0
- package/src/pages/Search.tsx +349 -0
- package/src/pages/Sessions.tsx +285 -0
- package/src/pages/Settings.tsx +2662 -0
- package/src/services/HyperlinkService.ts +1085 -0
- package/src/services/document/DocXMLaterProcessor.ts +617 -0
- package/src/services/document/DocumentProcessingComparison.ts +856 -0
- package/src/services/document/DocumentSnapshotService.ts +575 -0
- package/src/services/document/WordDocumentProcessor.ts +10509 -0
- package/src/services/document/__tests__/DocXMLaterProcessor.hyperlinks.test.md +311 -0
- package/src/services/document/__tests__/WordDocumentProcessor.integration.test.ts +515 -0
- package/src/services/document/__tests__/WordDocumentProcessor.test.ts +812 -0
- package/src/services/document/blanklines/BlankLineManager.ts +658 -0
- package/src/services/document/blanklines/__tests__/paragraphChecks.test.ts +281 -0
- package/src/services/document/blanklines/helpers/blankLineInsertion.ts +87 -0
- package/src/services/document/blanklines/helpers/blankLineSnapshot.ts +251 -0
- package/src/services/document/blanklines/helpers/clearCustom.ts +121 -0
- package/src/services/document/blanklines/helpers/contextChecks.ts +117 -0
- package/src/services/document/blanklines/helpers/imageChecks.ts +51 -0
- package/src/services/document/blanklines/helpers/paragraphChecks.ts +236 -0
- package/src/services/document/blanklines/helpers/removeBlanksBetweenListItems.ts +91 -0
- package/src/services/document/blanklines/helpers/removeTrailingBlanks.ts +35 -0
- package/src/services/document/blanklines/helpers/tableGuards.ts +21 -0
- package/src/services/document/blanklines/index.ts +67 -0
- package/src/services/document/blanklines/rules/additionRules.ts +337 -0
- package/src/services/document/blanklines/rules/indentationRules.ts +317 -0
- package/src/services/document/blanklines/rules/removalRules.ts +362 -0
- package/src/services/document/blanklines/rules/ruleTypes.ts +92 -0
- package/src/services/document/blanklines/types.ts +29 -0
- package/src/services/document/helpers/ImageBorderCropper.ts +377 -0
- package/src/services/document/helpers/__tests__/whitespace.test.ts +272 -0
- package/src/services/document/helpers/whitespace.ts +117 -0
- package/src/services/document/list/ListNormalizer.ts +947 -0
- package/src/services/document/list/index.ts +45 -0
- package/src/services/document/list/list-detection.ts +275 -0
- package/src/services/document/list/list-types.ts +162 -0
- package/src/services/document/processors/HyperlinkProcessor.ts +370 -0
- package/src/services/document/processors/ListProcessor.ts +257 -0
- package/src/services/document/processors/StructureProcessor.ts +176 -0
- package/src/services/document/processors/StyleProcessor.ts +389 -0
- package/src/services/document/processors/TableProcessor.ts +2238 -0
- package/src/services/document/processors/__tests__/HyperlinkProcessor.test.ts +314 -0
- package/src/services/document/processors/__tests__/ListProcessor.test.ts +291 -0
- package/src/services/document/processors/__tests__/StructureProcessor.test.ts +257 -0
- package/src/services/document/processors/__tests__/TableProcessor.hlp-tips-bullets.test.ts +459 -0
- package/src/services/document/processors/__tests__/TableProcessor.test.ts +1604 -0
- package/src/services/document/processors/index.ts +28 -0
- package/src/services/document/types/docx-processing.ts +310 -0
- package/src/services/editor/EditorActionHandlers.ts +901 -0
- package/src/services/editor/index.ts +13 -0
- package/src/setupTests.ts +47 -0
- package/src/styles/global.css +782 -0
- package/src/types/backup.ts +132 -0
- package/src/types/dictionary.ts +125 -0
- package/src/types/document-processing.ts +331 -0
- package/src/types/docxmlater-augments.d.ts +142 -0
- package/src/types/editor.ts +280 -0
- package/src/types/electron.ts +340 -0
- package/src/types/globalStats.ts +155 -0
- package/src/types/hyperlink.ts +471 -0
- package/src/types/operations.ts +354 -0
- package/src/types/session.ts +427 -0
- package/src/types/settings.ts +112 -0
- package/src/utils/MemoryMonitor.ts +248 -0
- package/src/utils/cn.ts +6 -0
- package/src/utils/colorConvert.ts +306 -0
- package/src/utils/diffUtils.ts +347 -0
- package/src/utils/documentUtils.ts +202 -0
- package/src/utils/electronGuard.ts +62 -0
- package/src/utils/indexedDB.ts +915 -0
- package/src/utils/logger.ts +717 -0
- package/src/utils/pathSecurity.ts +232 -0
- package/src/utils/pathValidator.ts +236 -0
- package/src/utils/processingTimeEstimator.ts +153 -0
- package/src/utils/safeJsonParse.ts +62 -0
- package/src/utils/textSanitizer.ts +162 -0
- package/src/utils/urlHelpers.ts +304 -0
- package/src/utils/urlPatterns.ts +198 -0
- package/src/utils/urlSanitizer.ts +152 -0
- package/src/vite-env.d.ts +11 -0
- package/tsconfig.electron.json +19 -0
- package/tsconfig.json +36 -0
- package/tsconfig.node.json +12 -0
- package/typedoc.json +45 -0
- package/vite.config.ts +152 -0
package/README.md
ADDED
|
@@ -0,0 +1,666 @@
|
|
|
1
|
+
# Documentation Hub
|
|
2
|
+
|
|
3
|
+
A modern desktop application for managing document processing workflows with advanced hyperlink management, table of contents generation, and comprehensive document styling capabilities.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
Documentation Hub is a professional-grade Electron desktop application designed to streamline document processing tasks. Built with TypeScript, React, and modern web technologies, it provides a polished interface for managing multiple document processing sessions with powerful customization options.
|
|
8
|
+
|
|
9
|
+
## Core Features
|
|
10
|
+
|
|
11
|
+
### Session-Based Workflow
|
|
12
|
+
|
|
13
|
+
Organize your document processing tasks into sessions, each maintaining its own configuration, documents, and processing history. Sessions persist across application restarts and can be resumed at any time.
|
|
14
|
+
|
|
15
|
+
**Key Capabilities:**
|
|
16
|
+
|
|
17
|
+
- Create unlimited processing sessions with custom names
|
|
18
|
+
- Add multiple Word documents (.docx) to each session
|
|
19
|
+
- Track processing status for each document
|
|
20
|
+
- Maintain separate configurations per session
|
|
21
|
+
- View processing statistics and time saved
|
|
22
|
+
- Close and archive completed sessions
|
|
23
|
+
|
|
24
|
+
### Document Processing
|
|
25
|
+
|
|
26
|
+
Comprehensive document processing with support for multiple operations:
|
|
27
|
+
|
|
28
|
+
**Hyperlink Management:**
|
|
29
|
+
|
|
30
|
+
- Process and validate hyperlinks within documents
|
|
31
|
+
- Append custom content IDs to hyperlink URLs
|
|
32
|
+
- Distinguish between internal and external links
|
|
33
|
+
- Batch process multiple documents simultaneously
|
|
34
|
+
- Validate URL accessibility
|
|
35
|
+
- Automatic backup creation before processing
|
|
36
|
+
|
|
37
|
+
**Table of Contents Generation:**
|
|
38
|
+
|
|
39
|
+
- Generate custom table of contents with configurable heading levels
|
|
40
|
+
- Choose which heading levels to include (1-6)
|
|
41
|
+
- Enable or disable page numbers
|
|
42
|
+
- Right-align page numbers option
|
|
43
|
+
- Convert entries to clickable hyperlinks
|
|
44
|
+
- Customize tab leader style (none, dots, dashes, underline)
|
|
45
|
+
- Configure spacing between TOC entries
|
|
46
|
+
- Toggle TOC title visibility
|
|
47
|
+
- Custom TOC title text
|
|
48
|
+
|
|
49
|
+
**Table Uniformity:**
|
|
50
|
+
|
|
51
|
+
- Apply consistent formatting across all tables
|
|
52
|
+
- Configure border styles (single, double, dashed, or none)
|
|
53
|
+
- Set uniform border widths
|
|
54
|
+
- Bold and shade header rows
|
|
55
|
+
- Enable alternating row colors
|
|
56
|
+
- Adjust cell padding
|
|
57
|
+
- Auto-fit to content or window width
|
|
58
|
+
- Special formatting for Header 2 in 1x1 cells (custom shading and alignment)
|
|
59
|
+
- Dedicated large table styling (font, size, formatting, alignment)
|
|
60
|
+
- Conditional application based on patterns (If...Then detection)
|
|
61
|
+
- Apply formatting to top rows automatically
|
|
62
|
+
|
|
63
|
+
**List Bullet Formatting:**
|
|
64
|
+
|
|
65
|
+
- Configure indentation levels (up to 5 levels)
|
|
66
|
+
- Set custom bullet characters per level
|
|
67
|
+
- Define numbered list formats
|
|
68
|
+
- Adjust spacing between list items
|
|
69
|
+
- Maintain consistent indentation across documents
|
|
70
|
+
|
|
71
|
+
### Text Replacement Rules
|
|
72
|
+
|
|
73
|
+
Create and manage text replacement rules for consistent document formatting:
|
|
74
|
+
|
|
75
|
+
- Define find-and-replace patterns
|
|
76
|
+
- Support for regular expressions
|
|
77
|
+
- Case-sensitive matching options
|
|
78
|
+
- Apply rules across all documents in a session
|
|
79
|
+
- Enable or disable individual rules
|
|
80
|
+
- Bulk edit multiple replacement rules
|
|
81
|
+
|
|
82
|
+
### Style Management
|
|
83
|
+
|
|
84
|
+
Customize document styles with comprehensive formatting options:
|
|
85
|
+
|
|
86
|
+
**Supported Styles:**
|
|
87
|
+
|
|
88
|
+
- Normal text
|
|
89
|
+
- Header 1 through Header 6
|
|
90
|
+
- Custom style definitions
|
|
91
|
+
|
|
92
|
+
**Formatting Controls:**
|
|
93
|
+
|
|
94
|
+
- Font family selection
|
|
95
|
+
- Font size (points)
|
|
96
|
+
- Bold, italic, and underline toggles
|
|
97
|
+
- Text alignment (left, center, right, justify)
|
|
98
|
+
- Text color with visual picker
|
|
99
|
+
- Spacing before paragraph (points)
|
|
100
|
+
- Spacing after paragraph (points)
|
|
101
|
+
|
|
102
|
+
### Tracked Changes Visualization
|
|
103
|
+
|
|
104
|
+
View detailed before-and-after comparisons of document modifications:
|
|
105
|
+
|
|
106
|
+
- Side-by-side diff view of changes
|
|
107
|
+
- Color-coded additions (green) and removals (red)
|
|
108
|
+
- Line-by-line change tracking
|
|
109
|
+
- Export changes to review
|
|
110
|
+
- Track hyperlink modifications
|
|
111
|
+
- Monitor style changes
|
|
112
|
+
- Record structural alterations
|
|
113
|
+
|
|
114
|
+
### Advanced Theming
|
|
115
|
+
|
|
116
|
+
Fully customizable user interface with extensive theming options:
|
|
117
|
+
|
|
118
|
+
**Theme Modes:**
|
|
119
|
+
|
|
120
|
+
- Light mode
|
|
121
|
+
- Dark mode
|
|
122
|
+
- Automatic theme switching based on time
|
|
123
|
+
|
|
124
|
+
**Customization Options:**
|
|
125
|
+
|
|
126
|
+
- Custom accent colors with visual picker
|
|
127
|
+
- 24 preset color options (8 per row)
|
|
128
|
+
- Custom primary, background, and foreground colors
|
|
129
|
+
- Header and sidebar color customization
|
|
130
|
+
- Border color adjustments
|
|
131
|
+
- Secondary font color configuration
|
|
132
|
+
- Glass morphism effects with backdrop blur
|
|
133
|
+
- Smooth theme transitions
|
|
134
|
+
|
|
135
|
+
### Typography System
|
|
136
|
+
|
|
137
|
+
Comprehensive typography controls for optimal readability:
|
|
138
|
+
|
|
139
|
+
- Main text font family (system-ui, Inter, Roboto, etc.)
|
|
140
|
+
- Font size with slider (12-24px)
|
|
141
|
+
- Font weight (Light, Regular, Medium, Semibold, Bold)
|
|
142
|
+
- Font style (Normal, Italic)
|
|
143
|
+
- Letter spacing adjustment (-0.05em to 0.2em)
|
|
144
|
+
- Line height configuration (1.0 to 2.5)
|
|
145
|
+
- Secondary text font customization
|
|
146
|
+
- Real-time preview of changes
|
|
147
|
+
|
|
148
|
+
### Density Modes
|
|
149
|
+
|
|
150
|
+
Optimize screen real estate with three density modes:
|
|
151
|
+
|
|
152
|
+
- **Comfortable** - Generous spacing for relaxed reading
|
|
153
|
+
- **Compact** - Reduced spacing for more content visibility
|
|
154
|
+
- **Minimal** - Maximum content density for power users
|
|
155
|
+
|
|
156
|
+
### Statistics and Analytics
|
|
157
|
+
|
|
158
|
+
Track your productivity with comprehensive statistics:
|
|
159
|
+
|
|
160
|
+
- Total documents processed
|
|
161
|
+
- Total hyperlinks checked and modified
|
|
162
|
+
- Time saved calculations (101 seconds per hyperlink average)
|
|
163
|
+
- Processing duration per document
|
|
164
|
+
- Success and error rates
|
|
165
|
+
- Session-level metrics
|
|
166
|
+
- Cross-session aggregation
|
|
167
|
+
|
|
168
|
+
### User Experience Enhancements
|
|
169
|
+
|
|
170
|
+
**Interface Polish:**
|
|
171
|
+
|
|
172
|
+
- Custom frameless window with native controls
|
|
173
|
+
- Collapsible sidebar with icon-only mode
|
|
174
|
+
- Clickable breadcrumb navigation
|
|
175
|
+
- Real-time clock display
|
|
176
|
+
- Command palette (Ctrl/Cmd+K) for quick actions
|
|
177
|
+
- Smooth animations powered by Framer Motion
|
|
178
|
+
- Loading skeletons instead of spinners
|
|
179
|
+
- Success animations for save actions
|
|
180
|
+
- Responsive layout for different screen sizes
|
|
181
|
+
|
|
182
|
+
**Accessibility:**
|
|
183
|
+
|
|
184
|
+
- WCAG 2.1 AA compliant
|
|
185
|
+
- Full keyboard navigation support
|
|
186
|
+
- Screen reader compatibility
|
|
187
|
+
- High contrast mode support
|
|
188
|
+
- Reduced motion preferences respected
|
|
189
|
+
- Proper ARIA labels throughout
|
|
190
|
+
|
|
191
|
+
**File Management:**
|
|
192
|
+
|
|
193
|
+
- Open file location in system explorer
|
|
194
|
+
- Drag and drop document upload
|
|
195
|
+
- Multi-file selection support
|
|
196
|
+
- Document status indicators
|
|
197
|
+
- Automatic backup creation
|
|
198
|
+
- Error handling with recovery options
|
|
199
|
+
|
|
200
|
+
## Technology Stack
|
|
201
|
+
|
|
202
|
+
- **Framework:** Electron 39 with React 19
|
|
203
|
+
- **Language:** TypeScript 5.9 with strict mode
|
|
204
|
+
- **Build Tool:** Vite 7
|
|
205
|
+
- **Styling:** Tailwind CSS 3.4
|
|
206
|
+
- **Animations:** Framer Motion 12
|
|
207
|
+
- **UI Components:** Radix UI primitives
|
|
208
|
+
- **Document Processing:** DocXMLater 10.1 (type-safe OOXML processing)
|
|
209
|
+
- **State Management:** React Context with Zustand
|
|
210
|
+
- **Data Persistence:** IndexedDB for sessions, LocalStorage for settings
|
|
211
|
+
- **Command Palette:** cmdk library
|
|
212
|
+
- **Icons:** Lucide React
|
|
213
|
+
|
|
214
|
+
## System Requirements
|
|
215
|
+
|
|
216
|
+
- **Operating System:**
|
|
217
|
+
- Windows 10 or later
|
|
218
|
+
- macOS 10.14 (Mojave) or later
|
|
219
|
+
- Ubuntu 18.04 or later (or equivalent Linux distribution)
|
|
220
|
+
|
|
221
|
+
- **Hardware:**
|
|
222
|
+
- Minimum 4GB RAM (8GB recommended)
|
|
223
|
+
- 500MB available disk space
|
|
224
|
+
- 1280x720 minimum screen resolution
|
|
225
|
+
|
|
226
|
+
- **Software:**
|
|
227
|
+
- Microsoft Word document support (.docx files)
|
|
228
|
+
- Internet connection for update checks (optional)
|
|
229
|
+
|
|
230
|
+
## Installation
|
|
231
|
+
|
|
232
|
+
### Windows
|
|
233
|
+
|
|
234
|
+
**Installer (Recommended):**
|
|
235
|
+
|
|
236
|
+
```powershell
|
|
237
|
+
# Download and install using PowerShell
|
|
238
|
+
iwr https://raw.githubusercontent.com/ItMeDiaTech/Documentation_Hub/master/install.ps1 | iex
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
**Manual Installation:**
|
|
242
|
+
|
|
243
|
+
1. Download the latest `.exe` installer from the [Releases](https://github.com/ItMeDiaTech/Documentation_Hub/releases) page
|
|
244
|
+
2. Run the installer
|
|
245
|
+
3. Choose installation directory (defaults to `%LOCALAPPDATA%\Programs\Documentation Hub`)
|
|
246
|
+
4. Follow the installation wizard
|
|
247
|
+
5. Launch Documentation Hub from the Start Menu or desktop shortcut
|
|
248
|
+
|
|
249
|
+
No administrator rights required - installs to user directory.
|
|
250
|
+
|
|
251
|
+
### macOS
|
|
252
|
+
|
|
253
|
+
**Installer:**
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
# Download and install using curl
|
|
257
|
+
curl -fsSL https://raw.githubusercontent.com/ItMeDiaTech/Documentation_Hub/master/install.sh | bash
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
**Manual Installation:**
|
|
261
|
+
|
|
262
|
+
1. Download the latest `.dmg` file from the [Releases](https://github.com/ItMeDiaTech/Documentation_Hub/releases) page
|
|
263
|
+
2. Open the DMG file
|
|
264
|
+
3. Drag Documentation Hub to your Applications folder
|
|
265
|
+
4. Launch from Applications
|
|
266
|
+
|
|
267
|
+
### Linux
|
|
268
|
+
|
|
269
|
+
**AppImage:**
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
# Download and run
|
|
273
|
+
curl -fsSL https://raw.githubusercontent.com/ItMeDiaTech/Documentation_Hub/master/install.sh | bash
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
**Manual Installation:**
|
|
277
|
+
|
|
278
|
+
1. Download the latest `.AppImage` from the [Releases](https://github.com/ItMeDiaTech/Documentation_Hub/releases) page
|
|
279
|
+
2. Make it executable: `chmod +x Documentation-Hub-*.AppImage`
|
|
280
|
+
3. Run: `./Documentation-Hub-*.AppImage`
|
|
281
|
+
|
|
282
|
+
## Development
|
|
283
|
+
|
|
284
|
+
### Prerequisites
|
|
285
|
+
|
|
286
|
+
- Node.js 18 or later
|
|
287
|
+
- npm or yarn
|
|
288
|
+
- Git
|
|
289
|
+
|
|
290
|
+
### Setup
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
# Clone the repository
|
|
294
|
+
git clone https://github.com/ItMeDiaTech/Documentation_Hub.git
|
|
295
|
+
cd Documentation_Hub
|
|
296
|
+
|
|
297
|
+
# Install dependencies
|
|
298
|
+
npm install
|
|
299
|
+
|
|
300
|
+
# Run in development mode with hot reload
|
|
301
|
+
npm run electron:dev
|
|
302
|
+
|
|
303
|
+
# Type checking
|
|
304
|
+
npm run typecheck
|
|
305
|
+
|
|
306
|
+
# Linting
|
|
307
|
+
npm run lint
|
|
308
|
+
|
|
309
|
+
# Format code
|
|
310
|
+
npm run format
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### Available Scripts
|
|
314
|
+
|
|
315
|
+
- `npm run dev` - Start Vite development server
|
|
316
|
+
- `npm run electron:dev` - Run Electron with hot reload
|
|
317
|
+
- `npm run build` - Build for production
|
|
318
|
+
- `npm run dist` - Package for distribution
|
|
319
|
+
- `npm run lint` - Run ESLint
|
|
320
|
+
- `npm run format` - Format code with Prettier
|
|
321
|
+
- `npm run typecheck` - Run TypeScript type checking
|
|
322
|
+
|
|
323
|
+
### Building for Distribution
|
|
324
|
+
|
|
325
|
+
```bash
|
|
326
|
+
# Build for current platform
|
|
327
|
+
npm run build
|
|
328
|
+
npm run dist
|
|
329
|
+
|
|
330
|
+
# Output will be in the release/ directory
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
**Platform-Specific Builds:**
|
|
334
|
+
|
|
335
|
+
- Windows: Generates `.exe` installer (NSIS)
|
|
336
|
+
- macOS: Generates `.dmg` disk image
|
|
337
|
+
- Linux: Generates `.AppImage` executable
|
|
338
|
+
|
|
339
|
+
## Configuration
|
|
340
|
+
|
|
341
|
+
### Application Settings
|
|
342
|
+
|
|
343
|
+
Access settings via the gear icon in the sidebar or press `Ctrl/Cmd+,`.
|
|
344
|
+
|
|
345
|
+
**Appearance:**
|
|
346
|
+
|
|
347
|
+
- Theme (Light/Dark)
|
|
348
|
+
- Accent color selection
|
|
349
|
+
- Custom color configuration
|
|
350
|
+
- Glass effects toggle
|
|
351
|
+
- Animation preferences
|
|
352
|
+
|
|
353
|
+
**Typography:**
|
|
354
|
+
|
|
355
|
+
- Main text font and sizing
|
|
356
|
+
- Secondary text customization
|
|
357
|
+
- Letter spacing and line height
|
|
358
|
+
- Font weight and style
|
|
359
|
+
|
|
360
|
+
**Localization:**
|
|
361
|
+
|
|
362
|
+
- Language (English, Spanish, Mandarin)
|
|
363
|
+
- Timezone selection (US and international)
|
|
364
|
+
- Date format preferences
|
|
365
|
+
|
|
366
|
+
**API Connections:**
|
|
367
|
+
|
|
368
|
+
- PowerAutomate URL for automation
|
|
369
|
+
- Bug report endpoint
|
|
370
|
+
- Feature suggestion endpoint
|
|
371
|
+
|
|
372
|
+
**Updates:**
|
|
373
|
+
|
|
374
|
+
- Auto-update on launch (default: enabled)
|
|
375
|
+
- Manual update checks
|
|
376
|
+
- Release notes viewer
|
|
377
|
+
|
|
378
|
+
**Data Management:**
|
|
379
|
+
|
|
380
|
+
- Storage location
|
|
381
|
+
- Session cleanup preferences
|
|
382
|
+
- Export/import settings
|
|
383
|
+
- Reset to defaults
|
|
384
|
+
|
|
385
|
+
### Session Configuration
|
|
386
|
+
|
|
387
|
+
Each session maintains independent settings:
|
|
388
|
+
|
|
389
|
+
**Processing Options:**
|
|
390
|
+
|
|
391
|
+
- Append content ID to hyperlinks
|
|
392
|
+
- Content ID string
|
|
393
|
+
- URL validation
|
|
394
|
+
- Backup creation
|
|
395
|
+
- Internal/external link processing
|
|
396
|
+
|
|
397
|
+
**Styles:**
|
|
398
|
+
|
|
399
|
+
- Custom style definitions
|
|
400
|
+
- Font and formatting rules
|
|
401
|
+
- Spacing configurations
|
|
402
|
+
|
|
403
|
+
**Replacements:**
|
|
404
|
+
|
|
405
|
+
- Text replacement rules
|
|
406
|
+
- Pattern matching options
|
|
407
|
+
|
|
408
|
+
**Document Uniformity:**
|
|
409
|
+
|
|
410
|
+
- Table formatting rules
|
|
411
|
+
- List bullet configurations
|
|
412
|
+
- TOC generation settings
|
|
413
|
+
|
|
414
|
+
## Architecture
|
|
415
|
+
|
|
416
|
+
```
|
|
417
|
+
Documentation_Hub/
|
|
418
|
+
├── electron/ # Electron main process
|
|
419
|
+
│ ├── main.ts # App initialization and IPC
|
|
420
|
+
│ └── preload.ts # Context bridge (security)
|
|
421
|
+
├── src/ # React application
|
|
422
|
+
│ ├── components/ # UI components
|
|
423
|
+
│ │ ├── common/ # Reusable components
|
|
424
|
+
│ │ ├── layout/ # Layout components
|
|
425
|
+
│ │ ├── navigation/ # Navigation components
|
|
426
|
+
│ │ └── sessions/ # Session-specific components
|
|
427
|
+
│ ├── contexts/ # React contexts
|
|
428
|
+
│ │ ├── ThemeContext.tsx
|
|
429
|
+
│ │ ├── SessionContext.tsx
|
|
430
|
+
│ │ └── UserSettingsContext.tsx
|
|
431
|
+
│ ├── pages/ # Application views
|
|
432
|
+
│ │ ├── Dashboard.tsx
|
|
433
|
+
│ │ ├── Sessions.tsx
|
|
434
|
+
│ │ ├── CurrentSession.tsx
|
|
435
|
+
│ │ ├── Documents.tsx
|
|
436
|
+
│ │ └── Settings.tsx
|
|
437
|
+
│ ├── services/ # Business logic
|
|
438
|
+
│ │ └── document/ # Document processing
|
|
439
|
+
│ ├── styles/ # Global styles and themes
|
|
440
|
+
│ ├── types/ # TypeScript definitions
|
|
441
|
+
│ ├── utils/ # Utility functions
|
|
442
|
+
│ └── App.tsx # Root component
|
|
443
|
+
├── public/ # Static assets
|
|
444
|
+
└── build/ # Build resources (icons)
|
|
445
|
+
```
|
|
446
|
+
|
|
447
|
+
### Key Design Patterns
|
|
448
|
+
|
|
449
|
+
**State Management:**
|
|
450
|
+
|
|
451
|
+
- React Context for global state
|
|
452
|
+
- Zustand for complex state logic
|
|
453
|
+
- IndexedDB for persistent session data
|
|
454
|
+
- LocalStorage for user preferences
|
|
455
|
+
|
|
456
|
+
**Security:**
|
|
457
|
+
|
|
458
|
+
- Context isolation enabled
|
|
459
|
+
- Node integration disabled
|
|
460
|
+
- IPC communication via secure bridge
|
|
461
|
+
- Content Security Policy enforced
|
|
462
|
+
- Sandboxed renderer process
|
|
463
|
+
|
|
464
|
+
**Performance:**
|
|
465
|
+
|
|
466
|
+
- Code splitting and lazy loading
|
|
467
|
+
- Virtual scrolling for large lists
|
|
468
|
+
- Optimized re-renders with React.memo
|
|
469
|
+
- 60fps animations with GPU acceleration
|
|
470
|
+
- Efficient document processing with Web Workers
|
|
471
|
+
|
|
472
|
+
## Updates
|
|
473
|
+
|
|
474
|
+
Documentation Hub includes automatic update functionality:
|
|
475
|
+
|
|
476
|
+
1. **Automatic Updates (Recommended):**
|
|
477
|
+
- Enable "Auto-update on launch" in Settings
|
|
478
|
+
- App checks for updates on startup
|
|
479
|
+
- Downloads and installs updates automatically
|
|
480
|
+
- Prompts to restart when ready
|
|
481
|
+
|
|
482
|
+
2. **Manual Updates:**
|
|
483
|
+
- Click "Check for Updates" in Settings
|
|
484
|
+
- View available update details
|
|
485
|
+
- Download and install when convenient
|
|
486
|
+
|
|
487
|
+
3. **Release Channels:**
|
|
488
|
+
- Stable: Production-ready releases
|
|
489
|
+
- All updates go through the stable channel
|
|
490
|
+
|
|
491
|
+
Updates are downloaded from GitHub Releases and verified before installation.
|
|
492
|
+
|
|
493
|
+
## Troubleshooting
|
|
494
|
+
|
|
495
|
+
### Application Won't Start
|
|
496
|
+
|
|
497
|
+
- **Windows:** Check that .NET Framework 4.5+ is installed
|
|
498
|
+
- **macOS:** Allow app in Security & Privacy settings
|
|
499
|
+
- **Linux:** Ensure AppImage has execute permissions
|
|
500
|
+
|
|
501
|
+
### Documents Not Processing
|
|
502
|
+
|
|
503
|
+
- Verify document is valid .docx format
|
|
504
|
+
- Check file is not password-protected
|
|
505
|
+
- Ensure file is not currently open in another application
|
|
506
|
+
- Review error messages in the application
|
|
507
|
+
|
|
508
|
+
### Settings Not Saving
|
|
509
|
+
|
|
510
|
+
- Check available disk space
|
|
511
|
+
- Verify IndexedDB is enabled in your system
|
|
512
|
+
- Try clearing application cache (Settings > Data)
|
|
513
|
+
- Reset settings to defaults if corrupted
|
|
514
|
+
|
|
515
|
+
### Performance Issues
|
|
516
|
+
|
|
517
|
+
- Reduce density mode to Minimal
|
|
518
|
+
- Disable glass effects and animations
|
|
519
|
+
- Close unnecessary sessions
|
|
520
|
+
- Process fewer documents simultaneously
|
|
521
|
+
- Increase available system memory
|
|
522
|
+
|
|
523
|
+
### Auto-Update Issues (Corporate Networks)
|
|
524
|
+
|
|
525
|
+
**ECONNRESET or Certificate Validation Errors:**
|
|
526
|
+
|
|
527
|
+
Documentation Hub includes advanced proxy support for corporate environments. If you encounter update issues:
|
|
528
|
+
|
|
529
|
+
1. **Automatic Proxy Detection:**
|
|
530
|
+
- The app automatically detects proxy settings from environment variables
|
|
531
|
+
- Supports HTTPS_PROXY, HTTP_PROXY, and NO_PROXY
|
|
532
|
+
- Works with NTLM, Kerberos, and basic authentication
|
|
533
|
+
|
|
534
|
+
2. **Setting Proxy Environment Variables (if needed):**
|
|
535
|
+
|
|
536
|
+
```bash
|
|
537
|
+
# Windows (Command Prompt)
|
|
538
|
+
set HTTPS_PROXY=http://proxy.company.com:8080
|
|
539
|
+
set HTTP_PROXY=http://proxy.company.com:8080
|
|
540
|
+
set NO_PROXY=localhost,127.0.0.1
|
|
541
|
+
|
|
542
|
+
# Windows (PowerShell)
|
|
543
|
+
$env:HTTPS_PROXY="http://proxy.company.com:8080"
|
|
544
|
+
$env:HTTP_PROXY="http://proxy.company.com:8080"
|
|
545
|
+
$env:NO_PROXY="localhost,127.0.0.1"
|
|
546
|
+
|
|
547
|
+
# With authentication
|
|
548
|
+
set HTTPS_PROXY=http://username:password@proxy.company.com:8080
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
3. **Automatic Retry with Exponential Backoff:**
|
|
552
|
+
- The app automatically retries failed downloads 5 times
|
|
553
|
+
- Retry delays: 1s, 2s, 4s, 8s, 16s
|
|
554
|
+
- Handles transient network issues gracefully
|
|
555
|
+
|
|
556
|
+
4. **ZIP Fallback System:**
|
|
557
|
+
- If .exe downloads are blocked, the app automatically tries .zip format
|
|
558
|
+
- Downloads compressed version and extracts locally
|
|
559
|
+
- Maintains security and code signing
|
|
560
|
+
|
|
561
|
+
5. **Corporate Certificate Issues:**
|
|
562
|
+
- For custom CA certificates: `set NODE_EXTRA_CA_CERTS=path\to\certificate.pem`
|
|
563
|
+
- The app uses Chromium's network stack for better certificate handling
|
|
564
|
+
|
|
565
|
+
**Network Restriction Bypass:**
|
|
566
|
+
|
|
567
|
+
If your network blocks .exe downloads:
|
|
568
|
+
|
|
569
|
+
- The app automatically detects blocking and switches to ZIP fallback
|
|
570
|
+
- No manual intervention required
|
|
571
|
+
- Visual indicators show when fallback mode is active
|
|
572
|
+
- Same "Install & Restart" workflow regardless of update method
|
|
573
|
+
|
|
574
|
+
## Contributing
|
|
575
|
+
|
|
576
|
+
Contributions are welcome! Please follow these guidelines:
|
|
577
|
+
|
|
578
|
+
1. Fork the repository
|
|
579
|
+
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
|
580
|
+
3. Commit your changes (`git commit -m 'Add amazing feature'`)
|
|
581
|
+
4. Push to the branch (`git push origin feature/amazing-feature`)
|
|
582
|
+
5. Open a Pull Request
|
|
583
|
+
|
|
584
|
+
### Code Style
|
|
585
|
+
|
|
586
|
+
- Follow existing TypeScript conventions
|
|
587
|
+
- Use Prettier for code formatting
|
|
588
|
+
- Run ESLint before committing
|
|
589
|
+
- Write type-safe code with strict TypeScript
|
|
590
|
+
- Add comments for complex logic
|
|
591
|
+
- Update documentation for new features
|
|
592
|
+
|
|
593
|
+
### Testing
|
|
594
|
+
|
|
595
|
+
- Test on all supported platforms before submitting
|
|
596
|
+
- Verify accessibility compliance
|
|
597
|
+
- Check performance impact
|
|
598
|
+
- Ensure backward compatibility
|
|
599
|
+
|
|
600
|
+
## Security
|
|
601
|
+
|
|
602
|
+
### Security Measures
|
|
603
|
+
|
|
604
|
+
- Automatic security updates
|
|
605
|
+
- Sandboxed renderer processes
|
|
606
|
+
- Content Security Policy
|
|
607
|
+
- No remote code execution
|
|
608
|
+
- Minimal permissions model
|
|
609
|
+
- Encrypted data storage options
|
|
610
|
+
|
|
611
|
+
## License
|
|
612
|
+
|
|
613
|
+
MIT License - see [LICENSE](LICENSE) file for details.
|
|
614
|
+
|
|
615
|
+
## Acknowledgments
|
|
616
|
+
|
|
617
|
+
Built with these excellent open-source projects:
|
|
618
|
+
|
|
619
|
+
- Electron for cross-platform desktop capabilities
|
|
620
|
+
- React for UI components
|
|
621
|
+
- TypeScript for type safety
|
|
622
|
+
- Tailwind CSS for styling
|
|
623
|
+
- Framer Motion for animations
|
|
624
|
+
- Radix UI for accessible primitives
|
|
625
|
+
- DocXMLater for type-safe Word document processing
|
|
626
|
+
|
|
627
|
+
## Support
|
|
628
|
+
|
|
629
|
+
- **Issues:** [GitHub Issues](https://github.com/ItMeDiaTech/Documentation_Hub/issues)
|
|
630
|
+
- **Discussions:** [GitHub Discussions](https://github.com/ItMeDiaTech/Documentation_Hub/discussions)
|
|
631
|
+
|
|
632
|
+
## Changelog
|
|
633
|
+
|
|
634
|
+
See [CHANGELOG.md](CHANGELOG.md) for version history and release notes.
|
|
635
|
+
|
|
636
|
+
## Roadmap
|
|
637
|
+
|
|
638
|
+
Planned features for future releases:
|
|
639
|
+
|
|
640
|
+
- Cloud sync for sessions across devices
|
|
641
|
+
- Plugin system for custom processors
|
|
642
|
+
- Team collaboration features
|
|
643
|
+
- Advanced analytics and reporting
|
|
644
|
+
- Batch processing scheduler
|
|
645
|
+
- Custom document templates
|
|
646
|
+
- Export to multiple formats
|
|
647
|
+
- Integration with cloud storage providers
|
|
648
|
+
|
|
649
|
+
---
|
|
650
|
+
|
|
651
|
+
**Version:** 5.6.0
|
|
652
|
+
**Last Updated:** February 2026
|
|
653
|
+
**Maintainer:** ItMeDiaTech
|
|
654
|
+
|
|
655
|
+
### Recent Major Updates
|
|
656
|
+
|
|
657
|
+
**February 2026 - DocXMLater 10.1 Upgrade:**
|
|
658
|
+
- Upgraded to DocXMLater 10.1.0 with 70+ new ECMA-376 API methods
|
|
659
|
+
- Refactored ListProcessor to use NumberingLevel API, eliminating raw XML manipulation
|
|
660
|
+
- List prefix standardization now uses type-safe setters (setFont, setColor, setFontSize, setBold)
|
|
661
|
+
|
|
662
|
+
**January 2025 - DocXMLater Migration:**
|
|
663
|
+
- Complete migration to DocXMLater library for document processing
|
|
664
|
+
- 90% code reduction in document processing (8,000+ lines → 4,000+ lines)
|
|
665
|
+
- Full TypeScript type safety throughout document operations
|
|
666
|
+
- Improved reliability for styles, tables, hyperlinks, and list processing
|