Documentation

Everything you need to ship.

Guides for deploying, configuring and presenting your projects on HTU.RUN.

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.