Before you start
You’ll need:- A Nubo account
- The Nubo GitHub App installed on the repo you want to deploy
- An app that listens on a port (Go, Node, Python, PHP, or a static
index.html)
1. Create a Project
A Project is the top-level container. Open the dashboard and create one.2. Create a Frame
Inside your Project, click + Frame:- Pick the GitHub repo to deploy.
- Pick the branch Nubo should watch. Pushes here trigger redeploys.
- Set the port your app listens on.
- Leave Builder on the default (Raypacks Beta) for Go, Node, and static sites. Switch to Paketo for Python or PHP.
3. Open your app
When the build finishes, your Frame is live at an auto-assigned URL (something likemy-app-a3f2.nubo.onl). Click it from the dashboard.
To redeploy, push to your tracked branch. Or hit Deploy in the dashboard to rebuild the current revision.
Pick the right deploy guide
The general flow above works for everything, but language-specific guides cover the gotchas:Go
A static binary on a scratch image
Node.js
Any package.json-driven app or bot
Python
Flask, Django, Gunicorn, Uvicorn
PHP
Drop-in PHP, Composer auto-installed
Static sites
HTML, CSS, JS served on nginx
More languages
What’s supported and what’s coming
Next steps
Environment variables
Inject config and secrets
Custom domains
Serve under your own hostname
Deployments
Build, deploy, roll back
Raypacks reference
Configure the default builder
