Deploy your Angular app
ng build produces static files either way, but exactly where it puts them changed with Angular 17's new esbuild-based application builder — worth checking before you point the CLI at the wrong folder.
- 01
Build the app
Run "ng build" (or "npm run build"). Angular compiles and minifies the project into static output — no dev server, no watch mode.
- 02
Check which output layout you have
Angular 17 and newer (application builder): output lands in "dist/<project-name>/browser". Angular 16 and older: it's directly in "dist/<project-name>". Look for the folder that has an index.html at its top.
- 03
Deploy it
Run "npx harvis deploy dist/<project-name>/browser" from your project root. No config and no login for this first deploy — you get a live URL immediately, plus a private claim link to attach the site to a free account whenever you're ready.
Deploy Angular with one command
Build your project, then hand the output folder to harvis. No account needed for the first deploy — you'll get a live link and a private claim link to manage it later.
ng build npx harvis deploy dist/<project-name>/browser
Prefer dragging files instead of a terminal? Build the project, then drop the output folder here and publish it the same way.
Angular deploy questions
The dist folder doesn't have an index.html at the top — what am I missing?
You're on Angular 17+, where the application builder nests browser output one level deeper for the browser bundle. Look inside "dist/<project-name>/browser" instead of "dist/<project-name>" — that's the folder to deploy.
Does Angular routing (RouterModule) work after deploying?
Yes, for the default hash-free routing strategy — harvis falls back to your index.html for paths it doesn't recognize as files, which is what a direct visit to a deep route needs to resolve.
Is deploying a Angular app to harvis actually free?
Yes, no card required. Free limits are 500 files and 50 MB per site, which covers a static Angular build with plenty of room. Published sites don't expire — they stay live until you delete them.
Can I use my own domain with the deployed Angular site?
Every site gets a free harvis.dev address, and you can pick your own subdomain from the dashboard after claiming it — my-app.harvis.dev instead of a random one. Pointing a domain you already own (like mystore.com) at the site isn't supported yet.
How is this different from deploying Angular to Vercel or Netlify?
Vercel and Netlify are built around connecting a Git repo and running your build on their servers, with a dashboard to configure it. harvis skips all of that: you build locally (or in your own CI), run one CLI command against the output folder, and get a link — no project setup, and no account needed until you want to keep the site.
Deploying something else?
The recipe is the same everywhere — build it, then npx harvis deploy the output.