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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/bin/dam +137 -0
- data/docs/README.md +187 -90
- data/docs/architecture/dam/dam-cli-enhancements.md +642 -0
- data/docs/architecture/dam/dam-cli-implementation-guide.md +1041 -0
- data/docs/architecture/dam/dam-data-model.md +466 -0
- data/docs/architecture/dam/dam-visualization-requirements.md +641 -0
- data/docs/architecture/dam/implementation-roadmap.md +328 -0
- data/docs/architecture/dam/jan-collaboration-guide.md +309 -0
- data/lib/appydave/tools/dam/s3_operations.rb +57 -5
- data/lib/appydave/tools/dam/s3_scanner.rb +139 -0
- data/lib/appydave/tools/version.rb +1 -1
- data/lib/appydave/tools.rb +1 -0
- data/package.json +1 -1
- metadata +37 -32
- data/docs/development/CODEX-recommendations.md +0 -258
- data/docs/development/README.md +0 -100
- /data/docs/{development/pattern-comparison.md → architecture/cli/cli-pattern-comparison.md} +0 -0
- /data/docs/{development/cli-architecture-patterns.md → architecture/cli/cli-patterns.md} +0 -0
- /data/docs/{project-brand-systems-analysis.md → architecture/configuration/configuration-systems.md} +0 -0
- /data/docs/{dam → architecture/dam}/dam-vision.md +0 -0
- /data/docs/{dam/prd-client-sharing.md → architecture/dam/design-decisions/002-client-sharing.md} +0 -0
- /data/docs/{dam/prd-git-integration.md → architecture/dam/design-decisions/003-git-integration.md} +0 -0
- /data/docs/{prd-unified-brands-configuration.md → architecture/design-decisions/001-unified-brands-config.md} +0 -0
- /data/docs/{dam/session-summary-2025-11-09.md → architecture/design-decisions/session-2025-11-09.md} +0 -0
- /data/docs/{configuration/README.md → guides/configuration-setup.md} +0 -0
- /data/docs/{dam → guides/platforms}/windows/README.md +0 -0
- /data/docs/{dam → guides/platforms}/windows/dam-testing-plan-windows-powershell.md +0 -0
- /data/docs/{dam → guides/platforms}/windows/installation.md +0 -0
- /data/docs/{tools → guides/tools}/bank-reconciliation.md +0 -0
- /data/docs/{tools → guides/tools}/cli-actions.md +0 -0
- /data/docs/{tools → guides/tools}/configuration.md +0 -0
- /data/docs/{dam → guides/tools/dam}/dam-testing-plan.md +0 -0
- /data/docs/{dam/usage.md → guides/tools/dam/dam-usage.md} +0 -0
- /data/docs/{tools → guides/tools}/gpt-context.md +0 -0
- /data/docs/{tools → guides/tools}/index.md +0 -0
- /data/docs/{tools → guides/tools}/move-images.md +0 -0
- /data/docs/{tools → guides/tools}/name-manager.md +0 -0
- /data/docs/{tools → guides/tools}/prompt-tools.md +0 -0
- /data/docs/{tools → guides/tools}/subtitle-processor.md +0 -0
- /data/docs/{tools → guides/tools}/youtube-automation.md +0 -0
- /data/docs/{tools → guides/tools}/youtube-manager.md +0 -0
- /data/docs/{configuration → templates}/.env.example +0 -0
- /data/docs/{configuration → templates}/channels.example.json +0 -0
- /data/docs/{configuration → templates}/settings.example.json +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 93dd9f15e347dfb0b0cb8bc5897e936317cbc8af13af40d3b51fd912d9c7cb7b
|
|
4
|
+
data.tar.gz: a7b21ab65386f0291c584263f0247513b4ad35513246e68bf873330e70221836
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
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
|
-
**
|
|
3
|
+
**Documentation organized by purpose:** guides (how to), architecture (why/how it works), templates (copy these), development (contribute).
|
|
4
4
|
|
|
5
|
-
|
|
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
|
-
##
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
- **[
|
|
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
|
-
###
|
|
76
|
+
### Design Decisions (General)
|
|
28
77
|
|
|
29
|
-
- **[
|
|
30
|
-
|
|
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
|
-
|
|
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
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
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
|
-
|
|
98
|
+
# Copy .env to project root
|
|
99
|
+
cp docs/templates/.env.example .env
|
|
43
100
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
101
|
+
# Edit with your values
|
|
102
|
+
ad_config -e
|
|
103
|
+
```
|
|
47
104
|
|
|
48
105
|
---
|
|
49
106
|
|
|
50
|
-
##
|
|
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
|
-
|
|
53
|
-
→ See individual tool documentation in [`tools/`](./tools/) or [`vat/`](./vat/)
|
|
115
|
+
Planned documentation for contributors:
|
|
54
116
|
|
|
55
|
-
|
|
56
|
-
|
|
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
|
-
|
|
59
|
-
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
## 🗄️ Archive
|
|
60
125
|
|
|
61
|
-
|
|
62
|
-
|
|
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
|
-
├──
|
|
74
|
-
│ ├──
|
|
75
|
-
│ ├──
|
|
76
|
-
│ ├──
|
|
77
|
-
│
|
|
78
|
-
│
|
|
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
|
-
├──
|
|
81
|
-
│ ├──
|
|
82
|
-
│ ├──
|
|
83
|
-
│
|
|
84
|
-
│ └── ... (more tools)
|
|
178
|
+
├── templates/ # COPY THESE files
|
|
179
|
+
│ ├── settings.example.json
|
|
180
|
+
│ ├── channels.example.json
|
|
181
|
+
│ └── .env.example
|
|
85
182
|
│
|
|
86
|
-
├── development/ #
|
|
87
|
-
│
|
|
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/ #
|
|
92
|
-
└── ... (
|
|
186
|
+
└── archive/ # OLD/DEPRECATED
|
|
187
|
+
└── ... (historical docs)
|
|
93
188
|
```
|
|
94
189
|
|
|
95
190
|
---
|
|
96
191
|
|
|
97
|
-
## 🔍
|
|
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
|
-
| **
|
|
114
|
-
| **
|
|
115
|
-
| **
|
|
116
|
-
| **
|
|
117
|
-
| **
|
|
118
|
-
| **
|
|
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
|
-
| **
|
|
125
|
-
| **
|
|
126
|
-
| **
|
|
127
|
-
| **
|
|
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
|
-
##
|
|
225
|
+
## Legend
|
|
132
226
|
|
|
133
|
-
-
|
|
134
|
-
-
|
|
135
|
-
-
|
|
136
|
-
-
|
|
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
|
-
-
|
|
157
|
-
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
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-
|
|
266
|
+
**Last updated**: 2025-11-18
|