A high-performance, modern portfolio website built with Astro 5, Bun, and TailwindCSS 4, featuring a stunning Bento Grid layout to showcase your projects.
- ๐ Blazing Fast: Built with Astro 5 for optimal performance (zero JavaScript by default)
- ๐จ Modern Design: Professional 2026 color palette with glassmorphism effects
- ๐ฑ Mobile-First: Fully responsive design that looks great on all devices
- ๐ฏ Bento Grid Layout: Flexible grid system with varying card sizes
- โฟ Accessible: Keyboard navigation and screen reader friendly
- ๐ญ Smooth Animations: Subtle micro-animations for enhanced UX
- ๐ง Easy to Customize: Well-structured code with TypeScript support
- Framework: Astro 5
- Package Manager: Bun
- Styling: TailwindCSS 4
- Language: TypeScript
- Fonts: Inter (Google Fonts)
- Bun installed on your system
-
Clone the repository (or you're already here!)
-
Install dependencies:
bun install
-
Start the development server:
bun run dev
-
Open your browser and visit
http://localhost:4321
Edit src/data/projects.ts to add your own projects:
export const projects: Project[] = [
{
id: 'unique-id',
title: 'Your Project Name',
description: 'A brief description of your project',
tags: ['React', 'TypeScript', 'Node.js'],
github: 'https://github.com/yourusername/project',
link: 'https://your-project-demo.com',
size: '2x1', // Options: '1x1', '2x1', '1x2', '2x2'
featured: true, // Optional: highlights the project
},
// Add more projects...
];Edit src/styles/global.css to change the color palette:
:root {
--color-slate-dark: #2c3e50;
--color-teal-deep: #0d9488;
/* ... customize other colors */
}-
Hero Section: Edit
src/pages/index.astro- Update your name in the hero title
- Modify the description
- Adjust the CTA buttons
-
Header: Edit
src/components/Header.astro- Change the logo/brand name
- Modify navigation links
-
Footer: Edit
src/components/Footer.astro- Update social media links
- Change copyright information
The Bento Grid supports four card sizes:
1x1: Standard square card2x1: Wide card (spans 2 columns)1x2: Tall card (spans 2 rows)2x2: Large card (spans 2 columns and 2 rows)
On mobile devices, all cards automatically collapse to single-column layout.
bun run buildbun run preview-
Install Vercel CLI:
bun add -g vercel
-
Deploy:
vercel
- Build command:
bun run build - Publish directory:
dist
See Astro's deployment guide for detailed instructions.
awesome-project/
โโโ src/
โ โโโ components/
โ โ โโโ BentoGrid.astro # Main grid layout
โ โ โโโ ProjectCard.astro # Individual project card
โ โ โโโ Header.astro # Navigation header
โ โ โโโ Footer.astro # Footer with social links
โ โโโ layouts/
โ โ โโโ BaseLayout.astro # Base HTML structure
โ โโโ pages/
โ โ โโโ index.astro # Homepage
โ โโโ data/
โ โ โโโ projects.ts # Project data
โ โโโ styles/
โ โโโ global.css # Global styles & design system
โโโ public/ # Static assets
โโโ astro.config.mjs # Astro configuration
โโโ package.json
โโโ bun.lockb
This portfolio is optimized for maximum performance:
- โ Zero JavaScript by default (Astro's Islands Architecture)
- โ Optimized CSS (TailwindCSS 4)
- โ Fast font loading (Google Fonts with preconnect)
- โ Responsive images
- โ Target: 95+ Lighthouse score
bun run dev- Start development serverbun run build- Build for productionbun run preview- Preview production buildbun run astro check- Check for TypeScript errors
Feel free to customize this portfolio to your needs! If you find any issues or have suggestions, please open an issue.
MIT License - feel free to use this template for your own portfolio!
- Built with Astro
- Styled with TailwindCSS
- Powered by Bun
- Design inspired by 2026 professional trends
Made with โค๏ธ using Astro + Bun