19 Commits

Author SHA1 Message Date
75d42c70bc disable commit poller for now 2025-11-13 14:37:51 -05:00
ae7835f72c demo1 2025-11-13 04:20:40 -05:00
10835adf5d demo1 2025-11-13 04:16:38 -05:00
8ff80ff439 readme 2025-11-13 03:53:14 -05:00
5ce07814f1 demo photos 2025-11-13 03:36:00 -05:00
d74e4ac5a2 Add real-time pipeline status and health monitoring
Features:
- Fix pipeline visualization to show real deployment status
- Add project sidebar with status indicators
- Implement container restart without rebuild (Start button)
- Add health checker to detect port mismatches and bad gateway errors
- Fix deployment API routes (/deployments/:id/start, /stop)

Backend changes:
- Add health_status column to deployments table
- Create healthChecker service for monitoring deployment health
- Fix missing database columns (error_message, error_type, health_status)
- Update projects API to include deployments array
- Add smart container restart logic (start existing or create new)

Frontend changes:
- Add left sidebar with minimal project list and status dots
- Update pipeline to show Traefik errors based on health checks
- Fix button event handlers with stopPropagation
- Change navbar "Projects" to "Home"
- Keep original vertical card layout

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 03:31:58 -05:00
3da3504152 Add GitHub commit polling for new commit detection
Implements local polling-based commit detection without requiring webhooks or public endpoints. Perfect for local development workflow.

Backend Changes:
- Added commit tracking columns to projects table:
  * latest_commit_sha: SHA of latest commit on branch
  * latest_commit_message: Commit message preview
  * latest_commit_author: Commit author name
  * latest_commit_date: Commit timestamp
  * last_commit_check: Last time commits were checked
- Created commitPoller service that:
  * Polls all projects every 60 seconds (configurable)
  * Uses GitHub API to check for new commits on tracked branch
  * Compares latest remote commit with deployed commit
  * Updates project with latest commit information
- Integrated poller into server lifecycle (start/stop)

Frontend Changes:
- Enhanced pipeline to detect new commits:
  * Compares project.latest_commit_sha with deployment.commit_sha
  * Shows yellow warning in GitHub stage when new commit detected
  * Displays commit message preview (first 50 chars)
  * Action button: "Deploy new?" for one-click deployment
- New commit detection shown when deployment is running or stopped
- Does not interfere with active builds/deployments

Benefits:
- Works entirely locally without exposing ports
- No webhook configuration required
- Uses existing GitHub access tokens
- Real-time commit awareness within 60 seconds
- Helps catch commits before pushing to production
- Perfect for intermediate testing step before Railway deployment
2025-11-13 07:06:27 +00:00
9d3b6f4bfc Redesign WebUI with brutalist aesthetic and horizontal pipeline view
- Updated CSS to match landing.html style (Courier New, silver background, black borders)
- Replaced grid layout with vertical stack for project cards
- Added horizontal pipeline view showing GitHub, Build, Docker, Deploy, and Traefik stages
- Each pipeline stage displays real-time status with color coding:
  * Green (success) - stage completed successfully
  * Yellow (warning) - action required or pending
  * Red (error) - stage failed with error message
  * Blue (active) - stage currently in progress
  * Gray (idle) - stage not yet started
- Added error tracking to deployments table (error_message and error_type columns)
- Implemented smart error detection for:
  * Build errors (missing Dockerfile, npm/yarn/pip failures, disk space, etc.)
  * Deployment errors (port conflicts, image not found, network issues, container exits)
  * Traefik routing errors
- Updated buildEngine and deploymentService to categorize and store error messages
- Frontend displays specific error messages in failed pipeline stages
- Interactive pipeline actions (e.g., "Deploy now?", "Start?")
- Removed modern effects (shadows, rounded corners, transitions) for brutalist look
- All styling now uses solid black borders and simple backgrounds
- Maintained all existing functionality (logs, env vars, volumes, etc.)
2025-11-13 06:58:11 +00:00
dee87f189e volume storage 2025-11-12 03:30:00 -05:00
62480aebc5 cleanup 2025-11-12 03:19:53 -05:00
df56ced3cf Merge changes from claude/implement-plan-no-emojis-011CV3ZrsKghPPAJ8LsF6VHe 2025-11-12 03:15:26 -05:00
95ca23bc0a Implement comprehensive PaaS enhancements
This commit implements all features outlined in PLAN.md:

Phase 1 - High Priority:
- Landing page with retro early 2000s design aesthetic
- Volume storage system with Docker volume management
- File upload/download/browse capabilities for volumes
- Health monitoring with Docker, DB, and Traefik checks
- Orphaned container detection and cleanup

Phase 2 - Medium Priority:
- Build queue system with concurrent build limits
- Automatic retry with exponential backoff
- Resource limits (CPU and memory) per project
- Deployment rollback functionality
- Image history management and cleanup
- Centralized logging with secret masking

Phase 3 - Low Priority:
- Webhook support for GitHub auto-deployment
- Branch filtering for webhooks
- Build cache optimization using previous images
- Configuration file support (minipaas.config.js)
- Enhanced secrets management with auto-detection
- Secret masking in environment variables

Additional Improvements:
- Updated server.js with all new routes and services
- Added health monitor service integration
- Implemented landing page routing based on auth
- Enhanced database schema with new tables and columns
- Added multer dependency for file uploads
- Created comprehensive API endpoints for all features
- Updated README with new features (removed emojis)
- Created IMPLEMENTATION_SUMMARY.md documentation

Database Changes:
- Added volumes and volume_files tables
- Added webhooks table for event tracking
- Enhanced projects table with resource limits
- Enhanced deployments table with rollback support
- Enhanced env_vars table with secret flags
- Added teams tables for future multi-user support

All changes are backward compatible with safe migrations.
No emojis used in code or UI as requested.
2025-11-12 07:12:56 +00:00
8f923bf603 fix logs, enable real-time status updates, and persist sessions 2025-11-12 01:58:19 -05:00
b7a301dc20 Add deployment flow diagram to README 2025-11-11 15:03:22 -05:00
4b2b932a4a Add shield badges and screenshots to README 2025-11-11 14:47:16 -05:00
da3f8e88e0 Add MIT License 2025-11-11 14:44:05 -05:00
2153441a8d working rough draft 2025-11-11 14:42:02 -05:00
f5ac1005e2 Initial implementation of miniPaaS platform
Complete implementation including:
- Docker Compose setup with PostgreSQL and Traefik
- Express.js backend with full API endpoints
- GitHub OAuth integration
- Docker build engine with automatic Dockerfile generation
- Deployment service with Traefik routing
- Real-time log streaming via WebSocket
- Analytics collection and visualization
- Environment variable management with encryption
- Professional dark-themed web dashboard
- Project, deployment, logs, analytics, and settings UI
- Comprehensive README with setup instructions

Tech stack: Node.js, Express, PostgreSQL, Docker, Traefik, WebSocket, Chart.js
2025-11-11 18:49:02 +00:00
d93d701d43 plan 2025-11-11 13:30:03 -05:00