A modern, lightning-fast portfolio website template built with Astro and Tailwind CSS. Showcase your work with multilingual support, dark/light mode, and optimized performance.
- Modern Design - Clean, professional, and customizable
- Fully Responsive - Mobile-first approach for all devices
- Dark/Light Mode - Automatic theme switching with manual toggle
- Multilingual Support - Built-in English and German with easy expansion
- Lightning Fast - Astro's static site generation (90+ Lighthouse score)
- SEO Optimized - Built-in meta tags and optimized assets
- Accessibility - WCAG 2.1 AA compliant
- Easy Content Management - Update content through JSON files
- Performance Optimized - Compressed images and minimal JavaScript
- Navigation - Header with language switcher
- Hero - Introduction with photo and call-to-action
- Values/Approach - Professional values showcase
- Skills & Tools - Expertise display across categories
- Projects - Project showcase with details
- Experience Timeline - Professional journey display
- Contact - Contact information with action buttons
- Legal Pages - Imprint and privacy policy (GDPR compliant)
- Astro - Static site generator
- Tailwind CSS - Utility-first CSS framework
- GSAP - Animation library
- AOS - Scroll animations
- Node.js 16 or higher
- npm or yarn
- Clone this repository
git clone https://github.com/nicremo/astro-multilingual-portfolio-template.git
cd astro-multilingual-portfolio-template- Install dependencies
npm install- Run the development server
npm run dev- Open your browser at
http://localhost:4321
Update your contact information in src/utils/me.ts:
- Name, Homepage URL, LinkedIn username, GitHub username
Base64 encoded fields (see comments in me.ts for encoding instructions):
- Email, Phone, Address
Update content in:
astro.config.mjsandrobots.txt- Replace site URLsrc/i18n/en.jsonandsrc/i18n/de.json- All text contentsrc/assets/- Replace with your images (logos, profile photo, favicon)
Modify tailwind.config.mjs to change colors:
theme: {
extend: {
colors: {
primary: '#3B82F6',
secondary: '#1F2937',
accent: '#10B981',
}
}
}Edit the project section in language files:
"projects": {
"projectName": {
"shortDescription": "Brief description",
"challenge": "The problem solved",
"approach": "Your solution approach",
"result": "Outcome and impact"
}
}- Create new language file in
src/i18n/(e.g.,fr.json) - Copy structure from
en.jsonand translate - Update language switcher component
Build for production:
npm run buildDeploy to:
- Netlify - Continuous deployment from GitHub
- Vercel - Simple deployment for personal projects
- GitHub Pages - Free hosting from repository
This project is licensed under the MIT License - see the LICENSE.md file for details.
Copyright (c) 2025 Fabian Bitzer
Contributions, issues and feature requests are welcome! Check the issues page.
Created by Fabian Bitzer
