Commit Graph
159 Commits
Author SHA1 Message Date
Juan Denis 2d6d6dc798 plan(13): Create Phase 13 plan - Environment Switching UI 2026-01-19 10:37:41 -05:00
Juan Denis da014edba0 docs(12): Complete Phase 12 - Multi-Environment App Linking 2026-01-19 10:33:42 -05:00
Juan Denis 65d1fbef77 feat(12): Update app list response to include environment info and filtering 2026-01-19 10:32:23 -05:00
Juan Denis 46f6f3a869 feat(12): Add frontend API methods for app linking 2026-01-19 10:31:51 -05:00
Juan Denis 748577149c feat(12): Add database credential propagation for linked apps 2026-01-19 10:31:16 -05:00
Juan Denis 3e4ba7007e feat(12): Add app linking API endpoints (link, unlink, get linked, update environment) 2026-01-19 10:30:15 -05:00
Juan Denis 34bee0e87b feat(12): Add environment linking fields to Application model 2026-01-19 10:29:35 -05:00
Juan Denis 2d64037f67 plan(12): Create Phase 12 plan - Multi-Environment App Linking 2026-01-19 10:27:36 -05:00
Juan Denis fb6a24e77c docs(11): Complete Phase 11 - Shared Database WordPress Template 2026-01-19 10:24:27 -05:00
Juan Denis 8d19e3f241 feat(11): Add testDatabaseConnection API method for external DB validation 2026-01-19 10:23:18 -05:00
Juan DenisandClaude Opus 4.5 b5269e88b8 feat(11): Add test-db-connection API endpoint
POST /templates/test-db-connection - validates MySQL connection
- Required: host, user, password, database
- Optional: port (default 3306)
- Returns success/error with detailed message
- Includes warning if pymysql not available

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:21:38 -05:00
Juan DenisandClaude Opus 4.5 b3187c35e5 feat(11): Add MySQL connection validation for external DB templates
- Add validate_mysql_connection() method to TemplateService
- Check port connectivity first, then full MySQL connection if pymysql available
- Falls back to port-only check if pymysql not installed
- Integrate validation into install_template() for wordpress-external-db
- Return clear error messages if database is unreachable

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:20:53 -05:00
Juan DenisandClaude Opus 4.5 ad20feff86 feat(11): Register WordPress External DB template in index
Add wordpress-external-db to templates registry with:
- Categories: cms, blog, website, development
- Description highlighting dev/prod support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:19:46 -05:00
Juan DenisandClaude Opus 4.5 733705d205 feat(11): Create WordPress External Database template
New template for WordPress with external database support:
- No bundled MySQL container
- Configurable DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWORD
- TABLE_PREFIX for multiple WordPress instances on same database
- Ideal for dev/prod environment sharing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:19:19 -05:00
Juan DenisandClaude Opus 4.5 c825bdfbcc Plan Phase 11: Shared Database WordPress Template
Tasks:
1. Create wordpress-external-db.yaml template
2. Register template in index.json
3. Add database connection validation to template_service.py
4. Add test-db-connection API endpoint
5. Add frontend API method

Enables WordPress with external DB for prod/dev sharing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:18:17 -05:00
github-actions[bot] 13d48ee499 chore: bump version to 1.2.19 [skip ci] 2026-01-19 15:15:15 +00:00
Juan Denis bb7b8d6e03 Add FileManager disk usage UI planning document
Introduces a detailed plan for Phase 9 improvements to the FileManager disk usage UI, including backend directory analysis, multi-mount support, directory and file type breakdowns, largest files listing, sidebar layout, icon updates, and responsive adjustments. Also updates frontend build output files.
2026-01-19 10:15:02 -05:00
Juan DenisandClaude Opus 4.5 170a78aa7c docs(14): Complete GitHub & Community Links phase
- Add Phase 14 SUMMARY.md with implementation details
- Update STATE.md to mark Phase 14 completed
- Update ROADMAP.md phase status

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:13:34 -05:00
Juan DenisandClaude Opus 4.5 a20d4ab362 feat(14): Add Star on GitHub prompt for new users
- Add dismissible "Star on GitHub" card in About section
- Shows for new users, remembers dismissal in localStorage
- Accent-colored design with star icon
- Links to github.com/jhd3197/ServerKit
- Mobile responsive layout

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:12:28 -05:00
Juan DenisandClaude Opus 4.5 2d32aad916 feat(14): Add GitHub link to sidebar
- Add GitHub icon link between nav and user profile
- Lucide Github icon with hover effect
- Links to github.com/jhd3197/ServerKit
- Matches sidebar aesthetic with accent color on hover

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:11:05 -05:00
Juan DenisandClaude Opus 4.5 4f5da492cc feat(14): Add version update check via GitHub releases API
Backend:
- Add /system/check-update endpoint
- Fetch latest release from GitHub API
- Compare versions and return update_available flag
- Cache results for 1 hour to respect rate limits

