Share an Angular build

ng build produces a folder. Every reviewer who is not a front-end engineer on your team gets a screenshot of that folder's output, and the review you get back is about the screenshot.

Build

ng build --configuration production
# → dist/my-app/browser/

Angular writes <base href="/"> and references its bundles absolutely, so double-clicking index.html gives you a blank page. Publishing the folder over HTTP resolves the paths; if you also want the folder to work from disk:

ng build --base-href ./

Publish the browser/ folder

Drag it into the app, or zip and POST it:

cd dist/my-app/browser && zip -qr ../../../app.zip . && cd -

curl -fsS -X POST https://commareports.com/api/v1/reports \
  -H "Authorization: Bearer $COMMA_API_TOKEN" \
  -F "title=Preview — $(git rev-parse --abbrev-ref HEAD)" \
  -F "visibility=team" \
  -F "bundle=@app.zip"

Zip from inside browser/ so index.html sits at the archive root — see sharing a folder of HTML files.

Why the link is better than the screenshot

  • Anchored threads — the reviewer's objection sits on the element instead of in a Figma comment on a JPEG. See commenting on HTML.
  • Revisions at one URL — one report id per branch, one revision per push.
  • Access per report — private, team-only, domain-gated, or unlisted for a client demo. See the sharing model.
  • Scripts run, sandboxed — the app boots inside a sandboxed iframe with no access to anyone's session.

Limits

  • Assets: 25 MB per file, 250 MB and 500 files per report. Production Angular builds are usually well inside this; strip source maps if not.
  • Entry HTML: 5 MB.
  • 60 requests/minute per token.

Try it

Comma is free — unlimited reports, unlimited commenters, unlimited revision history.

Publish a build preview →

Related