Back to themes

Astro Portfolio Landing Page Theme

Projects, Portfolio, Certifications - Auto-fetches GitHub art, Web3Forms contact, updatable JSON


Cost

Free


Created by
Marcus Holtz

Astro Portfolio Theme


Static portfolio template built with Astro. Configure your entire site via the JSON files β€” no CMS.

Edit, build, and deploy.


⚑ Theme Highlights


πŸ“„ 8 Prebuilt Sections β€” hero, about, expertise, portfolio, projects, certifications, services, and contact

πŸ—‚οΈ 8 JSON Data Files β€” edit your entire site’s content without touching a single component

πŸ–ΌοΈ Auto GitHub Image Fetching β€” pulls cover images directly from your project READMEs at build time

πŸ›‘οΈ 4 Automated Quality Gates β€” ESLint, Prettier, TypeScript, and Docker multi-stage builds strictly enforced

🌐 7 Deployment Targets β€” GitHub, GitLab, Codeberg, Cloudflare, Netlify, Vercel, or self-hosted VPS

πŸ“¬ Zero-Backend Contact Form β€” Web3Forms integration captures leads with just one API key


🎯 Perfect For


  • Freelance developers & designers needing a credible portfolio
  • Creatives wanting to showcase client work and personal projects side-by-side
  • Indie developers highlighting open-source contributions and GitHub repos
  • Professionals displaying certifications, skills, and career timelines


πŸ“„ Complete Section Set


No hunting for missing layouts. Astro Portfolio Theme includes every major section a modern portfolio needs, driven entirely by editable JSON data files:


  • Hero β€” Customizable role tagline, social links, and unique window slider
  • About β€” Full biography, education, and experience timeline
  • Expertise β€” 4 custom focus-area cards 
  • Portfolio β€” Multi-slide image carousel for deep client work showcases
  • Projects β€” Auto-populated cards for personal experiments and GitHub repos
  • Certifications β€” Timeline of credentials, training, and in-progress courses
  • Services β€” Dedicated showcase cards for studios, side-projects, or separate businesses
  • Contact β€” Validated Web3Forms integration with zero backend required



πŸ› οΈ Config-First Setup


All key settings live in simple, well-named files inside `src/data/` β€” no digging through component trees required:


  • personal.json - Name, bio, contact info, social links, hero role, photo
  • site.json - Site title, SEO description, Web3Forms key, nav links, services cards
  • expertise.json - Focus-area cards in the Expertise section
  • skills.json - Tech & tool categories with auto-downloaded devicons
  • portfolio.json - Client work carousel (multi-slide projects)
  • projects.json - Personal project cards with optional GitHub image fetching
  • certifications.json - Credentials and training timeline
  • menu.json - Navigation section labels


πŸš€ Quick Start


With Docker (finished site lands in ./output/):


docker compose build && docker compose up


🌐 Deployment Made Easy


CI/CD workflows are already included in the repo. Just push your code, set your environment variables, and let the platform do the rest.



  • GitHub Pages (Auto-detects base paths & custom domains)
  • GitLab Pages (Auto-detects `CI_PAGES_URL`)
  • Gitea / Forgejo / Codeberg (Build artifacts + Codeberg Pages support)
  • Cloudflare Pages, Netlify, & Vercel (Zero-config auto-detection)
  • Self-Hosted / VPS (Docker outputs a lean ~25MB Nginx image)



πŸ—ΊοΈ Everything Included.


  • Complete JSON-driven content system
  • Automated GitHub README image scraping
  • Strict quality gates (ESLint, Astro Check, Prettier) enforced in Docker
  • Accessible, semantic HTML out of the box
  • Free lifetime updates


πŸ”— Useful Resources


  • Full Documentation β€” Step-by-step setup, JSON breakdowns, deployment guides, and source:

Click to: View the GitHub Repository