A VS Code Extension That Ships Frontend Builds to Linux in 30 Seconds
Frontend teams that haven't wired up CI/CD often still drag files manually or script fragile rsync one-liners. A VS Code extension that bakes in atomic swaps, automatic rollback via backups, and a visual progress panel removes the last excuse for cowboy deploys without adding infrastructure.
Simple Deploy turns the chore of shipping a frontend build into a single click inside VS Code. It connects to a Linux server over SSH, runs local build commands, packages the output, and uploads it — then backs up the existing deployment, extracts the new package to a temp directory, and atomically swaps it in. The whole pipeline is visible in a side panel with stage-by-stage progress and logs.
Configuration lives in project cards that pair a local workspace with a target server and remote path. Glob-based upload, delete, and retention rules control exactly which files move and which survive the swap. Pre-commands run sequentially before packaging, and any non-zero exit code halts the deploy.
The extension keeps the last 20 backups on the server and retains the last 100 deployment records locally. Password storage uses VS Code's internal encryption, and input fields filter shell metacharacters to block injection. The main limitation is SSH password auth only — no key-based login yet.
The atomic swap pattern — extract to temp, then rename — is the same technique used by Capistrano and other mature deployment tools, repackaged for a VS Code sidebar. It's a small detail that prevents the half-deployed state where a site serves a mix of old and new files.
Requiring password auth and explicitly blocking SSH keys is an unusual tradeoff. It simplifies setup for beginners but will be a dealbreaker for teams that mandate key-only access or use bastion hosts.
The built-in backup and restore mechanism turns what is essentially a file-copy tool into something that can recover from a bad deploy without external tooling. Twenty rolling backups on the server is generous for a VS Code extension.
The deployment flow's backup-and-swap design earns praise for preventing broken live states. A competing view dismisses the extension's approach as overly complicated, arguing that a simple git push to a CI/CD pipeline achieves the same result with less friction. The first comment also pushes for stronger security via SSH keys and automated post-deployment health checks, while cautioning that monitoring live performance metrics after a deploy is critical to catch regressions like chunk-splitting misconfigurations.
This VS Code extension is quite thoughtfully made. The deployment flow of 'back up old code → extract to temp directory → full replacement' is designed very solidly, effectively preventing the problem of the live site being left in a 'half-broken' state due to deployment interruption. A few small suggestions for reference: 1. Currently it only supports password login. It would be better if SSH key authentication could be added later, since using password login in a production environment carries higher security risks. 2. If it could automatically trigger a simple health check after deployment (like curling the homepage to check the return code), it would be even more complete. I've used similar tools for frontend project deployment before, and deployment efficiency really improves a lot. But one thing to keep in mind: after deployment, it's best to check if there are any abnormal fluctuations in live performance metrics, like page load time, JS error rate, etc. We had a deployment once where the first screen time suddenly increased by 2 seconds, and later found out it was because the build configuration changed, causing unreasonable chunk splitting. If you use performance monitoring tools (like APM-type ones), keeping an eye on the dashboard data after deployment will give you peace of mind. Just personal experience, for reference~