Deploy to Vercel
H.O.T EARTH is built to deploy to Vercel with no secrets. This guide covers the app itself, the one server route, and the data refresh pipeline.
Deploy the app
Section titled “Deploy the app”-
Push your fork to GitHub.
-
In Vercel, Add New Project and import the repository. Vercel detects Next.js automatically.
-
Leave environment variables empty. The app is keyless.
-
Deploy. The build runs
next buildand the app is live.
Cache headers
Section titled “Cache headers”Static assets (textures, data, video) are content-hashed and safe to cache hard.
The image proxy sets its own revalidation window. If you add a vercel.json,
a sound starting point is:
{ "headers": [ { "source": "/textures/(.*)", "headers": [ { "key": "Cache-Control", "value": "public, max-age=31536000, immutable" } ] } ]}The data pipeline
Section titled “The data pipeline”Time-varying data (wind fields, the ISS orbital element set) is refreshed by scheduled GitHub Actions, not at request time, and committed as static files. This keeps the runtime keyless and cheap. You do not need to configure anything for a fork; the workflows run on your repository once Actions are enabled.
Documentation site (this site)
Section titled “Documentation site (this site)”These docs are a separate Astro project in website/. Deploy them as their own
Vercel project:
- Root directory:
website - Framework preset: Astro
- Build command:
astro build, Output:dist
Once you attach a custom domain, serve the docs at /docs with a rewrite in the
main app, the pattern Stripe, Vercel, and Tailwind use to keep one domain.
Verify the deploy
Section titled “Verify the deploy”Open the deployment URL, confirm the globe renders, and check that a world route
like /galaxies loads. If imagery is missing, check the proxy route’s logs in
the Vercel dashboard.