Quickstart
Deploy your first repository to *.htu.run in about two minutes.
Import a repository
From the dashboard choose New project, connect GitHub and pick a repository. Public and private repositories are both supported.
Framework detection
HTU.RUN reads package.json, requirements.txt or a Dockerfile to choose build and start commands. You can override any of them before deploying.
Your subdomain
Every project gets https://<name>.htu.run with a certificate issued automatically. Pushing to the default branch redeploys.
git push origin main
Supported runtimes
Bring the stack you already use.
Node.js and Next.js
Node 20 LTS with Next.js (App Router), Vite, Express, or any framework that defines build and start scripts.
Python
Python 3.12 with FastAPI, Flask or Django. Dependencies install from requirements.txt; listen on the PORT variable.
uvicorn main:app --host 0.0.0.0 --port $PORT
Docker
Any project with a Dockerfile builds as-is. Expose a single HTTP port and read it from the PORT environment variable.
Sleep, wake & presentation mode
How sleeping works, and how to keep a project warm when it matters.
Sleep policy
Free projects sleep after 15 minutes without requests. Paid plans can choose from 5 minutes to 1 hour, or stay always on.
Waking
The first request after sleep shows a branded wake screen while the container restores. Visitors continue automatically once the health check passes.
Presentation mode
On a project page choose Presentation mode and a window of 30, 60 or 120 minutes. The project won’t sleep until the window ends.
Environment variables
Keep credentials out of your repository.
Adding variables
Add key–value pairs in the project’s Environment tab or during setup. Values are encrypted at rest and injected at runtime.
Public vs. server-only
Only variables with your framework’s public prefix (for example NEXT_PUBLIC_) reach the browser. Everything else stays on the server.
DATABASE_URL=postgres://… NEXT_PUBLIC_APP_ENV=production
Custom domains
Use your own domain on Student Plus and above.
Add a CNAME record
Create a CNAME record pointing your domain to cname.htu.run, then add the domain in the project’s Domains tab.
www.example.com. CNAME cname.htu.run.
Certificates
As soon as DNS resolves, a TLS certificate is issued and renewed automatically.
Classrooms & grading
Submit running software instead of ZIP files.
Joining a classroom
Your professor shares a course code such as SE410. Projects linked to it appear in that classroom’s showcase.
Reviews
Faculty open the live URL, test the app and leave feedback that appears on your project and in your notifications.