syntaxis/shared/target-profiles.toml
Jesús Pérez 9cef9b8d57 refactor: consolidate configuration directories
Merge _configs/ into config/ for single configuration directory.
Update all path references.

Changes:
- Move _configs/* to config/
- Update .gitignore for new patterns
- No code references to _configs/ found

Impact: -1 root directory (layout_conventions.md compliance)
2025-12-26 18:36:23 +00:00

366 lines
9.8 KiB
TOML

# Installation Profiles for Tools Ecosystem
# Predefined sets of targets for different use cases
# Last updated: 2025-11-13
[metadata]
version = "1.0.0"
description = "Installation profiles combining multiple targets based on use case"
total_profiles = 3 # minimal, developer, full (custom is interactive)
# =============================================================================
# PROFILE: MINIMAL
# For users who only need basic CLI tools
# Install time: ~3 minutes (if binaries already compiled)
# Disk space: ~150 MB
# =============================================================================
[profiles.minimal]
name = "Minimal"
description = "CLI tools only - essential tracking and documentation tools"
use_case = "Basic project tracking, documentation management, presentation generation, dependency synchronization"
installation_time = "~3 minutes"
disk_space_estimate = "160 MB"
target_count = 5
[[profiles.minimal.targets]]
name = "dependency-manager"
required = true
reason = "Essential CLI for dependency synchronization and management"
[[profiles.minimal.targets]]
name = "tracking"
required = true
reason = "Essential CLI for change and TODO tracking"
[[profiles.minimal.targets]]
name = "doc-lifecycle"
required = true
reason = "Essential CLI for documentation lifecycle management"
[[profiles.minimal.targets]]
name = "presgen"
required = true
reason = "Essential CLI for presentation generation"
[[profiles.minimal.targets]]
name = "syntaxis"
required = true
reason = "Essential CLI for syntaxis"
[profiles.minimal.features]
"REST APIs" = false
"Web Dashboards" = false
"Terminal UIs" = false
"MCP Servers" = false
description = "Minimal profile provides command-line interfaces only"
# =============================================================================
# PROFILE: DEVELOPER
# For developers who want local APIs and full functionality
# Install time: ~5 minutes (if binaries already compiled)
# Disk space: ~250 MB
# =============================================================================
[profiles.developer]
name = "Developer"
description = "CLI tools + local REST APIs for development and testing"
use_case = "Local development, API testing, advanced workflows, terminal work, dependency management"
installation_time = "~5 minutes"
disk_space_estimate = "270 MB"
target_count = 8
[[profiles.developer.targets]]
name = "dependency-manager"
required = true
reason = "CLI for dependency synchronization and management"
[[profiles.developer.targets]]
name = "tracking"
required = true
reason = "CLI for change and TODO tracking"
[[profiles.developer.targets]]
name = "tracking-api"
required = true
reason = "Local REST API for testing and development"
[[profiles.developer.targets]]
name = "doc-lifecycle"
required = true
reason = "CLI for documentation lifecycle"
[[profiles.developer.targets]]
name = "presgen"
required = true
reason = "CLI for presentation generation"
[[profiles.developer.targets]]
name = "syntaxis"
required = true
reason = "CLI for syntaxis"
[[profiles.developer.targets]]
name = "syntaxis-api"
required = true
reason = "Local REST API for syntaxis"
[[profiles.developer.targets]]
name = "syntaxis-tui"
required = true
reason = "Interactive terminal UI for project management"
[profiles.developer.features]
"REST APIs" = true
"Web Dashboards" = false
"Terminal UIs" = true
"MCP Servers" = false
description = "Developer profile includes CLI tools, REST APIs, and terminal UIs"
[profiles.developer.ports]
"tracking-api" = 8080
"syntaxis-api" = 8081
# =============================================================================
# PROFILE: FULL
# For advanced users who want everything - all tools, APIs, UIs, and servers
# Install time: ~8 minutes (if binaries already compiled)
# Disk space: ~400 MB
# =============================================================================
[profiles.full]
name = "Full"
description = "Complete Tools ecosystem - all binaries, APIs, UIs, and servers"
use_case = "Production deployments, team environments, comprehensive toolkit, dependency management"
installation_time = "~8 minutes"
disk_space_estimate = "420 MB"
target_count = 10
[[profiles.full.targets]]
name = "dependency-manager"
required = true
reason = "CLI for dependency synchronization and management"
[[profiles.full.targets]]
name = "tracking"
required = true
reason = "CLI for tracking"
[[profiles.full.targets]]
name = "tracking-api"
required = true
reason = "REST API for tracking"
[[profiles.full.targets]]
name = "doc-lifecycle"
required = true
reason = "CLI for documentation"
[[profiles.full.targets]]
name = "doc-syntaxis-mcp"
required = true
reason = "MCP server for AI integration"
[[profiles.full.targets]]
name = "presgen"
required = true
reason = "CLI for presentations"
[[profiles.full.targets]]
name = "syntaxis"
required = true
reason = "CLI for syntaxis"
[[profiles.full.targets]]
name = "syntaxis-api"
required = true
reason = "REST API for syntaxis"
[[profiles.full.targets]]
name = "syntaxis-dashboard"
required = true
reason = "Web dashboard for project visualization"
[[profiles.full.targets]]
name = "syntaxis-tui"
required = true
reason = "Terminal UI for project management"
[profiles.full.features]
"REST APIs" = true
"Web Dashboards" = true
"Terminal UIs" = true
"MCP Servers" = true
description = "Full profile includes all Tools binaries, APIs, dashboards, and servers"
[profiles.full.ports]
"tracking-api" = 8080
"syntaxis-api" = 8081
"syntaxis-dashboard" = 3000
[profiles.full.recommended_order]
description = "Recommended installation order to satisfy dependencies"
order = [
"dependency-manager",
"tracking",
"tracking-api",
"doc-lifecycle",
"doc-syntaxis-mcp",
"presgen",
"syntaxis",
"syntaxis-api",
"syntaxis-tui",
"syntaxis-dashboard",
]
# =============================================================================
# INSTALLATION INSTRUCTIONS BY PROFILE
# =============================================================================
[instructions]
[instructions.minimal]
description = """
Minimal Profile Installation
This profile installs the essential CLI tools:
1. tracking - Change and TODO tracking
2. doc-lifecycle - Documentation management
3. presgen - Presentation generator
4. syntaxis - syntaxis management
Each is independent and can be used standalone.
Installation:
nu scripts/target-manager.nu install --profile minimal
Or install individually:
cargo install --path /Users/Akasha/Tools/tracking-manager/crates/tracking-cli
cargo install --path /Users/Akasha/Tools/doc-syntaxis/crates/doc-syntaxis-cli
cargo install --path /Users/Akasha/Tools/presentation-generator/cli
cargo install --path /Users/Akasha/Tools/syntaxis/crates/syntaxis-cli
Verify installation:
tracking --help
doc-lifecycle --help
presgen --help
syntaxis --help
"""
[instructions.developer]
description = """
Developer Profile Installation
This profile installs CLI tools + REST APIs:
- CLIs: tracking, doc-lifecycle, presgen, syntaxis
- APIs: tracking-api (port 8080), syntaxis-api (port 8081)
- TUI: syntaxis-tui for terminal UI
Use this if you want to test APIs locally or use terminal interfaces.
Installation:
nu scripts/target-manager.nu install --profile developer
Verify installation:
tracking --help
tracking-api --help # Check API is available
syntaxis-api --help # Check lifecycle API is available
syntaxis-tui --help # Check TUI is available
Start APIs (in separate terminals):
tracking-api
syntaxis-api
"""
[instructions.full]
description = """
Full Profile Installation
This profile installs ALL Tools binaries (9 total):
- 4 CLI tools
- 2 REST API servers
- 1 Terminal UI
- 1 Web dashboard
- 1 MCP server for AI integration
Use this for production deployments or if you want everything available.
Installation:
nu scripts/target-manager.nu install --profile full
This will install all targets. Some may take longer due to compilation.
Port assignments (if running servers):
- tracking-api: port 8080
- syntaxis-api: port 8081
- syntaxis-dashboard: port 3000
Verify installation:
nu scripts/target-manager.nu status # List all installed targets
"""
# =============================================================================
# PROFILE SELECTION GUIDE
# =============================================================================
[selection_guide]
how_to_choose = """
Choose your profile based on your use case:
1. MINIMAL - Best for:
- New users learning Tools ecosystem
- CI/CD pipelines (lightweight)
- Simple project tracking
- Basic documentation management
2. DEVELOPER - Best for:
- Local development and testing
- API testing and integration work
- Advanced terminal-based workflows
- Multiple tools working together
3. FULL - Best for:
- Production deployments
- Team environments
- Maximum functionality available
- Running services and dashboards
4. CUSTOM - Best for:
- Specific tool combinations
- Testing individual targets
- Advanced configurations
"""
recommendation_by_role = """
By Role:
Junior Developer:
→ Recommended: minimal
→ Start with: tracking, doc-lifecycle
Senior Developer:
→ Recommended: developer or full
→ Want: APIs and TUIs for advanced work
DevOps/SRE:
→ Recommended: full
→ Need: APIs, dashboards, monitoring
Project Manager:
→ Recommended: minimal + syntaxis-dashboard
→ Focus: syntaxis, syntaxis-dashboard
Documentation Specialist:
→ Recommended: minimal + doc-syntaxis-mcp
→ Focus: doc-lifecycle, doc-syntaxis-mcp
"""
# =============================================================================
# UNINSTALL GUIDE
# =============================================================================
[uninstall]
description = "How to uninstall targets"
command = "cargo uninstall {binary_name}"
example = "cargo uninstall tracking"
list_installed = "ls ~/.cargo/bin/ | grep -E 'tracking|doc-lifecycle|presgen|lifecycle|project'"