Restore container templates, Docker client, and UI improvements#190
Merged
tylergraydev merged 5 commits intomainfrom Apr 8, 2026
Merged
Restore container templates, Docker client, and UI improvements#190tylergraydev merged 5 commits intomainfrom
tylergraydev merged 5 commits intomainfrom
Conversation
Restores the full container management implementation that was accidentally stubbed out in commit 473846f. Re-wires the Docker client (Bollard), container CRUD, template system, and frontend store with real invoke calls. Key changes: - Restore containers.rs with full Docker lifecycle, template creation, and project-container junction - Restore docker/client.rs with Bollard-based container management and interactive shell support - Restore containerLibrary.svelte.ts store with real Tauri invoke calls and status polling - Restore container.ts types (ContainerTemplate, CreateContainerRequest, etc.) - Wire up docker/templates.rs and docker/devcontainer.rs modules - Register shell commands (start_container_shell, send_shell_input, resize_shell) - Add spinner/loading indicator to ContainerActions during operations - Add action status message to ContainerCard (e.g. "Pulling image & creating container...") - Add click-to-open detail view on container cards - Add copy-to-clipboard docker exec commands in container detail overview - Add DB migration to fix is_favorite column type mismatch - Remove xterm dependency (was causing Vite cache issues) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Templates with a dockerfile field (e.g. Claude Code + Node.js) now build a custom image on first start instead of just pulling the base image. This ensures Claude Code CLI is actually installed in the container as the template describes. - Add build_from_dockerfile() to DockerClientManager using Bollard build API - Add tar crate for creating Dockerfile tar archives - Wire build step into start_container_cmd when container has dockerfile - Fix spinner not animating by moving animate-spin to wrapper div Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds default named volumes to all builtin templates, generates user-specific volume names on container creation, and improves the templates page with rebuild actions and port mapping editor. Also adds KNOWN_BUGS.md for tracking known issues. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add missing RefreshCcw icon mock and update TemplateCard test to match new clickable card behavior (button was removed). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Prevents broken tests from reaching CI by running vitest before every push, aborting if any tests fail. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan
🤖 Generated with Claude Code