Changelog
All notable changes to dployr are documented in this file.
This changelog intelligently merges updates from all dployr components:
- dployr - Main CLI and daemon
- dployr-base - Control plane
- dployr-web - Web dashboard
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
TIP
For detailed commit history, visit the respective repositories: dployr • dployr-base • dployr-web
Last Updated
May 8, 2026 at 11:23 PM UTC
🎉 Version 0.6.x
Stable Release • 2026-04-28
Component Versions
🚀 Features
- [dployrd] (install) Enhance Caddy installation with systemd and launchd support
- [dployrd] (install) Add Caddy restart logic after directory ownership changes
- [dployrd] (install) Enhance caddy service check with restart logic if inactive
- [dployrd] (install) Add Docker installation logic if not present
- [dployrd] (install) Implement run_privileged function for privileged command execution
- [dployrd] (install) Enhance help message and add install option for dev servers to connect to dev base
- [dployrd] (install) Improve error handling for Caddy installation steps
- [dployrd] (install) Enhance user creation logic to include docker group if it exists
- [dployrd] (install) Improve apt command handling by redirecting input to avoid blocking
- [dployrd] (install) Remove default base URL for improved flexibility
- [dployrd] (auth) Add logger to ObtainNodeTokenWithBackoff for improved error handling
- [dployrd] (api) Simplify supported runtime types
- [dployrd] (core) Add docker runtime support and service types
- [dployrd] (install) Add Docker command permissions to sudoers configuration
- [dployrd] (install) Add docker group to dployrd user creation and modification
- [dployrd] (deploy) Implement dynamic Dockerfile generation and runtime templates
- [dployrd] (worker) Integrate proxy route registration after deployment
🐛 Bug Fixes
- [dployrd] (install) Improve error logging for instance registration failures
🚜 Refactor
- [dployrd] (web) Clean comments
- [dployrd] (core) Rename agent to node throughout the codebase
- [dployrd] (core) Simplify supported runtime types
- [dployrd] (store) Remove service_manager field from service model
📚 Documentation
- [dployrd] (service) Update comments
- [dployrd] (api) Update terminology in documentation and schema
- [dployrd] (api) Update openapi schema for service types and sources
- [dployrd] (utils) Add comment
🎨 Styling
- [dployrd] (install) Capitalize "Dployr" in service descriptions
⚙️ Miscellaneous Tasks
- [dployrd] (formatting) Gofmt
- [dployrd] (worker) Simplify deployment log message
🎉 Version 0.5.x
Stable Release • 2026-01-18
Component Versions
🚀 Features
- [dployrd] (terminal) Add interactive terminal support via bi-directional websocket relay from base to client
🚜 Refactor
- [dployrd] (goreleaser) Fix GitHub raw content URLs
- [dployrd] (install) Create Caddy logs directory during installation
- [dployrd] (docs) Remove old store docs
- [dployrd] (syncer) Move auth and WebSocket utilities to shared packages
- [dployrd] (syncer) Trigger send sync update before executing deploy/proxy tasks instead of after completion
- [dployrd] (proxy) Remove HTTPS listener from reverse proxy template to use HTTP only
- [dployrd] (install) Start Caddy service after systemd configuration reload
- [dployrd] (proxy) Disable automatic HTTPS in Caddy and explicitly configure HTTP/HTTPS listeners
- [dployrd] (install) Configure Caddy to run as dployrd user with privileged port binding
- [dployrd] (proxy) Migrate Caddy management from process to systemd service
- [dployrd] (proxy) Change Caddy default ports from 8080/8443 to 80/443
- [dployrd] (system) Send sync message after deploy task completion
- [dployrd] (system) Expand sync trigger to include deployment and proxy tasks
- [dployrd] (system) Add Caddy restart to system restart and reboot operations
- [dployrd] (system) Fix workload conversions in update builder
- [dployrd] (release) Update installation script URLs to use correct path
- [dployrd] (system) Add error handling to syncer
- [dployrd] (api) Make services a mandatory field in services struct
- [dployrd] (system) Stable schema contract for update v1.1
- [dployrd] (release) Update CDN for installation script
- [dployrd] (system) Cleanups and improvement
- [dployrd] (install) Fix path to Caddyfile in sudoers permissions
- [dployrd] (proxy) Updated unstructured remove-route request
- [dployrd] (api) Implement v1.1 update schema
🚧 Version 0.4.x
Beta Series • Latest: 0.4.13-beta.26 (2026-01-02)
Component Versions
dployr@0.4.13-beta.26dployr@0.4.13-beta.25dployr@0.4.13-beta.24dployr@0.4.13-beta.23dployr@0.4.13-beta.22dployr@0.4.13-beta.21dployr@0.4.13-beta.20dployr@0.4.13-beta.19dployr@0.4.13-beta.18dployr@0.4.13-beta.17dployr@0.4.13-beta.16dployr@0.4.13-beta.15dployr@0.4.13-beta.14dployr@0.4.13-beta.13dployr@0.4.13-beta.12dployr@0.4.13-beta.11dployr@0.4.13-beta.10dployr@0.4.13-beta.9dployr@0.4.13-beta.8dployr@0.4.13-beta.7dployr@0.4.13-beta.6dployr@0.4.13-beta.5dployr@0.4.13-beta.3dployr@0.4.13-beta.2dployr@0.4.13-beta.1dployr@0.4.12dployr@0.4.11-beta.1dployr@0.4.10dployr@0.4.9dployr@0.4.8dployr@0.4.7dployr@0.4.7-beta.6dployr@0.4.7-beta.5dployr@0.4.7-beta.4dployr@0.4.7-beta.2dployr@0.4.7-beta.1dployr@0.4.6dployr@0.4.6-beta.8dployr@0.4.6-beta.7dployr@0.4.6-beta.6dployr@0.4.6-beta.5dployr@0.4.6-beta.4dployr@0.4.6-beta.3dployr@0.4.6-beta.2dployr@0.4.4dployr@0.4.3dployr@0.4.3-beta.2dployr@0.4.3-beta.1dployr@0.4.2dployr@0.4.1dployr@0.4.1-beta.14dployr@0.4.1-beta.13dployr@0.4.1-beta.12dployr@0.4.1-beta.11dployr@0.4.1-beta.10dployr@0.4.1-beta.9dployr@0.4.1-beta.8dployr@0.4.1-beta.7dployr@0.4.1-beta.6dployr@0.4.1-beta.5dployr@0.4.1-beta.4dployr@0.4.1-beta.3dployr@0.4.1-beta.2dployr@0.4.1-beta.1dployr@0.4.0
🚀 Features
- [dployrd] (install) Add automatic git installation to installer
- [dployrd] (ci) Add automated changelog generation with git-cliff
- [dployrd] (filesystem) Add real-time directory watching with fsnotify and WebSocket events
- [dployrd] (service) Add systemd service and proxy cleanup on service deletion
- [dployrd] (config) Add custom instance ID support to installation scripts and agent configuration
- [dployrd] (filesystem) Add filesystem browsing and file operations API
- [dployrd] (system) Add endpoint for gopsutil-based resource monitoring
- [dployrd] (system) Extend service counts with full deployment, service, and proxy app lists in system status
- [dployrd] (logger) Add log rotation with 300MB size and 24-hour age limits, keeping 5 backups
- [dployrd] (deploy) Add custom JSON unmarshaler for DeployRequest runtime field
- [dployrd] (db) Enable WAL mode and set 5s busy timeout to prevent SQLITE_BUSY errors
- [dployrd] (system) Split restart into daemon restart and OS reboot endpoints, enhance install script with auth and task exclusion
- [dployrd] (system) Add token validation for log streaming, include worker count in system updates
- [dployrd] (system) Add system restart with systemctl
- [dployrd] (install) Add automated installation script with graceful daemon upgrade handling
- [dployrd] (executor) Pass context to log stream handler and suppress context cancellation errors
- [dployrd] (ci) Enhance Discord release notification with richer embed formatting
- [dployrd] (install) Add configurable base URL option with --base flag
- [dployrd] (install) Update registration API endpoint to use versioned daemon URL and enhance error handling
- [dployrd] (logs) Implement adaptive batching for log streaming with 250ms window and 50-line threshold
- [dployrd] (logs) Add size-based chunking to prevent WebSocket message size limits
- [dployrd] (logs) Replace SSE log streaming with WebSocket-based implementation
- [dployrd] (logs) Add log streaming functionality with WebSocket support
- [dployrd] (system) Add comprehensive system resource metrics and enhanced status reporting
- [dployrd] (metrics) Add Prometheus metrics endpoint with task execution and system health tracking
- [dployrd] (agent) Add WebSocket-based task syncing with mTLS client authentication
- [dployrd] (system) Add bootstrap token rotation and registration status endpoints
- [dployrd] (system) Add task syncing and daemon mode management
🐛 Bug Fixes
- [dployrd] (install) Fix registration response structure
- [dployrd] (store) Parse timestamp columns as strings to handle SQLite TEXT storage
- [dployrd] (install) Add fallback to static jq binary download when apt install fails
- [dployrd] (syncer) Change default client cert directory from /etc/dployr to /var/lib/dployrd on Linux
- [dployrd] (tests) Fixed race detection and add thread-safety to mock deployment store
- [dployrd] (store) Handle db NULL values for bootstrap_token and access_token
- [dployrd] (version) Add bounds checking for commit hash truncation
🚜 Refactor
- [dployrd] (proxy) Enhance proxy status response with detailed Caddy configuration
- [dployrd] (api) Update docs
- [dployrd] (proxy) Updated remaining unstructured logs to structured logs in Caddy handler
- [dployrd] (proxy) Update proxy creation to detailed payload
- [dployrd] (proxy) Updated to structured logs in Caddy handler
- [dployrd] (system) Add more system metrics
- [dployrd] (service) Remove status field and populate blueprint data from deployment
- [dployrd] (deploy) Change env vars & secrets to accept any type
- [dployrd] (api) Simplify list endpoints to return flat array data
- [dployrd] (deploy) Remove timestamp prefix from deployment log messages to prevent duplicates
- [dployrd] (deploy) Capture and display service runtime logs on startup failure
- [dployrd] (logs) Skip partial line in log stream
- [dployrd] (logger) Update deployment log format to write raw messages
- [dployrd] (syncer) Disable task deduplication for log streaming tasks
- [dployrd] (deploy) Stream deployment script output to log file instead of stdout/stderr
- [dployrd] (logs) Improve stream positioning logic with explicit mode handling and fallback behavior
- [dployrd] (executor) Stream entire deployment log instead of defaulting to live mode
- [dployrd] (syncer) Change ws endpoint parameter from instanceId to instanceName
- [dployrd] (syncer) Change agent cert endpoint parameter from instanceId to instanceName
- [dployrd] (syncer) Change WebSocket and certificate endpoints to use query parameters instead of path parameters
- [dployrd] (api) Remove unused agent certificate endpoints from OpenAPI specification
- [dployrd] (service) Change service lookup from ID to name across API, CLI, and handlers
- [dployrd] (logger) Change default output from stdout to stderr when rotating writer is unavailable
- [dployrd] (logs) Normalize log file paths to lowercase before processing
- [dployrd] (worker) Improve semaphore test with proper goroutine synchronization and timeouts
- [dployrd] (executor) Remove unused request and trace context setup from task execution
- [dployrd] (syncer) Sanitize secrets in agent updates by replacing values with empty strings
- [dployrd] (deploy) Add duplicate key detection to service env
- [dployrd] (service) Add secrets support and config.toml-based environment management
- [dployrd] (auth) Add fallback to RegisteredClaims.Subject when claims.Subject is empty
- [dployrd] (store) Add description field to services table and use sql.NullString for nullable columns
- [dployrd] (logs) Add time-based filtering, file rotation detection, and rate limiting to log streaming
- [dployrd] (filesystem) Impove file system implementation and real-time ws response for real-time requests
- [dployrd] (logs) Separate deployment and service log paths, write deployment logs directly to file
- [dployrd] (deploy) Simplify CloneRepo by removing workDir parameter and cleaning destDir before clone
- [dployrd] (shell) Capture stderr to buffer and include error messages for better debugging
- [dployrd] (service) Update domain request to base from /v1/domains to /v1/domains/register to register quick domain
- [dployrd] (deploy) Simplify limit capping logic using min function
- [dployrd] (deploy) Remove unused DNSProvider field from DeployRequest
- [dployrd] (deploy) Remove dns-provider flag from CLI deploy command
- [dployrd] (db) Set single connection limit and move WAL/busy_timeout to DSN to prevent SQLITE_BUSY errors
- [dployrd] (deploy) Add version field to DeployRequest unmarshaler and validate RuntimeObj type before assignment
- [dployrd] (deploy) Simplify DeployRequest by flattening Runtime field to string from object
- [dployrd] (logs) Replace logType with path for flexible log file routing
- [dployrd] (logs) Consolidate WebSocket log streaming functionality with existing open connections
- [dployrd] (license) Change license from MIT to Apache-2.0 and add copyright headers to all files
- [dployrd] (system) Remove WebSocket message ID from logger context
- [dployrd] (system) Add bootstrap token to auth debug info and simplify WebSocket schema names
- [dployrd] (system) Remove Go version from platform info and fix component name in build flags
- [dployrd] (system) Update version entry to buildinfo on agent update
- [dployrd] (utils) Fix free memory to show correct values
- [dployrd] (ci) Configure Go proxy settings for module publishing
- [dployrd] (system) Move WebSocket message schemas to pkg/core/system
- [dployrd] (ci) Simplify release workflow conditions
- [dployrd] (release) Improve tag handling and beta-to-stable promotion
- [dployrd] (syncer) Add periodic agent status updates and improve WebSocket message handling
- [dployrd] (system) Bug fixes on version lookup, and improve WebSocket error handling
- [dployrd] (executor) Add AccessTokenProvider interface and inject token authentication into task execution
- [dployrd] (db) Reorder instance table columns to group token fields together
- [dployrd] (module) Migrate from local to GitHub module path github.com/dployr-io/dployr
- [dployrd] (logging) Replace slog.Logger with shared.Logger and add structured logging to syncer and executor
- [dployrd] (store) Split token into bootstrap_token and access_token fields
📚 Documentation
- [dployrd] (readme) Update documentation URLs from docs.dployr.dev to dployr.io/docs
- [dployrd] (readme) Update overview section and deployment examples
- [dployrd] (contributing) Clarify documentation requirement
- [dployrd] (readme) Add comprehensive documentation with badges, quickstart guide, and troubleshooting
🎨 Styling
- [dployrd] Fix whitespace and add missing newlines at end of files
⚙️ Miscellaneous Tasks
- [dployrd] Intoduced local ci parity of ci handlers for quick local development
💼 Other
- [dployrd] (system) Update WebSocket message field names to use snake_case and make timestamp required
- [dployrd] (system) Fix missing requestId field in WebSocket messages
- [dployrd] (system) Add per-message and per-task context tracing with unique IDs
🚧 Version 0.3.x
Beta Series • Latest: 0.3.1-beta.24 (2025-11-23)
Component Versions
dployr@0.3.1-beta.24dployr@0.3.1-beta.23dployr@0.3.1-beta.22dployr@0.3.1-beta.21dployr@0.3.1-beta.20dployr@0.3.1-beta.19dployr@0.3.1-beta.18dployr@0.3.1-beta.17dployr@0.3.1-beta.16dployr@0.3.1-beta.15dployr@0.3.1-beta.14dployr@0.3.1-beta.13dployr@0.3.1-beta.12dployr@0.3.1-beta.11dployr@0.3.1-beta.10dployr@0.3.1-beta.8dployr@0.3.1-beta.7dployr@0.3.1-beta.6dployr@0.3.1-beta.5dployr@0.3.1-beta.3dployr@0.3.1-beta.2dployr@0.3.1-beta.1
🚀 Features
- [dployrd] (store) Add fallback for SetToken store method for fresh installs
- [dployrd] (logging) Add structured logging to handlers
- [dployrd] (install) Display registered domain in installation summary
- [dployrd] (install) Separate structured logs from user output using dedicated file descriptors
- [dployrd] (install) Improve domain registration error handling
- [dployrd] (install) Add specific error handling for used tokens during registration
- [dployrd] (install) Enhance error messages with detailed error information during registration
- [dployrd] (api) Add response schema for domain registration endpoint
- [dployrd] (install) Refactor installer with structured logging and improved error handling. Implemented quiet install for system updates
- [dployrd] (install) Improve error handling and output for installer
- [dployrd] (install) Update domain registration payload key from 'claim' to 'token'
- [dployrd] (system) Update store instance assignment from install
- [dployrd] (system) Add public IP support and domain registration endpoint
- [dployrd] (install) Add error log output to stderr for better debugging
- [dployrd] (install) Add real-time log output to installer
- [dployrd] (http) Handle errors conversion properly
- [dployrd] (system) Update domain registration endpoint path to match base API
- [dployrd] (install) Add required install token parameter for instance registration at installation
- [dployrd] (system) Improved token comparison to use constant-time for base64-encoded tokens in instance registration
- [dployrd] (system) Add instance registration and domain management with base integration
- [dployrd] (system) Add system doctor and install endpoints with enhanced system info for dependency checks (vfox, caddy, data directory)
- [dployrd] (install) Add installation logging and update config for base authentication
- [dployrd] (api) Standardize error handling and improve response formats across handlers
- [dployrd] (docs) Simplify authentication flow documentation in OpenAPI spec
- [dployrd] (auth) Remove authentication endpoints
🐛 Bug Fixes
- [dployrd] (install) Add apt lock handling and allow initial instance registration updates
- [dployrd] (system) Remove unused address field from domain registration request
- [dployrd] (install) Update domain extraction path from registration response
- [dployrd] (system) Add nil check for instance before accessing InstanceID
- [dployrd] (store) Rename database table from 'instances' to 'instance'
🚜 Refactor
- [dployrd] (db) Bug fix on instance table immutability constraints and simplify trigger logic
- [dployrd] (auth) Update JWKS endpoint path and remove redundant config field
- [dployrd] (logging) Simplify context value extraction in LogWithContext
- [dployrd] (auth) Initialize Auth service with InstanceStore dependency
- [dployrd] (api) Standardize error codes
- [dployrd] (system) Extract InstallRequest into reusable schema
📚 Documentation
- [dployrd] (install) Update installation documentation
- [dployrd] (install) Update help examples and remove duplicate help flag handling
- [dployrd] (api) Simplify authentication documentation in OpenAPI spec
- [dployrd] (api) Add authentication documentation link to OpenAPI spec
🧪 Testing
- [dployrd] (deploy) Remove unused buildAuthUrl test cases
🚧 Version 0.2.x
Beta Series • Latest: 0.2.2-beta.5 (2025-11-18)
Component Versions
🚀 Features
- [dployrd] (auth) Migrate from HMAC to RSA-256 JWT signing with bootstrap tokens
- [dployrd] (api) Update log streaming endpoint to use Server-Sent Events (SSE)
- [dployrd] (install) Enhance system configuration and environment setup
- [dployrd] (runtime) Enhance cross-platform runtime setup with vfox scripts
- [dployrd] (deploy) Implement unified deployment script and runtime setup
- [dployrd] (install) Add vfox plugin setup for multiple runtimes
- [dployrd] (install) Add role-based system groups for dployrd
- [dployrd] (auth) Implement role-based user management and access control
- [dployrd] (auth) Enhance authentication and authorization system
🐛 Bug Fixes
- [dployrd] (install) Improve Caddy installation process and apt lock handling
- [dployrd] (deploy) Improve systemd service deployment and runtime environment handling
- [dployrd] (install) Improve binary installation error handling
- [dployrd] (release) Improve version retrieval in release script
- [dployrd] (auth) Improve unauthorized token error handling
- [dployrd] (install) Reload shell after installing vfox plugins
- [dployrd] (deploy) Improve runtime and dependency installation process
- [dployrd] (deploy) Simplify runtime installation process
- [dployrd] (auth) Improve token management and error handling
🚜 Refactor
- [dployrd] (deploy) Simplify runtime and dependency setup process
📚 Documentation
- [dployrd] (api) Update OpenAPI log streaming documentation
🧪 Testing
- [dployrd] (unit) Add test suite
⚙️ Miscellaneous Tasks
- [dployrd] (openapi) Repostitory dispatch to autogenerate SDK from openapi spec using Kiota
- [dployrd] (docs) Update description
- [dployrd] (docs) Update description
- [dployrd] (release) Add Discord notification on release publication
- [dployrd] Update installer to handle steps one at a time
- [dployrd] Gofmt
- [dployrd] Cleanup
- [dployrd] (goreleaser) Update version component naming for CLI and daemon
🎉 Version 0.1.x
Stable Release • 2026-01-18
Component Versions
dployr@0.1.1-beta.33dployr@0.1.1-beta.32dployr@0.1.1-beta.30dployr@0.1.1-beta.29dployr@0.1.1-beta.28dployr@0.1.1-beta.27dployr@0.1.1-beta.26dployr@0.1.1-beta.25dployr@0.1.1-beta.24dployr@0.1.1-beta.23dployr@0.1.1-beta.22dployr@0.1.1-beta.21dployr@0.1.1-beta.20dployr@0.1.1-beta.19dployr@0.1.1-beta.18dployr@0.1.1-beta.17dployr@0.1.1-beta.16dployr@0.1.1-beta.15dployr@0.1.1-beta.14dployr@0.1.1-beta.13dployr@0.1.1-beta.12dployr@0.1.1-beta.11dployr@0.1.1-beta.10dployr@0.1.1-beta.9dployr@0.1.1-beta.7dployr@0.1.1-beta.6dployr@0.1.1-beta.5dployr@0.1.1-beta.4dployr@0.1.1-beta.3dployr@0.1.1-beta.2dployr@0.1.1-beta.1dployr@0.1.0dployr-web@0.1.42dployr-web@0.1.41dployr-web@0.1.40dployr-web@0.1.39dployr-web@0.1.38dployr-web@0.1.37dployr-web@0.1.36dployr-web@0.1.35dployr-web@0.1.34dployr-web@0.1.31dployr-web@0.1.30dployr-web@0.1.29dployr-web@0.1.28dployr-web@0.1.27dployr-web@0.1.26dployr-web@0.1.24dployr-web@0.1.23dployr-web@0.1.22dployr-web@0.1.21dployr-web@0.1.20dployr-web@0.1.18dployr-web@0.1.17dployr-web@0.1.16dployr-web@0.1.14dployr-web@0.1.13dployr-web@0.1.12dployr-web@0.1.11dployr-web@0.1.10dployr-web@0.1.9dployr-web@0.1.8dployr-web@0.1.7dployr-web@0.1.6dployr-web@0.1.5dployr-web@0.1.4dployr-web@0.1.1dployr-web@0.1.0
🚀 Features
- [web] (proxy) Update service selector to use dropdown
- [web] (deps) Add js-yaml and smol-toml for configuration parsing
- [web] (hooks) Add standardized WebSocket operation hook with request/response handling
- [web] (proxy) Implement graph page with visualizer components
- [web] (settings) Update footer links
- [web] (ci) Move Cloudflare Pages deployment before Discord notification and add job dependency
- [web] (config) Move public directory configuration from wrangler.toml to vite.config.ts
- [web] (assets) Add public directory with static assets and configuration files
- [web] (config) Add assets directory configuration for Cloudflare Pages
- [web] (navigation) Update footer and sidebar links to point to actual documentation and legal pages
- [web] (ci) Add automated changelog generation using git-cliff
- [web] (ci) Move build-time environment variables from deployment to build step
- [web] (ci) Add wrangler dependency for Cloudflare deployment tooling
- [web] (ci) Change deployment from Cloudflare Workers to Cloudflare Pages
- [web] (deployments) Add URL state management for deployment creation flow
- [web] (services) Add blueprint tab to service page
- [web] (ci) Add Cloudflare Workers deployment to release workflow
- [web] (websocket) Add request IDs to all WebSocket messages and centralize error handling
- [web] (editor) Replace custom text editor with CodeMirror-based editor with syntax highlighting and validation
- [web] (deployments) Add deployment list query with WebSocket protocol and display created timestamp
- [web] (instance-operations) Migrate system operations to WebSocket-based hook with request-response protocol
- [web] (logs) Add deployment logs hook and refactor shared log utilities
- [web] (deps) Add Radix UI components and recharts for enhanced UI capabilities
- [web] (file-system) Migrate file operations to WebSocket-based hook with task management
- [web] (ci) Add automated changelog generation to release workflow
- [web] (vite) Add app.dployr.dev to allowed hosts for development environment
- [web] (ui) Enhance logs window with expandable metadata and improve version selector with compatibility warnings
- [web] (ui) Service creation form and blueprint text editor
- [web] (ui) Add connection status indicator, log time range selector, and remote integration improvements
- [web] (docker) Add runtime API base URL injection via DPLOYR_BASE_URL environment variable
- [web] (ci) Add Discord webhook notification to release workflow
- [web] (docker) Inline Caddyfile configuration in Dockerfile
- [dployrd] (install) Add vfox version manager to installation process
- [dployrd] (cli) Add logs command for viewing deployment logs
- [dployrd] (db) Improve database path handling for cross-platform compatibility
- [dployrd] (install) Improve daemon management during installation
- [dployrd] (install) Improve service management and user isolation for dployrd
- [dployrd] (cli) Enhance dployr CLI description and documentation
- [dployrd] (runtime) Standardize runtime type from "node-js" to "nodejs"
- [dployrd] (install) Improve installation and service management for dployr
- [dployrd] (install) Add version selection and help options for installers
- [dployrd] (config) Update system-wide configuration location and handling
- [dployrd] (install) Add default configuration generation for dployr
- [dployrd] Add initial website structure with HTML, CSS, and JavaScript for dployr.io
- [dployrd] Update on client application with new features and UI improvements
- [web] (auth) Refactor authentication flow and user management to orginate from dployr base
- [web] (ui) Refactor app header, sidebar, and theme management
- [web] (integrations) Add integrations management with two-factor authentication
- [web] (ui) Add activity modal with user activity tracking and management
- [web] (ui) Add invite user dialog and refactor URL state management
- [web] (ui) Implement comprehensive user invitation system with received/sent invites split
- [web] (ui) Implement comprehensive user invitation system with received/sent invites split
- [web] (ui) Add integration connection dialogs system for domain, email, and remote providers
- [web] (ui) Add instances management page and rename resources to graph
- [web] (ui) Add instance details page with real-time status streaming and metrics visualization
- [web] (ui) Enhance logs-window with dynamic filters, scroll tracking, and DEBUG level support
- [web] (ui) Implement virtual scrolling and log batching for improved performance in logs-window
- [web] (ci) Add GitHub Actions release workflow with Docker image publishing and static bundle artifacts
🐛 Bug Fixes
- [web] (resource-viewer) Add null safety for CPU and memory percentages in process display
- [web] (ui) Add type safety to nav-footer href and migrate TextLink to TanStack Router Link component
- [web] (ui) Add null safety checks and improve error handling across multiple components
- [web] (instances) Add timestamp validation and conversion for instance creation date display
- [dployrd] (deploy) Improve runtime setup with correct working directory
- [dployrd] (auth) Remove default token expiry fallback in CLI
- [dployrd] (auth) Improve token generation with better error handling and default lifespan
- [dployrd] (version) Improve version string formatting for git commit hash
🚜 Refactor
- [web] (links) Update Discord invite URL
- [web] (services) Improve code formatting and consistency
- [web] (dashboard) Add comprehensive overview with service cards, stats, and empty state
- [web] (deployments) Auto-select new instances
- [web] (graph) Consolidate instance actions into dropdown menu and improve dialog styling
- [web] (instances) Add sudo to Linux installation command for elevated privileges
- [web] (instances) Reduce dialog sizing and improve visual consistency
- [web] (metrics) Add interactive chart with process snapshot tooltips and timestamp locking
- [web] (console) Update connection status labels and rephrase description
- [web] (settings) Remove configuration page and clean up integrations sections
- [web] (services) Add branch selector in create domain form
- [web] (console) Add terminal session management with instance selection and fullscreen mode
- [web] (deployments) Extract specific deployment blueprint from config
- [web] (dns) Consolidate domain queries and remove provider display for unknown providers
- [web] (create-service) Add domain configuration info dialog
- [web] (dns) Replace polling with manual verification and add cooldown mechanism
- [web] (hooks) Add comprehensive debug logging for WebSocket instance update flow
- [web] (proxy-graph) Update service node to use consolidated proxy routes
- [web] (types) Migrate to modular schema system and consolidate type definitions
- [web] (types) Standardized components to use normalized schema types
- [web] (hooks) Bug fixes and improvements
- [web] (ui) Remove CirclePlus icons from buttons and update button labels
- [web] (proxy) Redesign add dialog UI
- [web] (proxy-graph) Redesign detail panels and improve UI consistency
- [web] (ui) Normalize data formats and improve visual consistency across components
- [web] (create-service) Style fixes
- [web] (blueprint) Improve blueprint parsing, validation, and sync logic
- [web] (code-editor) Add instance selector prop
- [web] (hooks) Remove unused use-projects hook
- [web] (instances) Use instance name instead of ID for WebSocket operations
- [web] (logs) Move LogTimeRange type to shared types and improve version sorting with pre-release support
- [web] (navigation) Replace window.history.back() with router.history.back() and improve deployment creation flow
- [web] (file-system) Migrate to map-based tree with live watching, search, and lazy loading
- [web] (hooks) Improve deployment and service management with instance resolution and error handling
- [web] (hooks) Migrate instance status and deployments to React Query cache with localStorage persistence
- [web] (ui) Show count of running services
- [web] (ui) Consolidate StatusChip into StatusBadge with icon support and type-specific styling
- [web] (services) Migrate to unified Service type to improve domain label
- [web] (logs) Consolidate log streaming hooks and add shared deployment utility
- [web] (file-system) Migrate to request-response protocol with retry logic and rate limiting
- [web] (api) Update instance-scoped endpoints and WebSocket connections
- [dployrd] (utils) Centralize data directory path handling across application
- [web] (ui) Consolidate URL state management into unified useUrlState hook
- [web] (ui) Centralize confirmation dialog handling across settings pages
- [web] (auth,ui) Streamline GitHub integration flow and URL state management
- [web] (routing) Restructure application with cluster-based routing architecture
- [web] (routing) Streamline cluster-based navigation and routing logic
- [web] (ui) Rename notifications to events and implement event filtering
- [web] (ui) Rename email-connect-dialog to notifications-connect-dialog and improve event filtering
📚 Documentation
- [web] (branding) Update domain references from dployr.dev to dployr.io across all files
- [web] (readme) Update Docker quick start port from 8080 to 7877
- [web] (readme) Update Docker quick start to use latest tag instead of version-specific tag
- [dployrd] (readme) Update README with minor text and branch reference adjustments
- [dployrd] (readme) Update deployment example with real example
- [dployrd] (install) Update installation instructions and scripts
- [dployrd] (project) Add comprehensive contributing and readme documentation
🎨 Styling
- [web] (fix) Typo "Changelogs" to "Changelog"
⚙️ Miscellaneous Tasks
- [dployrd] (workflows) Simplify release workflow by removing Chocolatey upload step for now
- [dployrd] (workflows) Update Chocolatey package push URL for release workflow
- [dployrd] (workflows) Update Chocolatey package push path for release workflow
- [dployrd] (workflows) Fix Chocolatey publish step shell configuration
- [dployrd] (workflows) Refactor Chocolatey package generation and publishing step
- [dployrd] (workflows) Update Chocolatey package push to use bash as shell
- [dployrd] (workflows) Simplify Chocolatey publish step in release workflow
- [dployrd] (goreleaser) Remove Chocolatey publish flag
- [dployrd] (workflows) Refactor release workflow for improved artifact handling and Chocolatey deployment
- [dployrd] (workflows) Update GoReleaser v2 release arguments for release workflow
- [dployrd] (workflows) Update GoReleaser release arguments for Chocolatey-only deployment
- [dployrd] (goreleaser) Update archive configuration
- [dployrd] (workflows) Typo
- [dployrd] (workflows) Update GoReleaser v2 release arguments
- [dployrd] (workflows) Typo fix
- [dployrd] (goreleaser) Add Chocolatey owners and API key configuration
- [dployrd] (workflows) Remove beta workflow file
- [dployrd] (workflows) Update GoReleaser v2 arguments for beta and release workflows
- [dployrd] (workflows) Update GoReleaser v2 skip parameters for beta and release workflows
- [dployrd] (workflows) Update to GoReleaser v2 argument conventions
- [dployrd] (workflows) Add Chocolatey version flag to GitHub Actions
- [dployrd] Init version 0.1.0 + devbump
- [dployrd] Cleanup
- [dployrd] Go.work.sum
- [dployrd] (workflows) Refactor release and beta workflows for Go project
- [dployrd] (workflows) Split release and beta workflows into two-stage jobs
- [dployrd] (workflows) Fix GoReleaser Chocolatey skip parameter
- [dployrd] (workflows) Title fix
- [dployrd] (workflows) Update GitHub token for release and beta workflows
- [dployrd] (workflows) Update title
- [dployrd] (goreleaser) Override GitHub tokens for Homebrew and Scoop tap repositories
- [dployrd] (goreleaser) Remove hardcoded GitHub tokens from tap repositories
- [dployrd] (workflows) Typo
- [web] (config) Update Vite server configuration for allowed hosts
- [web] (license) Migrate from MIT to Apache-2.0 and add copyright headers to all source files
💼 Other
- [dployrd] Implementation for projects deployment
- [dployrd] Refresh tokens implementation
- [dployrd] Bug fixes and improvements in the service creation flow
- [dployrd] Updated deployments page with table
- [web] (ui) Cleanup