The latest updates, improvements, and fixes to Suga.
We've updated the flow for new projects so there's more direction on what you can do. We used to just put you on an empty canvas, but now there's a proper /new page that asks where you want to start before it goes off and creates anything. There are three new options:
This is all available from an unauthenticated state, so you can start adding "Deploy to Suga" buttons to all your project READMEs.
If you tried to import a repo you'd just pushed commits to, you might have seen it show up as "empty" and refuse to import, leaving you stuck with no obvious way forward. Fixed now.
Worth sharing the lesson: the GitHub API exposes a size field on each repo, and size === 0 is a tempting shortcut for detecting empty ones. It isn't reliable. That field is updated by a background job on GitHub's side that can lag by up to an hour, so a repo you just pushed to can still report zero size well after the fact. We now detect empties at the branch-fetch stage instead: no branches, no commits, nothing to import. Repos with actual content sail through, regardless of what size claims.
Builds from a git repo now run end-to-end inside the builder itself. The clone and build-plan step used to run on a separate worker before handing off, which meant copying your repo across the wire twice. Now the builder fetches your code directly and goes straight into the build.
For most repos this lands up to 2x faster, with no action needed on your end.
If you noticed your build log freezing mid-build, that wasn't you. Fixed now, along with a couple of related quirks.
Service and volume nodes on the canvas have a new design with more useful information visible up front.
Handful of UI improvements:
Sometimes the connection between your browser and Suga's hosted infrastructure can drop, whether it's your internet going down or an outage on Suga's end. Previously, these issues could be confused with errors in your deployed resources. Now they're clearly identified as connection problems.
This was done along with an updated Suga status page for each part of the system.
Searching for GitHub repositories and branches in your build config now uses fuzzy matching. Partial names and minor typos will still surface the right results instead of showing an empty list.
When there's genuinely no match, the empty state now includes your search term so it's clear what was filtered: "No repositories found for 'docs'".
A round of fixes to how nodes behave on the deployment canvas:
It has always been possible to get public domains for Suga services, but now you can use a custom domain for your Suga services. Map your custom domain to any service on Suga, whether it's a root domain (example.com) or a subdomain (app.example.com) Suga will handle:
Once your DNS records are in place, Suga verifies ownership automatically and provisions an SSL certificate. You can track verification and SSL status directly in the dashboard, no manual steps required after the initial DNS setup.
See the full documentation: https://docs.suga.app/reference/custom-domains