Commit Graph
383 Commits
Author SHA1 Message Date
github-actions[bot] deb29d3678 chore: bump version to 1.2.83 [skip ci] 2026-02-10 21:33:19 +00:00
Juan Denis 926c2f3afd CI: set noninteractive env and harden install step
Set DEBIAN_FRONTEND=noninteractive to prevent interactive prompts during image package installs, add shell: bash for the Install step, and normalize command -v checks/redirection so package manager detection and installs behave more reliably. Also remove excessive suppression of apt-get update/install output to surface failures; the pip3 pytest install fallback remains unchanged.
2026-02-10 16:33:10 -05:00
Juan Denis d5f6e13d04 Move EXPECTED_MANAGER check into pytest test
Remove the inline "Verify expected package manager" step from the GitHub Actions workflow and add a pytest in backend/tests/test_utils_system_integration.py. The new test (test_matches_expected_manager_from_ci) reads EXPECTED_MANAGER from the environment, skips when not set, and asserts PackageManager.detect() matches the expected value. This consolidates the CI verification into the test suite and simplifies the workflow.
2026-02-10 16:03:19 -05:00
github-actions[bot] 7f80932c87 chore: bump version to 1.2.82 [skip ci] 2026-02-10 13:26:04 +00:00
Juan Denis 02797c891f Add system utils CI workflow and integration tests
Introduce a new GitHub Actions workflow (.github/workflows/test-system-utils.yml) that runs unit tests, distro-based integration tests in container images (ubuntu, debian, fedora, rocky) to validate package manager and systemctl detection, and an audit job that greps migrated service files for raw subprocess patterns. Add backend/tests/test_utils_system_integration.py: Linux-only integration smoke tests that directly import backend/app/utils/system.py (avoiding Flask deps) to verify PackageManager detection, command availability, and basic ServiceControl behavior. Designed for CI verification of system utilities across real distros.
2026-02-10 08:25:54 -05:00
github-actions[bot] 401fd71402 chore: bump version to 1.2.81 [skip ci] 2026-02-10 13:09:51 +00:00
Juan Denis 06de896175 Use system utils for commands and services
Refactor services to use centralized system helpers (ServiceControl, PackageManager, run_privileged, is_command_available) instead of ad-hoc subprocess/os calls. Updated deployment, firewall, ftp, nginx, php, python, security, and ssl services to call the new utilities and added error/timeout handling improvements and package manager abstraction. Added backend/app/utils/system.py implementing the helpers and backend/tests/test_utils_system.py with unit tests. This centralizes privileged command execution and service/package management, simplifying tests and platform differences.
2026-02-10 08:09:38 -05:00
github-actions[bot] befcdb9e9e chore: bump version to 1.2.80 [skip ci] 2026-02-10 07:27:40 +00:00
Juan Denis e9277bb3fa Relocate language links in README files
Move the language selection links from the top center of the README and localized docs into the area below the project description to improve header spacing and layout. Updated README.md and docs/README.es.md, docs/README.pt.md, docs/README.zh-CN.md accordingly.
2026-02-10 02:27:30 -05:00
github-actions[bot] e1fe2a290e chore: bump version to 1.2.79 [skip ci] 2026-02-10 07:24:31 +00:00
Juan Denis d2b9877d74 Revamp README and add translations
Major overhaul of README.md: reorganized layout and sections (features, screenshots, quick start, architecture, roadmap, tech stack, docs, contributing, community), updated badges and visuals, simplified install instructions, and added architecture diagram and roadmap. Added translated documentation files: docs/README.es.md, docs/README.pt.md, and docs/README.zh-CN.md.
2026-02-10 02:24:21 -05:00
github-actions[bot] 79c397fa69 chore: bump version to 1.2.78 [skip ci] 2026-02-09 04:14:22 +00:00
Juan Denis caa799ba1b Replace jwt_required with RBAC, use socket auth
Replace generic @jwt_required() usage with role-based decorators and switch Socket.IO token handling to the auth payload.