Frontend:
- Add checkUpdate() API method
- Add "Check for Updates" button in About section
- Show update available notification with release link
- Show "You're up to date" when current

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:09:59 -05:00
Juan DenisandClaude Opus 4.5 78bfb6a2fc feat(14): Update About section with correct GitHub links
- Fix GitHub URL to github.com/jhd3197/ServerKit
- Add Documentation link to README
- Add Support & Issues link
- Add Discussions link
- Add Report a Bug link
- Replace inline SVGs with Lucide icons

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:07:56 -05:00
Juan DenisandClaude Opus 4.5 81c7d386a4 Plan Phase 14: GitHub & Community Links
Tasks:
1. Update About section links (fix GitHub URL, add docs/support)
2. Add version update check (GitHub releases API)
3. Add GitHub link to sidebar
4. Add Star on GitHub prompt for new users

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:05:26 -05:00
Juan DenisandClaude Opus 4.5 99291eb13b chore: create Milestone 2 - Multi-Environment WordPress & Community Features
Milestone 2 (v1.1) with 5 phases:
- Phase 11: Shared Database WordPress Template
- Phase 12: Multi-Environment App Linking
- Phase 13: Environment Switching UI
- Phase 14: GitHub & Community Links
- Phase 15: WordPress Dev Workflow Testing

Goals:
- Create WordPress template with external DB support
- Enable prod/dev environment linking with shared database
- Add environment switching UI with theme sync
- Add GitHub repository and community resource links

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 09:58:42 -05:00
Juan DenisandClaude Opus 4.5 208860763f chore: archive Milestone 1 (v1.0)
- Archive milestone to .planning/milestones/v1.0-ROADMAP.md
- Collapse ROADMAP.md to one-line summary with link
- Update PROJECT.md with current shipped state
- Mark Phase 10 as skipped in STATE.md

Milestone 1 delivered:
- Docker/Domain debugging infrastructure
- Private URL system
- Dashboard historical metrics
- Templates, Applications, FileManager UI polish

