https://github.com/seferogluemre/dev-portfolio
https://github.com/seferogluemre/dev-portfolio
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/seferogluemre/dev-portfolio
- Owner: seferogluemre
- Created: 2025-09-02T10:58:43.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-09-02T13:17:34.000Z (4 months ago)
- Last Synced: 2025-09-02T13:18:32.654Z (4 months ago)
- Language: TypeScript
- Size: 158 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π Emre SEFEROΔLU - Developer Portfolio
**Modern, responsive portfolio website built with Next.js 15 and TypeScript**
[](https://nextjs.org)
[](https://typescriptlang.org)
[](https://tailwindcss.com)
[](https://reactjs.org)
[π Live Demo](https://seferogluemre.com) β’ [π§ Contact](mailto:seferoglu.yazilim@outlook.com)
---
## π Table of Contents
- [β¨ Features](#-features)
- [π οΈ Tech Stack](#οΈ-tech-stack)
- [π Project Structure](#-project-structure)
- [π Quick Start](#-quick-start)
- [π Detailed Setup](#-detailed-setup)
- [π― Usage](#-usage)
- [π Deployment](#-deployment)
- [π€ Contributing](#-contributing)
- [π License](#-license)
- [π Contact](#-contact)
---
## β¨ Features
### π¨ **UI/UX**
- β
**Modern Design** - Clean, professional interface
- β
**Fully Responsive** - Works on all devices and screen sizes
- β
**Dark/Light Theme** - Toggle between themes
- β
**Smooth Animations** - Framer Motion powered animations
- β
**Mobile-First** - Optimized for mobile experience
### π **Internationalization**
- β
**Multi-language Support** - Turkish and English
- β
**Dynamic Language Switch** - Real-time language switching
- β
**Localized Content** - All content available in both languages
### π± **Pages & Features**
- β
**Home Page** - Hero section with introduction
- β
**Blog System** - Article management with search
- β
**About Page** - Personal information and skills
- β
**Projects Portfolio** - Showcase of development projects
- β
**Contact Integration** - Social media and email links
### π§ **Technical**
- β
**TypeScript** - Full type safety
- β
**Server Components** - Next.js 15 App Router
- β
**SEO Optimized** - Meta tags and structured data
- β
**Performance** - Optimized loading and rendering
- β
**Accessible** - WCAG guidelines compliance
---
## π οΈ Tech Stack
### **Frontend Framework**
- **[Next.js 15](https://nextjs.org)** - React framework with App Router
- **[React 19](https://reactjs.org)** - UI library
- **[TypeScript](https://typescriptlang.org)** - Type-safe JavaScript
### **Styling & UI**
- **[Tailwind CSS 4](https://tailwindcss.com)** - Utility-first CSS framework
- **[Radix UI](https://radix-ui.com)** - Headless UI components
- **[Lucide React](https://lucide.dev)** - Beautiful icons
- **[Framer Motion](https://framer.com/motion)** - Animation library
### **Development Tools**
- **[ESLint](https://eslint.org)** - Code linting
- **[PostCSS](https://postcss.org)** - CSS processing
- **[Next Themes](https://github.com/pacocoursey/next-themes)** - Theme switching
---
## π Project Structure
```
dev-portfolio/
βββ π public/ # Static assets
β βββ favicon.ico
β βββ logo-bg.svg
β βββ ...
β
βββ π src/ # Source code
β βββ π app/ # Next.js App Router
β β βββ layout.tsx # Root layout
β β βββ page.tsx # Home page
β β βββ globals.css # Global styles
β β βββ π blog/ # Blog routes
β β βββ π about/ # About page
β β βββ π projects/ # Projects page
β β
β βββ π features/ # Feature-based modules
β β βββ π home/ # Home page feature
β β β βββ π components/ # Feature components
β β β βββ π data/ # Mock data (JSON)
β β β βββ π types/ # TypeScript types
β β β βββ index.tsx # Main component
β β βββ π blog/ # Blog feature
β β βββ π about/ # About feature
β β βββ π projects/ # Projects feature
β β
β βββ π components/ # Shared components
β β βββ π layout/ # Layout components
β β β βββ Header.tsx # Navigation header
β β β βββ Footer.tsx # Site footer
β β βββ π ui/ # Reusable UI components
β β βββ button.tsx
β β βββ card.tsx
β β βββ badge.tsx
β β
β βββ π contexts/ # React contexts
β β βββ LanguageContext.tsx # i18n context
β β
β βββ π hooks/ # Custom React hooks
β β βββ index.ts # Hook exports
β β
β βββ π constants/ # Application constants
β β βββ index.ts # Site config
β β
β βββ π lib/ # Utility functions
β βββ utils.ts # Helper functions
β
βββ π package.json # Dependencies
βββ π tsconfig.json # TypeScript config
βββ π tailwind.config.js # Tailwind config
βββ π next.config.ts # Next.js config
βββ π README.md # This file
```
### ποΈ **Architecture Principles**
This project follows **enterprise-level architectural patterns**:
- **π― Feature-Based Organization** - Each feature is self-contained
- **π§© Atomic Design** - Reusable component hierarchy
- **π± Mobile-First** - Responsive design approach
- **π Type Safety** - Full TypeScript coverage
- **π¨ Design System** - Consistent UI components
- **β»οΈ Clean Code** - SOLID principles and clean architecture
---
## π Quick Start
### **Prerequisites**
- Node.js 18+ installed
- npm, yarn, or bun package manager
### **1οΈβ£ Clone & Install**
```bash
# Clone the repository
git clone https://github.com/beratgdlk/dev-portfolio.git
# Navigate to directory
cd dev-portfolio
# Install dependencies
npm install
# or
yarn install
# or
bun install
```
### **2οΈβ£ Run Development Server**
```bash
npm run dev
# or
yarn dev
# or
bun dev
```
### **3οΈβ£ Open in Browser**
Navigate to [http://localhost:3000](http://localhost:3000) π
---
## π Detailed Setup
### **Development Environment**
1. **Install Dependencies**
```bash
npm install
```
2. **Start Development Server**
```bash
npm run dev
```
3. **Build for Production**
```bash
npm run build
```
4. **Start Production Server**
```bash
npm start
```
5. **Lint Code**
```bash
npm run lint
```
### **Environment Variables**
No environment variables are required for basic setup. All configuration is handled through:
- `src/constants/index.ts` - Site configuration
- Feature-specific JSON data files
### **Customization**
1. **Personal Information**
- Update `src/constants/index.ts`
- Modify feature-specific JSON files in `src/features/*/data/`
2. **Styling**
- Colors: `tailwind.config.js`
- Components: `src/components/ui/`
3. **Content**
- Blog posts: `src/features/blog/data/blogData.json`
- About info: `src/features/about/data/aboutData.json`
---
## π― Usage
### **Adding Blog Posts**
```json
// src/features/blog/data/blogData.json
{
"posts": [
{
"slug": "new-post-slug",
"title": "Post Title",
"description": "Brief description",
"content": "Full content...",
"date": "Date",
"readTime": "X dk okuma",
"tags": ["tag1", "tag2"],
"image": null
}
]
}
```
### **Adding Projects**
```json
// src/features/projects/data/projectsData.json
{
"projects": [
{
"id": "project-id",
"title": "Project Title",
"description": "Description",
"technologies": ["React", "Node.js"],
"liveUrl": "https://example.com",
"githubUrl": "https://github.com/...",
"status": "completed"
}
]
}
```
---
## π Deployment
### **Vercel (Recommended)**
[](https://vercel.com/new/clone?repository-url=https://github.com/beratgdlk/dev-portfolio)
```bash
npm install -g vercel
vercel --prod
```
### **Netlify**
```bash
npm run build
# Upload 'out' directory to Netlify
```
### **Docker**
```dockerfile
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]
```
---
## π€ Contributing
Contributions are welcome! Please follow these steps:
1. **Fork the repository**
2. **Create feature branch**
```bash
git checkout -b feature/amazing-feature
```
3. **Commit changes**
```bash
git commit -m 'Add amazing feature'
```
4. **Push to branch**
```bash
git push origin feature/amazing-feature
```
5. **Open Pull Request**
### **Development Guidelines**
- Follow TypeScript best practices
- Use conventional commit messages
- Add tests for new features
- Update documentation
---
## π License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
---
## π Contact
**Emre SEFEROΔLU**
- π Website: [seferoglu.yazilim@outlook.com](https://seferogluemre.com)
- π§ Email: [seferoglu.yazilim@outlook.com](mailto:seferoglu.yazilim@outlook.com)
- πΌ LinkedIn: [linkedin.com/in/seferogluemre](https://www.linkedin.com/in/seferogluemre/)
- π GitHub: [github.com/seferogluemre](https://github.com/seferogluemre)
- π Medium: [medium.com/@seferogluemre](https://medium.com/@seferogluemre)
---
Made with β€οΈ by Emre SEFEROΔLU
β Star this repo if you found it helpful!