appydave-tools 0.21.2 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/bin/dam +137 -0
  4. data/docs/README.md +187 -90
  5. data/docs/architecture/dam/dam-cli-enhancements.md +642 -0
  6. data/docs/architecture/dam/dam-cli-implementation-guide.md +1041 -0
  7. data/docs/architecture/dam/dam-data-model.md +466 -0
  8. data/docs/architecture/dam/dam-visualization-requirements.md +641 -0
  9. data/docs/architecture/dam/implementation-roadmap.md +328 -0
  10. data/docs/architecture/dam/jan-collaboration-guide.md +309 -0
  11. data/lib/appydave/tools/dam/s3_operations.rb +57 -5
  12. data/lib/appydave/tools/dam/s3_scanner.rb +139 -0
  13. data/lib/appydave/tools/version.rb +1 -1
  14. data/lib/appydave/tools.rb +1 -0
  15. data/package.json +1 -1
  16. metadata +37 -32
  17. data/docs/development/CODEX-recommendations.md +0 -258
  18. data/docs/development/README.md +0 -100
  19. /data/docs/{development/pattern-comparison.md → architecture/cli/cli-pattern-comparison.md} +0 -0
  20. /data/docs/{development/cli-architecture-patterns.md → architecture/cli/cli-patterns.md} +0 -0
  21. /data/docs/{project-brand-systems-analysis.md → architecture/configuration/configuration-systems.md} +0 -0
  22. /data/docs/{dam → architecture/dam}/dam-vision.md +0 -0
  23. /data/docs/{dam/prd-client-sharing.md → architecture/dam/design-decisions/002-client-sharing.md} +0 -0
  24. /data/docs/{dam/prd-git-integration.md → architecture/dam/design-decisions/003-git-integration.md} +0 -0
  25. /data/docs/{prd-unified-brands-configuration.md → architecture/design-decisions/001-unified-brands-config.md} +0 -0
  26. /data/docs/{dam/session-summary-2025-11-09.md → architecture/design-decisions/session-2025-11-09.md} +0 -0
  27. /data/docs/{configuration/README.md → guides/configuration-setup.md} +0 -0
  28. /data/docs/{dam → guides/platforms}/windows/README.md +0 -0
  29. /data/docs/{dam → guides/platforms}/windows/dam-testing-plan-windows-powershell.md +0 -0
  30. /data/docs/{dam → guides/platforms}/windows/installation.md +0 -0
  31. /data/docs/{tools → guides/tools}/bank-reconciliation.md +0 -0
  32. /data/docs/{tools → guides/tools}/cli-actions.md +0 -0
  33. /data/docs/{tools → guides/tools}/configuration.md +0 -0
  34. /data/docs/{dam → guides/tools/dam}/dam-testing-plan.md +0 -0
  35. /data/docs/{dam/usage.md → guides/tools/dam/dam-usage.md} +0 -0
  36. /data/docs/{tools → guides/tools}/gpt-context.md +0 -0
  37. /data/docs/{tools → guides/tools}/index.md +0 -0
  38. /data/docs/{tools → guides/tools}/move-images.md +0 -0
  39. /data/docs/{tools → guides/tools}/name-manager.md +0 -0
  40. /data/docs/{tools → guides/tools}/prompt-tools.md +0 -0
  41. /data/docs/{tools → guides/tools}/subtitle-processor.md +0 -0
  42. /data/docs/{tools → guides/tools}/youtube-automation.md +0 -0
  43. /data/docs/{tools → guides/tools}/youtube-manager.md +0 -0
  44. /data/docs/{configuration → templates}/.env.example +0 -0
  45. /data/docs/{configuration → templates}/channels.example.json +0 -0
  46. /data/docs/{configuration → templates}/settings.example.json +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 72844960d0580ea65b08a7d8be703910946ae6b095bac290a594cc9a1288a208