109 commits | 94 files | +14,667/-2,836 lines

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 09:54:54 -05:00
Juan DenisandClaude Opus 4.5 5fd7f0e277 docs(9): Add Phase 9 summary and update STATE.md
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 09:49:00 -05:00
Juan DenisandClaude Opus 4.5 135f0536be feat(9): Add FileManager disk usage visualization and analysis
Frontend:
- Multi-mount disk usage widget in collapsible sidebar
- Directory analysis panel with horizontal bar charts
- File type breakdown with Recharts PieChart
- Largest files list with click-to-select
- Lucide icons replacing all emoji file icons
- Responsive layout with mobile sidebar slide-in
- localStorage persistence for sidebar/disk states
- API methods: getAllDiskMounts, analyzeDirectory, getFileTypeBreakdown

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 09:46:53 -05:00
Juan DenisandClaude Opus 4.5 4c7f551936 feat(9): Add backend directory analysis and disk mount endpoints
- Add get_all_disk_mounts() using psutil for multi-mount support
- Add analyze_directory_sizes() for directory size analysis
- Add get_file_type_breakdown() for file categorization by type
- Add recursive helpers with depth limits for performance
- New endpoints: /files/disk-mounts, /files/analyze, /files/type-breakdown

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 09:42:24 -05:00
Juan DenisandClaude Opus 4.5 b8e083cf74 docs(8): Add Phase 8 summary and update STATE.md
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:19:48 -05:00
Juan DenisandClaude Opus 4.5 9cdaf73295 feat(8): Polish applications UI with icons, sorting, grid view, and bulk actions
- Replace inline SVGs with Lucide React icons throughout
- Add sorting options: name (A-Z/Z-A), status, type, created date
- Add grid/list view toggle with localStorage persistence
- Add bulk selection with checkboxes and bulk action bar
- Add ConfirmModal component for destructive actions
- Improve status badges with animated pulse for running apps
- Add search filter for applications by name/type
- Enhance app cards with port, domain count, container info
- Add URL param persistence for search and sort filters
- Mobile responsive styles with collapsible toolbar

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:18:55 -05:00
Juan DenisandClaude Opus 4.5 e8bf34806d Plan Phase 8: Applications UI Polish
Create execution plan with 8 tasks:
- Add Lucide icons to action buttons
- Add sorting options (name, status, type, created)
- Add grid/list view toggle with persistence
- Add bulk selection and actions
- Create confirmation modal for destructive actions
- Improve status indicators with animation
- Add search filter to applications list
- Improve app cards with more info

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:13:23 -05:00
github-actions[bot] fcce0f8e19 chore: bump version to 1.2.18 [skip ci] 2026-01-19 08:08:26 +00:00
Juan Denis c89cee04a8 Update asset references in index.html
Updated script and stylesheet references in index.html to point to the latest built asset files.
2026-01-19 03:08:16 -05:00
github-actions[bot] 2afe84ca18 chore: bump version to 1.2.17 [skip ci] 2026-01-19 08:08:03 +00:00
Juan Denis e6f345f4ea Merge branch 'main' of https://github.com/jhd3197/ServerKit 2026-01-19 03:07:55 -05:00
Juan DenisandClaude Opus 4.5 3537aca2d5 fix: Add missing @bg-secondary and @bg-tertiary variables
Variables were used in private-url styles but not defined.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:07:44 -05:00
github-actions[bot] 6bc60269de chore: bump version to 1.2.16 [skip ci] 2026-01-19 08:06:41 +00:00
Juan DenisandClaude Opus 4.5 97b6d4b49d fix: Add missing @bg-elevated variable
The variable was used in metrics-graph and templates styles
but not defined in the variables file, causing build failure.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:05:54 -05:00
Juan DenisandClaude Opus 4.5 a11962d829 docs(7): Complete Templates Page Polish phase
- Create SUMMARY.md with implementation details
- Update STATE.md marking Phase 7 complete
- Update ROADMAP.md status

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:04:22 -05:00
Juan DenisandClaude Opus 4.5 342b660f32 feat(7): Polish templates page with icons, filters, and sorting
- Add Lucide icon mappings for all 60+ templates as fallbacks
- Track failed icon loads and gracefully switch to fallbacks
- Persist filters (category, search, sort) in URL params
- Add active filter chips with remove buttons and "Clear All"
- Add featured badge for curated templates (10 featured)
- Enhanced template cards with version styling, link indicators
- Improved modal with requirements section, section icons
- Add search icon to search input with clear button
- Add results count and sort dropdown (A-Z, Z-A, Featured)
- Responsive styles for mobile

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 03:03:07 -05:00
Juan DenisandClaude Opus 4.5 cb5e4b77b0 Plan Phase 7: Templates Page Polish
Create execution plan with 8 tasks:
- Add Lucide icon mappings as fallback
- Icon error handling with state
- URL param persistence for filters
- Active filter chips with clear button
- Enhanced template cards
- Improved detail modal
- Search icon styling
- Results count and sort options

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:58:54 -05:00
github-actions[bot] 53b8808aca chore: bump version to 1.2.15 [skip ci] 2026-01-19 07:56:34 +00:00
Juan Denis 967114428d Merge branch 'main' of https://github.com/jhd3197/ServerKit 2026-01-19 02:56:25 -05:00
Juan DenisandClaude Opus 4.5 453697a2d2 docs: Complete Phase 6 - Dashboard Historical Metrics
- Create Phase 6 SUMMARY.md with implementation details
- Update STATE.md marking Phase 6 complete
- Document API response format and file changes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:56:07 -05:00
Juan DenisandClaude Opus 4.5 acbf79abf6 Add styles for MetricsGraph component
- Create _metrics-graph.less with chart card styling
- Support for loading, error, and empty states
- Tooltip styling matching design system
- Summary row for averages display
- Legend and responsive breakpoints

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:54:57 -05:00
Juan DenisandClaude Opus 4.5 900ac73b7a Integrate MetricsGraph into Dashboard
Add historical metrics graph component below the real-time metrics
cards on the dashboard for trend visualization.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:54:00 -05:00
Juan DenisandClaude Opus 4.5 131757fe07 Add MetricsGraph component for historical metrics
- Create MetricsGraph component with LineChart visualization
- Support multiple time periods (1h, 6h, 24h, 7d, 30d)
- Show CPU, Memory, and Disk trends with averages
- Compact and full display modes
- Add API methods for metrics history endpoints

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:53:33 -05:00
Juan DenisandClaude Opus 4.5 189dead603 Add metrics API endpoints and auto-start collection
- Create metrics API blueprint with history, stats, and collection
  control endpoints
- Register blueprint at /api/v1/metrics
- Auto-start background metrics collection on app startup

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 02:51:58 -05:00
Juan Denis d6f0ee9b8f feat(phase6): add MetricsHistoryService for data collection
Service provides metrics recording, querying by period, automatic
aggregation (minute to hour/day), and retention-based cleanup.
2026-01-19 02:50:17 -05:00
Juan Denis 8a54630124 feat(phase6): add MetricsHistory model for historical metrics
SQLite model with aggregation levels (minute/hour/day) for storing
CPU, memory, disk metrics with composite indexes for efficient queries.
2026-01-19 02:49:15 -05:00