Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Minimal personal portfolio template built with Astro, React, TypeScript and Tailwind CSS, with Spotify and Formspree integrations.
Astro-portfolio is a minimal, custom personal portfolio template built on Astro, React, TypeScript, and Tailwind CSS, designed to produce a fast static site with interactive UI components. It is MIT-licensed and published by Oscar Hernandez, with a demo hosted at oscarhernandez.vercel.app.
Astro-portfolio is a single-page portfolio template that runs on Astro's static site generator and ships zero JavaScript by default, only loading React islands where needed. It takes content edited directly in .astro and .tsx component files and produces a fully static site ready for deployment. The template includes a working contact form wired to Formspree, a Spotify album embed in the footer, and a set of interactive React components from ReactBits.dev.
tailwind.config.mjs.LetterGlitch.tsx, LikeButton.tsx, and SkillsList.tsx are written in TypeScript.src/Components/footer.astro.src/Components/contact.astro posts to a Formspree endpoint; replace the action attribute with your own endpoint URL.home.astro, projects.astro, contact.astro, nav.astro, footer.astro, and logoWall.astro under src/Components.src/layouts/Layout.astro.Astro-portfolio is aimed at developers and designers who want a minimal but polished personal site without building from scratch. A front-end developer can clone the repo, install dependencies with npm, and start editing components immediately. A designer who knows Tailwind can restyle the theme by editing tailwind.config.mjs. A musician or artist can showcase a favorite album through the Spotify embed without writing custom code.
Running the template locally requires Node.js v18 or higher and npm or pnpm. The workflow is: clone the repository, run npm install, start the dev server with npm run dev, then edit the component files to replace placeholder content. After customization, the site can be built and deployed to any static host such as Vercel or Netlify.
Yes, the template is released under the MIT License. You must retain the original copyright notice and license text if you redistribute compiled or modified versions, per the license terms.
The README recommends Node.js v18 or higher, with npm or pnpm as the package manager.
Create a free account at Formspree, create a form, and copy the endpoint URL. Then open src/Components/contact.astro and replace the form's action attribute with your endpoint URL.
Yes, the project imports directly into Vercel or Netlify from a GitHub repository; the README also mentions GitHub Pages as an option.
The template ships three React components from ReactBits.dev: LetterGlitch, LikeButton, and SkillsList, all written in TypeScript.
