Portfolios are folders with taste

Static site hosting for portfolios is the straightforward match for designers, developers, photographers, and freelancers whose public proof is HTML pages and media—not a CMS editorial calendar. You prepare the site on your machine, upload the finished files, inspect HTTPS preview, then attach a custom domain and wait for DNS verification before the certificate appears. StaticHost will not run npm or Hugo for you. It will not provide email mailboxes, a built-in CDN product, or forever-free hosting after a short trial. Monthly plans: Starter $9 (1 site, 2 GB), Pro $30 (3 sites, 10 GB, staging), Scale $65 (10 sites, 30 GB), Business $130 (30 sites, 100 GB, teams).

nginx uses try_files $uri $uri/ =404. Case-study deep links need real files or directories. There is no silent rewrite to index.html for client-side routers.

Who this is for

  • Freelancers replacing PDF-only outreach with a live URL.
  • Students turning a class project into a durable portfolio.
  • Specialists who want project pages as static case studies.
  • People who already generate sites with Eleventy, Astro, Hugo, or hand-coded HTML and can run those tools themselves.

Leave this product if you require WordPress editors, server-side contact mail, or app-like authenticated portals on the same host.

Publish path from laptop to yourname.com

  1. Build or export locally into dist / public / a clean hand folder.
  2. Confirm the zip’s top level contains index.html, not a nested wrapper directory.
  3. Upload; open HTTPS preview; click every case-study link.
  4. Remove http:// asset URLs that break the padlock.
  5. Add the domain; create DNS records; wait for verification; wait for the certificate.
  6. Use deploy history when a redesign is worse than yesterday’s version.

Further reading: free static hosting for HTML, photography portfolios, and where to host a static portfolio.

Worked example: a startup waitlist page as portfolio-adjacent work

Your portfolio already lives on Starter. A friend founding a startup needs a waitlist page by Monday: logo, paragraph, email capture embed from a third-party form tool. You build a single index.html plus CSS, zip correctly, and deploy it as a second site after upgrading to Pro ($30) for the extra slot and staging.

Counsel reviews staging copy on HTTPS without touching DNS. You adjust one sentence, redeploy staging, then promote and attach waitlist.startup.example. Certificate follows DNS verification. Your personal portfolio remains undisturbed. The waitlist page never uploaded node_modules, never asked StaticHost to send the waitlist emails (the embed vendor does), and never assumed SPA routing. When the product launches and the waitlist retires, you delete the site and consider returning to Starter if you only need one property again.

That story is portfolio hosting in the real world: your site plus occasional static favors, managed by quotas instead of mythology.

Failure to avoid: http:// images breaking the padlock

Portfolio migrations from old hosts often leave src="http://...". On HTTPS preview and on your custom domain, mixed content warnings appear; some browsers block images. The page looks amateurish despite beautiful Figma origins.

Grep the tree for http:// before you announce the URL. Prefer relative paths to files inside your zip. Catch the issue on preview—StaticHost gives HTTPS there before you touch DNS—so you are not debugging padlocks after business cards are printed. A certificate on the domain cannot fix insecure references inside your HTML.

When to pick a different product

Choose a commerce platform if the portfolio is really a shop. Choose proofing software for private client galleries with accounts. Choose PHP hosting for WordPress blogs. Choose a forever-free Pages host if $0 forever is mandatory and policies fit. Choose a functions-capable platform if the portfolio needs server logic.

Stay on StaticHost when the deliverable is files and you can build locally. Starter ($9) fits one polished portfolio. Pro ($30) fits portfolio + staging + a side microsite. Higher tiers are inventory plays. No tier adds email, CDN SKUs, remote builds, or SPA index fallbacks.

Case-study URL design that survives =404

Use /work/client-name/index.html or /work/client-name.html and link to those real paths. Do not rely on a React router alone unless you pre-render. Hash routes (/#/work/client) work without server rewrites because the server only sees /. Document the choice in a short README so future you does not “fix” routing by shopping hosts.

Media: compress screenshots; do not upload 4K PNGs of every UI state. Storage limits are part of the plan table. Video demos belong on a video host with embeds.

Review ritual before sharing publicly

  • Phone check on HTTPS preview.
  • Lighthouse or eyeball contrast on text over images.
  • Confirm PDF case studies open as /files/...pdf.
  • Confirm 404 for a nonsense URL is acceptable or brand it with a real 404.html file.

FAQ

Can StaticHost compile my Astro portfolio?

No. Run Astro locally or in CI; upload the output directory.

Do I get email at my portfolio domain?

No. Use a mail vendor. Forms need third-party endpoints.

Why do client-side project routes 404 on refresh?

No index.html SPA fallback. Pre-render or use hashes.

Is forever-free portfolio hosting included?

No. Short trial, then paid $9/$30/$65/$130.