4
- data.tar.gz: 6ff9f2b0a5254a0ef2dc5fd1e07722e7635f9368a7ec6fd8deb3ffe016b01bc0
3
+ metadata.gz: 93dd9f15e347dfb0b0cb8bc5897e936317cbc8af13af40d3b51fd912d9c7cb7b
4
+ data.tar.gz: a7b21ab65386f0291c584263f0247513b4ad35513246e68bf873330e70221836
5
5
  SHA512:
6
- metadata.gz: 9ee56f7cafc8e772ee75dbf809860148c26a3a229c2b1da5f04899fad658185169f83f25eb2dab3ce2b395d7b7067e6f13a86936967f11da844c1da58bfdaa5f
7
- data.tar.gz: cd5def0f4db1f1fef7aac06bcd17cd6f480322da95da18453efe40285b37ac51d17f7be504204e5f84363d0dc0286ce2a324c6b06049a4020d808a364b7b99d8
6
+ metadata.gz: 54f08c9a7b2d340fbe0a6600b239a0fa02bb3e7d869923bcf5ddb8e29ed911f3aac066ae358f078c07f9f75d9025464b10fd355bf245125c7ab6ba4e279d0b02
7
+ data.tar.gz: bf5358fd24eb33c6533ba6593c3195d45285d6f5ad5e926d4db2a34ce3bb0b1fc7557cca4d4b5978b7c5171ef68c3ef20589ca2369e23a9a4479ccacb7ab7e61
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [0.21.2](https://github.com/appydave/appydave-tools/compare/v0.21.1...v0.21.2) (2025-11-17)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * fix exe/dam wrapper to properly execute bin/dam by setting PROGRAM_NAME ([cec43c3](https://github.com/appydave/appydave-tools/commit/cec43c3489ab868d120293daebf3456819ae6b11))
7
+
1
8
  ## [0.21.1](https://github.com/appydave/appydave-tools/compare/v0.21.0...v0.21.1) (2025-11-17)
2
9
 
3
10
 
data/bin/dam CHANGED
@@ -27,6 +27,7 @@ class VatCLI
27
27
  'repo-push' => method(:repo_push_command),
28
28
  's3-share' => method(:s3_share_command),
29
29
  's3-discover' => method(:s3_discover_command),
30
+ 's3-scan' => method(:s3_scan_command),
30
31
  # Deprecated aliases (for backward compatibility)
31
32
  's3-cleanup' => method(:s3_cleanup_remote_command),
32
33
  'cleanup-local' => method(:s3_cleanup_local_command)
@@ -565,6 +566,9 @@ class VatCLI
565
566
  s3-discover <brand> <project> List files available in S3
566
567
  s3-share <brand> <project> <file> Generate shareable pre-signed URL
567
568
 
569
+ S3 Data Commands:
570
+ s3-scan <brand> [--all] Scan S3 bucket for actual file data
571
+
568
572
  Archive Commands:
569
573
  archive <brand> <project> Copy project to SSD backup
570
574
  manifest <brand> [--all] Generate project manifest
@@ -593,6 +597,8 @@ class VatCLI
593
597
  dam s3-discover appydave b70 --shareable
594
598
  dam s3-share appydave b70 video.mp4
595
599
  dam s3-share appydave b70 video.mp4 --expires 24h
600
+ dam s3-scan appydave
601
+ dam s3-scan --all
596
602
  dam s3-cleanup-remote appydave b65 --force
597
603
 
598
604
  For more information: https://github.com/appydave/appydave-tools
@@ -1092,6 +1098,137 @@ class VatCLI
1092
1098
  end
1093
1099
  # rubocop:enable Metrics/CyclomaticComplexity
1094
1100
  # rubocop:enable Metrics/MethodLength
1101
+
1102
+ # S3 Scan - Query AWS S3 for actual file listings
1103
+ def s3_scan_command(args)
1104
+ all_brands = args.include?('--all')
1105
+ args = args.reject { |arg| arg.start_with?('--') }
1106
+ brand_arg = args[0]
1107
+
1108
+ if all_brands
1109
+ scan_all_brands_s3
1110
+ elsif brand_arg
1111
+ scan_single_brand_s3(brand_arg)
1112
+ else
1113
+ puts 'Usage: dam s3-scan <brand> [--all]'
1114
+ puts ''
1115
+ puts 'Scan S3 bucket to update project manifests with actual S3 file data.'
1116
+ puts ''
1117
+ puts 'Examples:'
1118
+ puts ' dam s3-scan appydave # Scan AppyDave S3 bucket'
1119
+ puts ' dam s3-scan --all # Scan all brands'
1120
+ exit 1
1121
+ end
1122
+ rescue StandardError => e
1123
+ puts "❌ Error: #{e.message}"
1124
+ puts e.backtrace.first(5).join("\n") if ENV['DEBUG']
1125
+ exit 1
1126
+ end
1127
+
1128
+ # rubocop:disable Metrics/MethodLength
1129
+ def scan_single_brand_s3(brand_arg)
1130
+ puts "🔄 Scanning S3 for #{brand_arg}..."
1131
+ puts ''
1132
+
1133
+ brand_key = brand_arg
1134
+ scanner = Appydave::Tools::Dam::S3Scanner.new(brand_key)
1135
+
1136
+ # Scan all projects
1137
+ results = scanner.scan_all_projects
1138
+
1139
+ if results.empty?
1140
+ puts ''
1141
+ puts "⚠️ No projects found in S3 for #{brand_key}"
1142
+ puts ' This may indicate:'
1143
+ puts ' - No files uploaded to S3 yet'
1144
+ puts ' - S3 bucket or prefix misconfigured'
1145
+ puts ' - AWS credentials issue'
1146
+ return
1147
+ end
1148
+
1149
+ # Load existing manifest
1150
+ Appydave::Tools::Configuration::Config.configure
1151
+ brand_path = Appydave::Tools::Dam::Config.brand_path(brand_key)
1152
+ manifest_path = File.join(brand_path, 'projects.json')
1153
+
1154
+ unless File.exist?(manifest_path)
1155
+ puts ''
1156
+ puts "❌ Manifest not found: #{manifest_path}"
1157
+ puts " Run: dam manifest #{brand_key}"
1158
+ puts " Then retry: dam s3-scan #{brand_key}"
1159
+ exit 1
1160
+ end
1161
+
1162
+ manifest = JSON.parse(File.read(manifest_path), symbolize_names: true)
1163
+
1164
+ # Merge S3 scan data into manifest
1165
+ updated_count = 0
1166
+ manifest[:projects].each do |project|
1167
+ project_id = project[:id]
1168
+ s3_data = results[project_id]
1169
+ next unless s3_data
1170
+
1171
+ project[:storage][:s3] = s3_data
1172
+ updated_count += 1
1173
+ end
1174
+
1175
+ # Update timestamp and note
1176
+ manifest[:config][:last_updated] = Time.now.utc.iso8601
1177
+ manifest[:config][:note] = 'Auto-generated manifest with S3 scan data. Regenerate with: dam s3-scan'
1178
+
1179
+ # Write updated manifest
1180
+ File.write(manifest_path, JSON.pretty_generate(manifest))
1181
+
1182
+ puts ''
1183
+ puts "✅ Updated manifest with S3 data: #{manifest_path}"
1184
+ puts " Scanned #{results.size} projects in S3"
1185
+ puts " Updated #{updated_count} projects in manifest"
1186
+ puts ''
1187
+ end
1188
+ # rubocop:enable Metrics/MethodLength
1189
+
1190
+ # rubocop:disable Metrics/MethodLength
1191
+ def scan_all_brands_s3
1192
+ Appydave::Tools::Configuration::Config.configure
1193
+ brands_config = Appydave::Tools::Configuration::Config.brands
1194
+
1195
+ results = []
1196
+ brands_config.brands.each do |brand_info|
1197
+ brand_key = brand_info.key
1198
+ puts ''
1199
+ puts '=' * 60
1200
+
1201
+ begin
1202
+ scan_single_brand_s3(brand_key)
1203
+ results << { brand: brand_key, success: true }
1204
+ rescue StandardError => e
1205
+ puts "❌ Failed to scan #{brand_key}: #{e.message}"
1206
+ results << { brand: brand_key, success: false, error: e.message }
1207
+ end
1208
+ end
1209
+
1210
+ puts ''
1211
+ puts '=' * 60
1212
+ puts '📋 Summary - S3 Scans:'
1213
+ puts ''
1214
+
1215
+ successful = results.select { |r| r[:success] }
1216
+ failed = results.reject { |r| r[:success] }
1217
+
1218
+ successful.each do |result|
1219
+ brand_display = result[:brand].ljust(15)
1220
+ puts "✅ #{brand_display} Scanned successfully"
1221
+ end
1222
+
1223
+ failed.each do |result|
1224
+ brand_display = result[:brand].ljust(15)
1225
+ puts "❌ #{brand_display} #{result[:error]}"
1226
+ end
1227
+
1228
+ puts ''
1229
+ puts "Total brands scanned: #{successful.size}/#{results.size}"
1230
+ end
1231
+ # rubocop:enable Metrics/MethodLength
1095
1232
  end
1096
1233
 
1097
1234
  # Run CLI
data/docs/README.md CHANGED
@@ -1,65 +1,131 @@
1
1
  # AppyDave Tools Documentation
2
2
 
3
- **Welcome to the AppyDave Tools documentation!**
3
+ **Documentation organized by purpose:** guides (how to), architecture (why/how it works), templates (copy these), development (contribute).
4
4
 
5
- This directory contains comprehensive documentation for all tools, features, and development guides.
5
+ ---
6
+
7
+ ## 📖 Guides (How To Use)
8
+
9
+ ### Tools
10
+
11
+ - **[DAM - Digital Asset Management](./guides/tools/dam/)** - Video project storage orchestration
12
+ - [Usage Guide](./guides/tools/dam/dam-usage.md) ✅
13
+ - [Testing Plan](./guides/tools/dam/dam-testing-plan.md) ✅
14
+ - **[GPT Context](./guides/tools/gpt-context.md)** - Gather files for AI context ✅
15
+ - **[YouTube Manager](./guides/tools/youtube-manager.md)** - Manage YouTube metadata ✅
16
+ - **[Subtitle Processor](./guides/tools/subtitle-processor.md)** - Clean/merge SRT files ✅
17
+ - **[Configuration Tool](./guides/tools/configuration.md)** - Manage config files ✅
18
+ - **[YouTube Automation](./guides/tools/youtube-automation.md)** - Automation workflows ✅
19
+ - **[Prompt Tools](./guides/tools/prompt-tools.md)** - OpenAI completion wrapper ✅
20
+ - **[Move Images](./guides/tools/move-images.md)** - Organize video assets ✅
21
+ - **[Bank Reconciliation](./guides/tools/bank-reconciliation.md)** - DEPRECATED ✅
22
+ - **[Name Manager](./guides/tools/name-manager.md)** - Naming utilities ✅
23
+ - **[CLI Actions](./guides/tools/cli-actions.md)** - CLI base actions ✅
24
+
25
+ ### Platform-Specific
26
+
27
+ - **[Windows Setup](./guides/platforms/windows/)** - Windows/WSL installation ✅
28
+ - [Installation Guide](./guides/platforms/windows/installation.md) ✅
29
+ - [Testing Plan](./guides/platforms/windows/dam-testing-plan-windows-powershell.md) ✅
30
+
31
+ ### Configuration
32
+
33
+ - **[Configuration Setup Guide](./guides/configuration-setup.md)** - Complete configuration reference ✅
34
+ - Quick start, file locations, settings reference
35
+ - Migration from legacy configs
36
+ - Backup and recovery
37
+
38
+ ### Future Configuration Guides
39
+
40
+ More detailed configuration guides (not yet created):
41
+
42
+ - **Settings Deep Dive** 📝 (detailed explanation of each setting)
43
+ - **Channels System** 📝 (YouTube channel management)
44
+ - **Brands System** 📝 (multi-brand/multi-tenant architecture)
45
+ - **Advanced Configuration** 📝 (environment-specific configs, team setups)
6
46
 
7
47
  ---
8
48
 
9
- ## 📚 Quick Navigation
49
+ ## 🏗️ Architecture (Understanding How It Works)
50
+
51
+ ### DAM (Digital Asset Management)
52
+
53
+ **Complete documentation for DAM visualization and CLI system:**
54
+
55
+ - **[Implementation Roadmap](./architecture/dam/implementation-roadmap.md)** ⭐ START HERE - Complete development guide ✅
56
+ - **[DAM Vision](./architecture/dam/dam-vision.md)** - Strategic vision and roadmap ✅
57
+ - **[Data Model](./architecture/dam/dam-data-model.md)** - Complete entity schema and relationships ✅
58
+ - **[Visualization Requirements](./architecture/dam/dam-visualization-requirements.md)** - Astro dashboard specification ✅
59
+ - **[CLI Enhancements](./architecture/dam/dam-cli-enhancements.md)** - Command requirements specification ✅
60
+ - **[CLI Implementation Guide](./architecture/dam/dam-cli-implementation-guide.md)** - Code-level implementation details ✅
61
+ - **[Jan Collaboration Guide](./architecture/dam/jan-collaboration-guide.md)** - Team workflow reference ✅
62
+
63
+ **DAM Design Decisions:**
64
+ - **[002 - Client Sharing](./architecture/dam/design-decisions/002-client-sharing.md)** 🔄 IN PROGRESS
65
+ - **[003 - Git Integration](./architecture/dam/design-decisions/003-git-integration.md)** 📋 PLANNED
66
+
67
+ ### CLI Architecture
10
68
 
11
- ### User Documentation
69
+ - **[CLI Patterns](./architecture/cli/cli-patterns.md)** - CLI architecture patterns ✅
70
+ - **[CLI Pattern Comparison](./architecture/cli/cli-pattern-comparison.md)** - Visual pattern guide ✅
12
71
 
13
- - **[VAT (Video Asset Tools)](./vat/)** - Video project storage orchestration
14
- - [Usage Guide](./vat/usage.md) - Complete usage reference
15
- - [Testing Plan](./vat/vat-testing-plan.md) - User acceptance testing
16
- - [Implementation Status](./vat/vat-implementation-status.md) - Feature matrix
17
- - [Integration Plan](./vat/vat-integration-plan.md) - Migration details
18
- - [Refactoring Summary](./vat/vat-refactoring-summary.md) - Architecture changes
72
+ ### Configuration Systems
19
73
 
20
- - **[Tools](./tools/)** - Individual tool documentation
21
- - GPT Context Gatherer
22
- - YouTube Manager
23
- - Subtitle Processor
24
- - Configuration Management
25
- - And more...
74
+ - **[Configuration Systems Analysis](./architecture/configuration/configuration-systems.md)** - How brands/channels/NameManager relate ✅
26
75
 
27
- ### Developer Documentation
76
+ ### Design Decisions (General)
28
77
 
29
- - **[Development Guides](./development/)** - How to build tools
30
- - [CLI Architecture Patterns](./development/cli-architecture-patterns.md) - Pattern reference
31
- - [Pattern Comparison](./development/pattern-comparison.md) - Visual guide
32
- - [Quick Reference](./development/README.md) - Fast pattern selection
78
+ - **[001 - Unified Brands Configuration](./architecture/design-decisions/001-unified-brands-config.md)** COMPLETED
79
+ - **[Session: 2025-11-09 DAM Refactoring](./architecture/design-decisions/session-2025-11-09.md)**
33
80
 
34
- ### System Documentation
81
+ ---
82
+
83
+ ## 📋 Templates (Copy These)
84
+
85
+ Ready-to-use configuration templates:
86
+
87
+ - **[settings.example.json](./templates/settings.example.json)** - Settings template ✅
88
+ - **[channels.example.json](./templates/channels.example.json)** - Channels template ✅
89
+ - **[.env.example](./templates/.env.example)** - Environment variables template ✅
90
+ - **brands.example.json** 📝 (not yet created - should mirror brands.json structure with placeholders)
35
91
 
36
- - **[Project & Brand Systems Analysis](./project-brand-systems-analysis.md)** - Deep dive into overlapping systems
37
- - VAT system (storage orchestration)
38
- - Channels configuration (YouTube metadata)
39
- - NameManager (naming conventions)
40
- - Integration points and recommendations
92
+ **To use templates:**
93
+ ```bash
94
+ # Copy to config directory
95
+ cp docs/templates/settings.example.json ~/.config/appydave/settings.json
96
+ cp docs/templates/channels.example.json ~/.config/appydave/channels.json
41
97
 
42
- ### Archive
98
+ # Copy .env to project root
99
+ cp docs/templates/.env.example .env
43
100
 
44
- - **[Archive](./archive/)** - Deprecated documentation
45
- - Old versions of documentation
46
- - Historical reference material
101
+ # Edit with your values
102
+ ad_config -e
103
+ ```
47
104
 
48
105
  ---
49
106
 
50
- ## 🎯 Common Tasks
107
+ ## 🛠️ Development (Contributing)
108
+
109
+ Documentation for contributors and developers:
110
+
111
+ - **[CODEX Recommendations](./development/codex-recommendations.md)** - AI coding guidelines ✅
112
+
113
+ ### Future Development Topics
51
114
 
52
- ### "I want to use a tool"
53
- → See individual tool documentation in [`tools/`](./tools/) or [`vat/`](./vat/)
115
+ Planned documentation for contributors:
54
116
 
55
- ### "I want to build a new tool"
56
- Start with [`development/README.md`](./development/README.md) for CLI pattern selection
117
+ - **Contributing Guide** 📝 (how to contribute, PR process, coding standards)
118
+ - **Testing Guide** 📝 (how to run tests, write specs, coverage requirements)
119
+ - **Release Process** 📝 (semantic versioning, CI/CD, gem publishing)
120
+ - **Development Setup** 📝 (rbenv, bundler, guard, development workflow)
57
121
 
58
- ### "I want to understand the architecture"
59
- → Read [`development/cli-architecture-patterns.md`](./development/cli-architecture-patterns.md)
122
+ ---
123
+
124
+ ## 🗄️ Archive
60
125
 
61
- ### "I want to understand how systems relate"
62
- → Read [`project-brand-systems-analysis.md`](./project-brand-systems-analysis.md)
126
+ Historical and deprecated documentation:
127
+
128
+ - **[Archive](./archive/)** - Deprecated documentation ✅
63
129
 
64
130
  ---
65
131
 
@@ -68,72 +134,100 @@ This directory contains comprehensive documentation for all tools, features, and
68
134
  ```
69
135
  docs/
70
136
  ├── README.md (this file) # Documentation index
71
- ├── project-brand-systems-analysis.md # System overlap analysis
72
137
 
73
- ├── vat/ # VAT documentation
74
- │ ├── usage.md # User guide
75
- │ ├── vat-testing-plan.md # Testing guide
76
- │ ├── vat-implementation-status.md # Feature status
77
- ├── vat-integration-plan.md # Integration details
78
- └── vat-refactoring-summary.md # Architecture changes
138
+ ├── guides/ # HOW TO use things
139
+ │ ├── tools/ # Individual tool guides
140
+ ├── dam/ # DAM-specific guides
141
+ │ │ ├── dam-usage.md
142
+ │ │ └── dam-testing-plan.md
143
+ │ ├── gpt-context.md
144
+ │ │ ├── youtube-manager.md
145
+ │ │ ├── subtitle-processor.md
146
+ │ │ ├── configuration.md
147
+ │ │ └── ... (11 tool guides total)
148
+ │ │
149
+ │ └── platforms/ # Platform-specific setup
150
+ │ └── windows/ # Windows/WSL guides
151
+ │ ├── README.md
152
+ │ ├── installation.md
153
+ │ └── dam-testing-plan-windows-powershell.md
154
+
155
+ ├── architecture/ # WHY/HOW systems work
156
+ │ ├── dam/ # DAM system documentation
157
+ │ │ ├── implementation-roadmap.md # ⭐ START HERE - Complete dev guide
158
+ │ │ ├── dam-vision.md # Strategic vision
159
+ │ │ ├── dam-data-model.md # Entity schema
160
+ │ │ ├── dam-visualization-requirements.md # Astro dashboard spec
161
+ │ │ ├── dam-cli-enhancements.md # CLI implementation
162
+ │ │ ├── jan-collaboration-guide.md # Team workflow
163
+ │ │ └── design-decisions/ # DAM-specific PRDs
164
+ │ │ ├── 002-client-sharing.md
165
+ │ │ └── 003-git-integration.md
166
+ │ │
167
+ │ ├── cli/ # CLI architecture
168
+ │ │ ├── cli-patterns.md # CLI patterns
169
+ │ │ └── cli-pattern-comparison.md # Pattern guide
170
+ │ │
171
+ │ ├── configuration/ # Configuration system
172
+ │ │ └── configuration-systems.md # System overlap analysis
173
+ │ │
174
+ │ └── design-decisions/ # General PRDs, ADRs, session logs
175
+ │ ├── 001-unified-brands-config.md
176
+ │ └── session-2025-11-09.md
79
177
 
80
- ├── tools/ # Individual tool docs
81
- │ ├── gpt-context.md
82
- │ ├── youtube-manager.md
83
- ├── subtitle-processor.md
84
- │ └── ... (more tools)
178
+ ├── templates/ # COPY THESE files
179
+ │ ├── settings.example.json
180
+ │ ├── channels.example.json
181
+ └── .env.example
85
182
 
86
- ├── development/ # Developer guides
87
- ├── README.md # Quick reference
88
- │ ├── cli-architecture-patterns.md # Pattern guide
89
- │ └── pattern-comparison.md # Visual comparison
183
+ ├── development/ # FOR CONTRIBUTORS
184
+ └── codex-recommendations.md
90
185
 
91
- └── archive/ # Old documentation
92
- └── ... (deprecated docs)
186
+ └── archive/ # OLD/DEPRECATED
187
+ └── ... (historical docs)
93
188
  ```
94
189
 
95
190
  ---
96
191
 
97
- ## 🔍 Finding What You Need
98
-
99
- ### By Tool Name
100
-
101
- | Tool | Documentation |
102
- |------|---------------|
103
- | **VAT** | [`vat/usage.md`](./vat/usage.md) |
104
- | **GPT Context** | [`tools/gpt-context.md`](./tools/gpt-context.md) |
105
- | **YouTube Manager** | [`tools/youtube-manager.md`](./tools/youtube-manager.md) |
106
- | **Subtitle Processor** | [`tools/subtitle-processor.md`](./tools/subtitle-processor.md) |
107
- | **Configuration** | [`tools/configuration.md`](./tools/configuration.md) |
192
+ ## 🔍 Quick Reference
108
193
 
109
194
  ### By Task
110
195
 
111
196
  | Task | Documentation |
112
197
  |------|---------------|
113
- | **Video storage management** | [`vat/usage.md`](./vat/usage.md) |
114
- | **S3 sync for collaboration** | [`vat/usage.md`](./vat/usage.md) |
115
- | **Gather AI context** | [`tools/gpt-context.md`](./tools/gpt-context.md) |
116
- | **Manage YouTube videos** | [`tools/youtube-manager.md`](./tools/youtube-manager.md) |
117
- | **Process subtitles** | [`tools/subtitle-processor.md`](./tools/subtitle-processor.md) |
118
- | **Build new CLI tool** | [`development/cli-architecture-patterns.md`](./development/cli-architecture-patterns.md) |
198
+ | **DAM development** | [Implementation Roadmap](./architecture/dam/implementation-roadmap.md) |
199
+ | **Video storage management** | [DAM Usage](./guides/tools/dam/dam-usage.md) |
200
+ | **S3 sync for collaboration** | [DAM Usage](./guides/tools/dam/dam-usage.md) |
201
+ | **Understand DAM architecture** | [DAM Data Model](./architecture/dam/dam-data-model.md) |
202
+ | **Build DAM dashboard** | [Visualization Requirements](./architecture/dam/dam-visualization-requirements.md) |
203
+ | **Gather AI context** | [GPT Context](./guides/tools/gpt-context.md) |
204
+ | **Manage YouTube videos** | [YouTube Manager](./guides/tools/youtube-manager.md) |
205
+ | **Process subtitles** | [Subtitle Processor](./guides/tools/subtitle-processor.md) |
206
+ | **Configure tools** | [Configuration Tool](./guides/tools/configuration.md) |
207
+ | **Set up on Windows** | [Windows Setup](./guides/platforms/windows/) |
208
+ | **Build new CLI tool** | [CLI Patterns](./architecture/cli/cli-patterns.md) |
209
+ | **Understand system design** | [Configuration Systems](./architecture/configuration/configuration-systems.md) |
119
210
 
120
211
  ### By Audience
121
212
 
122
213
  | Audience | Start Here |
123
214
  |----------|------------|
124
- | **End Users** | Individual tool docs in [`tools/`](./tools/) or [`vat/`](./vat/) |
125
- | **Developers** | [`development/README.md`](./development/README.md) |
126
- | **Contributors** | [`development/cli-architecture-patterns.md`](./development/cli-architecture-patterns.md) |
127
- | **Architects** | [`project-brand-systems-analysis.md`](./project-brand-systems-analysis.md) |
215
+ | **DAM Developers** | [Implementation Roadmap](./architecture/dam/implementation-roadmap.md) |
216
+ | **End Users** | [Guides](#-guides-how-to-use) - Individual tool documentation |
217
+ | **Windows Users** | [Windows Setup](./guides/platforms/windows/) |
218
+ | **Team Members (Jan)** | [Jan Collaboration Guide](./architecture/dam/jan-collaboration-guide.md) |
219
+ | **Developers** | [Development](#%EF%B8%8F-development-contributing) - Contributing guides |
220
+ | **Contributors** | [CLI Patterns](./architecture/cli/cli-patterns.md) |
221
+ | **Architects** | [Architecture](#%EF%B8%8F-architecture-understanding-how-it-works) - System design |
128
222
 
129
223
  ---
130
224
 
131
- ## 🆕 Recently Added
225
+ ## Legend
132
226
 
133
- - **2025-11-09**: VAT refactoring to Pattern 2 architecture
134
- - **2025-11-09**: CLI architecture patterns documentation
135
- - **2025-11-09**: Project & brand systems analysis
136
- - **2025-11-08**: VAT integration into appydave-tools
227
+ - = Exists (real file with content)
228
+ - 📝 = Placeholder (future documentation, not yet created)
229
+ - 🔄 = In Progress
230
+ - 📋 = Planned
137
231
 
138
232
  ---
139
233
 
@@ -148,15 +242,16 @@ All documentation in this repository follows the [AI Conventions](../../.ai-conv
148
242
 
149
243
  ---
150
244
 
151
- ## 🤝 Contributing
245
+ ## 🤝 Contributing Documentation
152
246
 
153
247
  When adding new documentation:
154
248
 
155
249
  1. **Choose the right location**:
156
- - Tool documentation → `tools/`
157
- - VAT-specific → `vat/`
158
- - Developer guides → `development/`
159
- - System analysis root of `docs/`
250
+ - How-to guides → `guides/tools/` or `guides/platforms/`
251
+ - System understanding → `architecture/`
252
+ - Design decisions → `architecture/design-decisions/`
253
+ - Templates → `templates/`
254
+ - Contributor info → `development/`
160
255
 
161
256
  2. **Use kebab-case** for filenames (e.g., `my-new-tool.md`)
162
257
 
@@ -164,6 +259,8 @@ When adding new documentation:
164
259
 
165
260
  4. **Follow existing patterns** - check similar docs for style guidance
166
261
 
262
+ 5. **Mark status** - Use ✅ for complete docs, 📝 for placeholders
263
+
167
264
  ---
168
265
 
169
- **Last updated**: 2025-11-09
266
+ **Last updated**: 2025-11-18