https://github.com/andrejkoller/personal
Multilingual personal portfolio website built with Next.js 14+, featuring responsive design, i18n support (EN/DE/RU), and a functional contact form with SendGrid integration.
https://github.com/andrejkoller/personal
css3 html5 javascript nextjs react
Last synced: 5 months ago
JSON representation
Multilingual personal portfolio website built with Next.js 14+, featuring responsive design, i18n support (EN/DE/RU), and a functional contact form with SendGrid integration.
- Host: GitHub
- URL: https://github.com/andrejkoller/personal
- Owner: andrejkoller
- License: mit
- Created: 2025-05-05T06:35:16.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-12-02T12:59:56.000Z (7 months ago)
- Last Synced: 2025-12-05T10:25:16.436Z (7 months ago)
- Topics: css3, html5, javascript, nextjs, react
- Language: JavaScript
- Homepage: https://www.andrejkoller.com
- Size: 98.9 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Short description
A modern, multilingual personal portfolio website built with Next.js 16 and the App Router. Features a responsive design, internationalization support, and a functional contact form with email notifications.
## ✨ Features
- Multilingual Support: English, German and Russian language options
- Responsive Design: Optimized for desktop, tablet, and mobile devices
- Contact Form: Functional contact form with email validation and SendGrid integration
- Modern Tech Stack: Built with Next.js 16, React 19, and CSS Modules
- International Phone Validation: Supports phone number validation for multiple countries
- Dynamic Routing: Language-based routing with Next.js App Router
## 🛠️ Technologies Used
- Framework: Next.js 16 (App Router)
- Frontend: React 19, CSS Modules
- Email Service: SendGrid with Nodemailer
- Validation: libphonenumber-js for international phone numbers
- Image Optimization: Next.js Image component
- Typography: Cormorant, Rubik and Gloock font family
## 📦 Installation
1. Clone the repository:
```bash
git clone https://github.com/andrejkoller/personal.git
cd personal
```
2. Install dependencies:
```bash
npm install
```
3. Run the development server:
```bash
npm run dev
```
4. Navigate to `http://localhost:3000/`
## 📸 Screenshots