- Replace jwt_required with viewer_required/admin_required across API modules (backend/app/api/cron.py, firewall.py, ftp.py, git.py, metrics.py) and update imports accordingly.
- Require JWT for previously public system/private endpoints (backend/app/api/system.py, private_urls.py).
- Change Socket.IO server connection handler to accept auth payload and read token from auth (backend/app/sockets.py) to avoid token leakage in query strings.
- Update frontend clients to send token via socket auth instead of query (frontend/src/pages/WordPressProject.jsx, frontend/src/services/socket.js).

These changes add finer-grained RBAC control for endpoints and improve socket auth security by removing tokens from URLs/logs.
2026-02-08 23:14:13 -05:00
github-actions[bot] 62fda16976 chore: bump version to 1.2.77 [skip ci] 2026-01-29 03:31:56 +00:00
Juan Denis fc02f40636 Add tracking for install, update, and uninstall events
Added calls to serverkit.ai to track successful installation, update, and uninstall events with the current version. This helps monitor usage and improve support.
2026-01-28 22:31:46 -05:00
github-actions[bot] 1e8afb7a43 chore: bump version to 1.2.76 [skip ci] 2026-01-29 03:16:15 +00:00
Juan Denis e36c3247b3 Add multi-site WordPress management and UI overhaul
Introduces backend endpoints and service logic for managing multiple WordPress sites and their environments (production, staging, development). Updates frontend to display a grid of WordPress sites, enable site creation via modal, and refactors the WordPress page UI for multi-site support. Adds environment creation controls, improves environment modal logic, and enhances styles for the new layout. Also adds wp-cli.phar to backend for WordPress management.
2026-01-28 22:15:57 -05:00
Juan Denis 5113c85e99 Add configurable dev paths and centralize path management
Introduces backend/app/paths.py to centralize all key directory paths, allowing overrides via environment variables for local development. Updates all backend services and APIs to use these centralized paths instead of hardcoded values. Adds dev path override examples to backend/.env.example and updates .gitignore to exclude dev-data. Also changes frontend dev server port to 5274 and updates related scripts and CORS settings for consistency.
2026-01-28 21:12:55 -05:00
github-actions[bot] 205a241983 chore: bump version to 1.2.75 [skip ci] 2026-01-28 03:08:09 +00:00
Juan Denis f0ccfea160 Add lightweight auto-migration for missing DB columns
Introduces an _auto_migrate_columns function in app initialization to automatically add missing columns to existing tables. Refactors the CLI migrate_db command to use a unified expected columns list and checks both 'applications' and 'wordpress_sites' tables for missing columns, improving consistency and reducing manual migration steps.
2026-01-27 22:07:59 -05:00
github-actions[bot] 27350d2195 chore: bump version to 1.2.74 [skip ci] 2026-01-28 02:54:19 +00:00
Juan Denis df1cc3b117 Enhance uninstall script with detailed cleanup steps
Expanded the uninstall process to explicitly list all components and directories that will be removed, including nginx configs and ServerKit-specific data. Added informational messages and ensured nginx is reloaded if necessary. Clarified that system packages are not removed automatically.
2026-01-27 21:54:14 -05:00
github-actions[bot] 10e9d97e8f chore: bump version to 1.2.73 [skip ci] 2026-01-28 02:28:19 +00:00
Juan Denis a706829a50 Add onboarding wizard and developer mode features
Introduces a multi-step onboarding wizard for initial server setup, including admin account creation, use case selection, resource tier display, and summary. Adds backend support for onboarding completion and use case storage. Implements developer mode toggle in settings, exposing an icon reference panel. Updates styles and refactors related frontend logic for setup and settings pages.
2026-01-27 21:25:15 -05:00
Juan Denis 3ca6bd23a9 Update template icons and enhance sidebar user menu
Switched all template icon URLs to use local /serverkit.ai/imgs/template-icons/ assets for consistency and reliability. Improved the Sidebar component with a new user context menu featuring theme switching, settings navigation, and logout, along with conditional display of the WordPress pipeline link. Added and updated related styles for the sidebar, user menu, and page headers, and introduced new theme variables for code/terminal backgrounds.
2026-01-27 20:53:57 -05:00
Juan Denis cf7ccf8af3 Add WordPress environment pipeline API and models
Introduces a comprehensive REST API for WordPress multi-environment management, including endpoints for project listing, environment CRUD, promotion, sync, comparison, locking, activity logs, container logs, resource limits, basic auth, WP-CLI, health checks, disk usage, bulk operations, and auto-sync scheduling. Adds new models for environment activity, promotion jobs, and sanitization profiles, and integrates auto-sync scheduling into the app startup. Updates model imports and registration to include the new models.
2026-01-27 19:35:21 -05:00
github-actions[bot] 352d182a4f chore: bump version to 1.2.72 [skip ci] 2026-01-26 04:29:28 +00:00
Juan Denis 1fa188b221 Update .dockerignore to exclude more frontend files
Added src, public, package*.json, vite.config.js, eslint.config.js, and index.html to .dockerignore to prevent these files from being included in Docker builds. This helps reduce image size and ensures only necessary files are copied.
2026-01-25 23:29:18 -05:00
github-actions[bot] 3f5895a559 chore: bump version to 1.2.71 [skip ci] 2026-01-26 04:27:45 +00:00
Juan Denis 0b7dcf69cf Build frontend on host to avoid Docker memory issues
Updates the Dockerfile to expect pre-built assets and modifies install.sh to install Node.js, ensure swap space, and build the frontend on the host before packaging it into the nginx container. This approach addresses memory limitations on low-RAM VPS servers during the Vite build process.
2026-01-25 23:27:31 -05:00
github-actions[bot] 7d4886412d chore: bump version to 1.2.70 [skip ci] 2026-01-26 04:16:04 +00:00
Juan Denis 93eccda09c Optimize frontend Docker build and Vite config
Added .dockerignore to reduce build context size. Increased Node.js memory limit during frontend build in Dockerfile. Updated Vite config to split vendor chunks for better caching and performance. Modified install.sh to use 'docker container prune' and removed '--no-cache' from compose build for efficiency.
2026-01-25 23:15:50 -05:00
github-actions[bot] a0591c3ae6 chore: bump version to 1.2.69 [skip ci] 2026-01-26 03:48:23 +00:00
Juan Denis 06d63cbc52 Add standalone WordPress and SSL management UI
Implements backend endpoints and service logic for managing standalone WordPress via Docker, including install, uninstall, start, stop, and restart. Adds Nginx integration for WordPress at /wordpress. Introduces a new frontend page for SSL certificate management with Certbot install, obtain, renew, and revoke actions. Updates the WordPress frontend page to support one-click install, status, and lifecycle management. Updates documentation and install instructions for improved clarity.
2026-01-25 22:48:12 -05:00
Juan Denis 30abb2fdfa Revamp dashboard UI and metrics graph, add animated star
Redesigns the dashboard top bar with a live ticking clock, improved refresh controls, and clearer server details. The metrics graph now supports disk usage, auto-zooms Y-axis, and uses stepAfter lines for clarity. Sidebar features a new animated GitHub star button with custom CSS animations. Updates styles for branding, chart, and layout consistency. Minor text and icon changes for clarity (e.g., 'Memory' to 'RAM', 'Processor Load' to 'CPU').
2026-01-25 22:00:17 -05:00
Juan Denis c7444a88f5 Add resource tier enforcement and UI for WordPress creation
Introduces backend logic to determine server resource tier and block WordPress site creation on insufficient resources (lite tier). Adds ResourceTierContext and ResourceGate component to the frontend, displaying a UI warning and disabling creation actions when requirements are not met. Updates WordPress page and styles to integrate the new resource gating mechanism.
2026-01-25 20:01:07 -05:00
github-actions[bot] a0f75ab2d4 chore: bump version to 1.2.68 [skip ci] 2026-01-25 23:33:59 +00:00
Juan Denis 6bcbcab56a Add unified dev scripts and improve login UX
Moved and improved development helper scripts for better cross-platform support, including WSL and Docker. Updated backend login to accept username or email, and updated frontend login form accordingly. Enhanced backend and frontend dev server compatibility for WSL. Updated documentation for streamlined setup and usage.
2026-01-25 18:33:25 -05:00
github-actions[bot] 42bcbed19d chore: bump version to 1.2.67 [skip ci] 2026-01-25 22:12:03 +00:00
Juan Denis 965428d48b Add border-hover variable and update style aliases
Introduces a new border-hover variable to theme and variable files for consistent hover styling. Adds several color and font alias variables for improved maintainability. Also fixes usage of raw color variables in WordPress page styles for correct color rendering.
2026-01-25 17:11:49 -05:00
github-actions[bot] f2216a9981 chore: bump version to 1.2.66 [skip ci] 2026-01-25 21:59:00 +00:00
Juan Denis e3d60775fa Redirect WordPress apps to dedicated page and refactor
Redirects WordPress applications to a dedicated /wordpress page from ApplicationDetail, Applications, and Templates. Removes WordPress-specific tabs and logic from ApplicationDetail and moves all WordPress API methods out of api.js, indicating use of a dedicated wordpress.js service. This centralizes WordPress management and simplifies the main application detail logic.
2026-01-25 16:58:43 -05:00
Juan Denis f4ed11ceaf Add WordPress site management API and models
Introduces backend API endpoints for WordPress site management, including site creation, environment handling, database snapshots, sync, and Git integration. Adds new models for WordPressSite, DatabaseSnapshot, and SyncJob, and registers the new blueprint. Updates frontend with new WordPress pages, components, and styles to support these features.
2026-01-25 16:47:04 -05:00
github-actions[bot] e7ed4124e5 chore: bump version to 1.2.65 [skip ci] 2026-01-25 20:15:23 +00:00
Juan Denis f13af94f3e Refine theme colors and UI details
Updated secondary and tertiary text colors for improved contrast and consistency. Introduced a CSS variable for grid color and applied it to the main content background. Removed the unused density settings from the appearance settings page. Enhanced color usage in the downloads page for better readability. Sidebar promo tag now uses a star icon.
2026-01-25 15:13:35 -05:00
github-actions[bot] eef0a3b92e chore: bump version to 1.2.64 [skip ci] 2026-01-25 19:28:18 +00:00
Juan Denis d2e5fdd6d6 Update default GitHub repo for agent releases
Changed the default value of SERVERKIT_GITHUB_REPO from 'serverkit/serverkit' to 'jhd3197/ServerKit' to point to the new repository for agent release checks.
2026-01-25 14:28:08 -05:00
github-actions[bot] 46c466103b chore: bump version to 1.2.63 [skip ci] 2026-01-25 19:00:12 +00:00
Juan Denis 1140856346 Redesign sidebar layout and styles
Refactored Sidebar.jsx to update markup for a cleaner, more professional look, including new class names, improved navigation structure, and a revised footer with a GitHub promo button. Updated _sidebar.less to match the new layout, enhance navigation and user profile styling, and improve overall sidebar appearance and UX.
2026-01-25 14:00:00 -05:00
Juan Denis 78c8300770 Add runtime theme switching and ThemeContext
Introduces a ThemeContext for managing theme state and switching between dark, light, and system themes. Adds CSS custom properties for theme variables, updates LESS files to use theme-sensitive variables, and refactors frontend to support runtime theme changes. Also updates .env.example files to include SERVERKIT_GITHUB_REPO.
2026-01-25 13:53:30 -05:00