Modern, high-performance portfolio website built with Next.js 16, Once UI, and TypeScript. Showcasing projects, experience, and technical expertise as a Full-Stack Developer and Founder of Codeshare Technology Ltd.
- π Next.js 16 - Latest React framework with App Router
- π¨ Once UI System - Beautiful, accessible component library
- π± Fully Responsive - Optimized for all devices
- π Dark/Light Mode - Theme switching with system preference detection
- β‘ Static Generation - Blazing fast page loads
- π MDX Support - Write content with React components
- π― TypeScript - Full type safety
- π SEO Optimized - Meta tags, Open Graph, Schema.org
- π GitHub Integration - Auto-fetch and display repositories
- Framework: Next.js 16.2
- UI Library: Once UI System 1.4
- Language: TypeScript 5.8
- Styling: SCSS Modules
- Content: MDX
- Icons: React Icons
- Deployment: Vercel
# Clone the repository
git clone https://github.com/umutxyp/Personal-Website.git
# Navigate to project directory
cd Personal-Website
# Install dependencies
npm install
# Run development server
npm run devOpen http://localhost:3000 to view it in your browser.
npm run dev # Start development server
npm run build # Build for production
npm start # Start production server
npm run lint # Run ESLint
npm run export # Export static siteβββ public/
β βββ images/ # Static images
βββ src/
β βββ app/ # Next.js App Router pages
β β βββ about/ # About page
β β βββ work/ # Projects showcase
β β βββ gallery/ # Image gallery
β β βββ github/ # GitHub repos
β β βββ api/ # API routes
β βββ components/ # React components
β βββ resources/ # Configuration & content
β β βββ content.tsx # Page content
β β βββ site-data.tsx # Site data & metadata
β β βββ once-ui.config.ts # UI configuration
β βββ types/ # TypeScript types
β βββ utils/ # Utility functions
βββ package.json
Edit src/resources/site-data.tsx to update:
- Personal information
- Social links
- Projects
- Work experience
- GitHub username
Customize theme in src/resources/once-ui.config.ts:
- Colors (brand, accent, neutral)
- Typography
- Border styles
- Effects
Enable/disable pages in src/resources/once-ui.config.ts:
const routes = {
"/": true,
"/about": true,
"/work": true,
"/blog": false,
"/gallery": true,
"/github": true,
};- Create a new MDX file in
src/app/work/projects/:
---
title: "Project Name"
publishedAt: "2024-01-01"
summary: "Short description"
images: ["/images/projects/project.png"]
team: []
link: "https://project.com"
---
Project content here...- The project will automatically appear on the work page.
Update theme colors in once-ui.config.ts:
brand: Primary brand coloraccent: Accent/secondary colorneutral: Gray scale tones
Configured in once-ui.config.ts using Next.js Font optimization:
- Heading: Geist
- Body: Geist
- Code: Geist Mono
- Push to GitHub
- Import project in Vercel
- Deploy automatically
npm run build
npm startThe /github page automatically fetches your public repositories. Update your GitHub username in src/resources/site-data.tsx:
github: {
username: "umutxyp",
highlight: ["Codeshare", "Beatra", "MusicBot"],
}Optional: Create .env.local for password protection:
PAGE_ACCESS_PASSWORD=your_passwordEnable protected routes in once-ui.config.ts:
const protectedRoutes = {
"/about": true
};This project is open source and available under the MIT License.
- Website: umutbayraktar.vercel.app
- GitHub: @umutxyp
- LinkedIn: umutxyp
- Twitter: @devbayraktar
- Email: umutbayraktar55@gmail.com
Built with β€οΈ by Umut Bayraktar | Powered by Next.js & Once UI