Files
dashcaddy/status/js/README.md
Sami f61e85d9a7 Initial commit: DashCaddy v1.0
Full codebase including API server (32 modules + routes), dashboard frontend,
DashCA certificate distribution, installer script, and deployment skills.
2026-03-05 02:26:12 -08:00

41 lines
1.4 KiB
Markdown

# DashCaddy Onboarding System
This directory contains the JavaScript modules for the user onboarding tooltip system.
## Files
- **onboarding.js** - Main entry point, initializes the onboarding system
- **tour-manager.js** - Orchestrates the onboarding flow and manages tour state
- **progress-tracker.js** - Manages persistent storage of user progress
- **tooltip-definitions.js** - Defines all tooltip content and positioning
- **dns-template-selector.js** - Presents DNS server template options
- **theme-adapter.js** - Ensures tooltips match the current dashboard theme
## Load Order
The scripts are loaded in the following order (as defined in status/index.html):
1. progress-tracker.js
2. theme-adapter.js
3. tooltip-definitions.js
4. dns-template-selector.js
5. tour-manager.js
6. onboarding.js (main initialization)
## Dependencies
- **Driver.js** - Loaded from CDN (https://cdn.jsdelivr.net/npm/driver.js@1.3.1/)
- Dashboard CSS variables (for theming)
- Browser localStorage API (for progress tracking)
## Integration
The onboarding system integrates with:
- Dashboard theme system (via CSS variables)
- App template selector (for DNS server deployment)
- Local storage (for progress persistence)
## Development
Each module is wrapped in an IIFE (Immediately Invoked Function Expression) to avoid global namespace pollution. Modules communicate through well-defined interfaces and the window object where necessary.