Skip to content

This is my personal developer portfolio built with Next.js 14, Tailwind CSS, ShadCN/UI, and MDX. It showcases my projects, skills, blogs, and more.

License

Notifications You must be signed in to change notification settings

rajtilak-2020/Portfolio-V4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

759 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Portfolio Banner

A cutting-edge, high-performance portfolio showcasing modern web development excellence

Website Next.js TypeScript Tailwind CSS

Build Status License Stars Forks


🎯 Overview

A modern, performant, and visually stunning portfolio website that represents the pinnacle of contemporary web development.

This is the fourth iteration of my personal portfolio, built from the ground up with modern web technologies and best practices. It showcases my journey as a developer through an elegant, responsive, and highly optimized user experience.

🌟 What Makes This Special

  • 🎨 Modern Design Language - Clean, minimal, and accessible design with smooth animations
  • ⚑ Lightning Fast - Optimized for Core Web Vitals with 95+ Lighthouse scores
  • πŸ“± Fully Responsive - Seamless experience across all devices and screen sizes
  • πŸŒ™ Smart Theming - Intelligent dark/light mode with system preference detection
  • πŸ“ Dynamic Content - MDX-powered blog with syntax highlighting and interactive elements
  • πŸ” SEO Optimized - Complete meta tags, structured data, and social sharing

Repository Analytics

✨ Key Features

🎨 User Experience Features
  • Immersive Hero Section with animated text and dynamic backgrounds
  • Interactive Navigation with smooth scrolling and active section highlighting
  • Project Showcase with live previews, GitHub integration, and detailed case studies
  • Skills Visualization with animated progress bars and technology icons
  • Contact Integration with social links and direct messaging capabilities
  • Blog System with category filtering, search, and reading time estimates
⚑ Performance Features
  • Code Splitting - Automatic route-based and component-based splitting
  • Image Optimization - Next.js Image component with WebP/AVIF support
  • Lazy Loading - Progressive content loading for improved initial load times
  • Bundle Analysis - Optimized bundle sizes with tree-shaking
  • Caching Strategy - Strategic caching with Vercel Edge Network
  • Core Web Vitals - Optimized for Google's performance metrics
πŸ”§ Developer Features
  • TypeScript Integration - Full type safety with strict configuration
  • Component Library - Reusable UI components with ShadCN/UI
  • Animation System - Magic UI and Framer Motion for smooth interactions
  • Content Management - MDX support for rich content creation
  • Development Tools - ESLint, Prettier, and comprehensive testing setup
  • CI/CD Pipeline - Automated testing, building, and deployment

πŸ—οΈ System Architecture

graph TB
    subgraph "Client Layer"
        A[🌐 Browser] --> B[⚑ Next.js App Router]
        B --> C[🎨 React Components]
        C --> D[πŸ’« Magic UI Animations]
        D --> E[🎭 ShadCN/UI Components]
    end
    
    subgraph "Application Core"
        B --> F[πŸ“± Page Components]
        F --> G[🧩 Reusable Components]
        G --> H[πŸ“Š Data Layer]
        H --> I[πŸ”„ State Management]
        I --> J[🎯 Business Logic]
    end
    
    subgraph "Content Management"
        K[πŸ“ MDX Content] --> L[πŸ” Content Parser]
        L --> M[✨ Syntax Highlighter]
        M --> N[πŸ“– Blog System]
        N --> F
    end
    
    subgraph "Styling System"
        O[🎨 Tailwind CSS] --> P[πŸŒ™ Theme Provider]
        P --> Q[πŸ’‘ Design Tokens]
        Q --> R[πŸ“ Responsive Utilities]
        R --> E
    end
    
    subgraph "Build & Optimization"
        S[βš™οΈ Next.js Compiler] --> T[πŸ“¦ Webpack Bundle]
        T --> U[πŸ—œοΈ Code Splitting]
        U --> V[πŸ–ΌοΈ Image Optimization]
        V --> W[πŸ’¨ Static Generation]
    end
    
    subgraph "Deployment & CDN"
        W --> X[πŸš€ Vercel Platform]
        X --> Y[🌍 Edge Network]
        Y --> Z[πŸ“ˆ Analytics & Monitoring]
        Z --> A
    end
    
    subgraph "External Integrations"
        AA[πŸ“§ Email Service] --> F
        BB[πŸ™ GitHub API] --> H
        CC[πŸ“Š Analytics APIs] --> Z
        DD[🎯 SEO Tools] --> B
    end

    classDef clientLayer fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#01579b
    classDef appCore fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#4a148c
    classDef content fill:#e8f5e8,stroke:#388e3c,stroke-width:2px,color:#1b5e20
    classDef styling fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#e65100
    classDef build fill:#fce4ec,stroke:#c2185b,stroke-width:2px,color:#880e4f
    classDef deploy fill:#f1f8e9,stroke:#689f38,stroke-width:2px,color:#33691e
    classDef external fill:#f5f5f5,stroke:#616161,stroke-width:2px,color:#212121

    class A,B,C,D,E clientLayer
    class F,G,H,I,J appCore
    class K,L,M,N content
    class O,P,Q,R styling
    class S,T,U,V,W build
    class X,Y,Z deploy
    class AA,BB,CC,DD external
Loading

πŸ”„ Data Flow Architecture

sequenceDiagram
    participant User as πŸ‘€ User
    participant Browser as 🌐 Browser
    participant NextJS as ⚑ Next.js
    participant Components as 🧩 Components
    participant Data as πŸ“Š Data Layer
    participant CMS as πŸ“ Content
    participant CDN as 🌍 Vercel CDN

    User->>Browser: Visit Portfolio
    Browser->>NextJS: Request Page
    NextJS->>Data: Fetch Static Data
    NextJS->>CMS: Parse MDX Content
    NextJS->>Components: Hydrate Components
    Components->>Browser: Render UI
    Browser->>CDN: Load Assets
    CDN->>Browser: Optimized Assets
    Browser->>User: Display Portfolio

    Note over User,CDN: Lightning Fast Experience ⚑
Loading

πŸ”§ Technology Stack

🎯 Core Technologies

Technology Version Purpose Performance Impact
Next.js 14.x React Framework App Router, SSG, Image Optimization
TypeScript 5.x Type Safety Development Experience, Runtime Safety
Tailwind CSS 3.x Styling Framework Utility-First, Minimal CSS Bundle
ShadCN/UI Latest Component Library Consistent Design System
Magic UI Latest Animations Smooth UX Interactions

πŸ› οΈ Development Tools

Tool Purpose Benefits
PNPM Package Manager Faster installs, Disk efficiency
ESLint Code Linting Code quality, Best practices
Prettier Code Formatting Consistent code style
Husky Git Hooks Pre-commit validation

πŸš€ Deployment & Performance

Service Purpose Impact
Vercel Hosting Platform Edge deployment, Analytics
Vercel Edge Network CDN Global performance
Next.js Analytics Performance Monitoring Real user metrics

πŸš€ Quick Start

Prerequisites

# Required versions
Node.js >= 18.0.0
PNPM >= 8.0.0 (recommended)
Git >= 2.0.0

One-Command Setup

# Clone and setup in one go
npx create-next-app@latest my-portfolio --example https://github.com/rajtilak-2020/K-Rajtilak_s-Portfolio-V4
cd my-portfolio && pnpm dev

Manual Setup

πŸ“‹ Step-by-step installation
# 1️⃣ Clone the repository
git clone https://github.com/rajtilak-2020/K-Rajtilak_s-Portfolio-V4.git
cd K-Rajtilak_s-Portfolio-V4

# 2️⃣ Install dependencies (PNPM recommended)
pnpm install
# or npm install

# 3️⃣ Create environment file
cp .env.example .env.local

# 4️⃣ Start development server
pnpm dev

# 5️⃣ Open in browser
# Navigate to http://localhost:3000

πŸ“‹ Available Scripts

# Development
pnpm dev          # Start dev server with hot reload
pnpm dev:turbo    # Start dev server with Turbopack

# Building
pnpm build        # Production build
pnpm start        # Start production server
pnpm export       # Static export

# Code Quality
pnpm lint         # Run ESLint
pnpm lint:fix     # Fix linting issues
pnpm type-check   # TypeScript type checking
pnpm format       # Format code with Prettier

# Testing
pnpm test         # Run unit tests
pnpm test:watch   # Watch mode testing
pnpm test:e2e     # End-to-end testing

# Analysis
pnpm analyze      # Bundle size analysis
pnpm lighthouse   # Performance audit

πŸ“‚ Project Structure

graph TD
    subgraph "πŸ“ Root Directory"
        A[🏠 K-Rajtilak-Portfolio-V4]
    end
    
    subgraph "πŸ“‹ Configuration"
        A --> B1[βš™οΈ next.config.mjs]
        A --> B2[🎨 tailwind.config.ts]
        A --> B3[πŸ“¦ package.json]
        A --> B4[πŸ”§ tsconfig.json]
        A --> B5[πŸ“ .env.example]
    end
    
    subgraph "πŸ“ Source Code"
        A --> C[πŸ’» src/]
        C --> C1[πŸ“± app/]
        C --> C2[🧩 components/]
        C --> C3[πŸ“Š data/]
        C --> C4[πŸ”§ lib/]
        C --> C5[🎨 styles/]
    end
    
    subgraph "πŸ“± App Router"
        C1 --> D1[πŸ“„ layout.tsx]
        C1 --> D2[🏠 page.tsx]
        C1 --> D3[πŸ“ blog/]
        C1 --> D4[πŸ‘€ about/]
        C1 --> D5[πŸ’Ό projects/]
        D3 --> D3a[πŸ“„ slug/page.tsx]
    end
    
    subgraph "🧩 Components"
        C2 --> E1[✨ magic-ui/]
        C2 --> E2[🎭 ui/]
        C2 --> E3[πŸ“± sections/]
        C2 --> E4[πŸ—‚οΈ layout/]
        
        E1 --> E1a[πŸ’« blur-fade.tsx]
        E1 --> E1b[🚒 dock.tsx]
        E1 --> E1c[πŸ“ animated-text.tsx]
        
        E2 --> E2a[πŸ”˜ button.tsx]
        E2 --> E2b[πŸ’³ card.tsx]
        E2 --> E2c[πŸ‘€ avatar.tsx]
        
        E3 --> E3a[🎯 hero.tsx]
        E3 --> E3b[πŸ’Ό projects.tsx]
        E3 --> E3c[πŸ› οΈ skills.tsx]
        
        E4 --> E4a[πŸ“ navbar.tsx]
        E4 --> E4b[πŸ‘£ footer.tsx]
    end
    
    subgraph "πŸ“Š Data Layer"
        C3 --> F1[πŸ“ blog.ts]
        C3 --> F2[πŸ’Ό projects.ts]
        C3 --> F3[πŸ“„ resume.ts]
        C3 --> F4[πŸ› οΈ skills.ts]
    end
    
    subgraph "πŸ“ Content & Assets"
        A --> G[πŸ“„ content/]
        A --> H[🌍 public/]
        
        G --> G1[πŸ“ blog/]
        G --> G2[πŸ’Ό projects/]
        G1 --> G1a[πŸ“„ *.mdx files]
        
        H --> H1[πŸ–ΌοΈ images/]
        H --> H2[🎨 icons/]
        H --> H3[πŸ“„ favicon/]
    end

    classDef config fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#e65100
    classDef source fill:#e8f5e8,stroke:#388e3c,stroke-width:2px,color:#1b5e20
    classDef app fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#01579b
    classDef components fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px,color:#4a148c
    classDef data fill:#fce4ec,stroke:#c2185b,stroke-width:2px,color:#880e4f
    classDef content fill:#f1f8e9,stroke:#689f38,stroke-width:2px,color:#33691e

    class B1,B2,B3,B4,B5 config
    class C,C1,C2,C3,C4,C5 source
    class D1,D2,D3,D4,D5,D3a app
    class E1,E2,E3,E4,E1a,E1b,E1c,E2a,E2b,E2c,E3a,E3b,E3c,E4a,E4b components
    class F1,F2,F3,F4 data
    class G,H,G1,G2,G1a,H1,H2,H3 content
Loading

πŸ“‹ Directory Details

K-Rajtilak-Portfolio-V4/
β”œβ”€β”€ πŸ“ src/
β”‚   β”œβ”€β”€ πŸ“± app/                    # Next.js App Router
β”‚   β”‚   β”œβ”€β”€ πŸ“„ layout.tsx          # Root layout component
β”‚   β”‚   β”œβ”€β”€ 🏠 page.tsx            # Homepage
β”‚   β”‚   β”œβ”€β”€ πŸ“ blog/               # Blog pages
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ“„ page.tsx        # Blog listing
β”‚   β”‚   β”‚   └── πŸ“„ [slug]/         # Individual blog posts
β”‚   β”‚   β”œβ”€β”€ πŸ‘€ about/              # About page
β”‚   β”‚   └── πŸ’Ό projects/           # Projects showcase
β”‚   β”‚
β”‚   β”œβ”€β”€ 🧩 components/             # Reusable components
β”‚   β”‚   β”œβ”€β”€ ✨ magic-ui/           # Magic UI components
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ’« blur-fade.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ 🚒 dock.tsx
β”‚   β”‚   β”‚   └── πŸ“ animated-text.tsx
β”‚   β”‚   β”œβ”€β”€ 🎭 ui/                 # ShadCN UI components
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ”˜ button.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ’³ card.tsx
β”‚   β”‚   β”‚   └── πŸ‘€ avatar.tsx
β”‚   β”‚   β”œβ”€β”€ πŸ“± sections/           # Page sections
β”‚   β”‚   β”‚   β”œβ”€β”€ 🎯 hero.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ πŸ’Ό projects.tsx
β”‚   β”‚   β”‚   └── πŸ› οΈ skills.tsx
β”‚   β”‚   └── πŸ—‚οΈ layout/             # Layout components
β”‚   β”‚       β”œβ”€β”€ πŸ“ navbar.tsx
β”‚   β”‚       └── πŸ‘£ footer.tsx
β”‚   β”‚
β”‚   β”œβ”€β”€ πŸ“Š data/                   # Static data
β”‚   β”‚   β”œβ”€β”€ πŸ“ blog.ts             # Blog metadata
β”‚   β”‚   β”œβ”€β”€ πŸ’Ό projects.ts         # Project data
β”‚   β”‚   β”œβ”€β”€ πŸ“„ resume.ts           # Resume information
β”‚   β”‚   └── πŸ› οΈ skills.ts           # Skills data
β”‚   β”‚
β”‚   β”œβ”€β”€ πŸ”§ lib/                    # Utility functions
β”‚   β”‚   β”œβ”€β”€ πŸ› οΈ utils.ts            # Helper utilities
β”‚   β”‚   β”œβ”€β”€ πŸ“ mdx.ts              # MDX processing
β”‚   β”‚   └── 🎨 fonts.ts            # Font configurations
β”‚   β”‚
β”‚   └── 🎨 styles/                 # Global styles
β”‚       └── 🌍 globals.css         # Global CSS
β”‚
β”œβ”€β”€ πŸ“„ content/                    # MDX content
β”‚   β”œβ”€β”€ πŸ“ blog/                   # Blog posts
β”‚   β”‚   β”œβ”€β”€ πŸ“„ first-post.mdx
β”‚   β”‚   └── πŸ“„ second-post.mdx
β”‚   └── πŸ’Ό projects/               # Project documentation
β”‚
β”œβ”€β”€ 🌍 public/                     # Static assets
β”‚   β”œβ”€β”€ πŸ–ΌοΈ images/                 # Images
β”‚   β”œβ”€β”€ 🎨 icons/                  # Icons and favicons
β”‚   └── πŸ“„ resume.pdf              # Resume file
β”‚
└── βš™οΈ Configuration Files
    β”œβ”€β”€ πŸ“¦ package.json            # Dependencies
    β”œβ”€β”€ βš™οΈ next.config.mjs         # Next.js config
    β”œβ”€β”€ 🎨 tailwind.config.ts      # Tailwind config
    β”œβ”€β”€ πŸ”§ tsconfig.json           # TypeScript config
    └── πŸ“ .env.example            # Environment template

🎨 Design System

🎯 Design Principles

  • Minimalism - Clean, uncluttered interfaces with purposeful whitespace
  • Consistency - Unified design language across all components
  • Accessibility - WCAG 2.1 AA compliant with proper contrast ratios
  • Performance - Optimized for fast loading and smooth interactions

🌈 Color Palette

/* Primary Colors */
--primary: 220 90% 56%;           /* Blue */
--primary-foreground: 220 90% 98%; 

/* Secondary Colors */
--secondary: 220 14.3% 95.9%;     /* Light Gray */
--secondary-foreground: 220 8.9% 46.1%;

/* Accent Colors */
--accent: 220 14.3% 95.9%;        /* Accent Blue */
--accent-foreground: 220 8.9% 46.1%;

/* Status Colors */
--destructive: 0 62.8% 30.6%;     /* Red for errors */
--success: 142 76% 36%;           /* Green for success */
--warning: 38 92% 50%;            /* Orange for warnings */

πŸ“ Typography Scale

Size Usage Font Weight
text-4xl Headings 700 (Bold)
text-2xl Subheadings 600 (Semi-bold)
text-lg Body Large 500 (Medium)
text-base Body Text 400 (Regular)
text-sm Caption 400 (Regular)

πŸ“± Screenshots

πŸŒ™ Dark Mode Experience

Dark Mode Hero

β˜€οΈ Light Mode Experience

Light Mode Hero

πŸ“± Mobile Responsiveness

πŸ“± Mobile πŸ’» Tablet πŸ–₯️ Desktop

⚑ Performance

πŸ† Lighthouse Scores

Metric Score Description
Performance 98/100 Fast loading and smooth interactions
Accessibility 100/100 WCAG 2.1 AA compliant
Best Practices 100/100 Modern web standards
SEO 100/100 Search engine optimized

πŸ“Š Core Web Vitals

graph LR
    subgraph "⚑ Loading Performance"
        A[FCP: 1.2s] --> A1[βœ… Good]
        B[LCP: 1.8s] --> B1[βœ… Good] 
        C[FID: 50ms] --> C1[βœ… Good]
        D[CLS: 0.05] --> D1[βœ… Good]
    end
    
    subgraph "🎯 Optimization Targets"
        E[Images: WebP/AVIF]
        F[Code Splitting: Automatic]
        G[Bundle Size: < 200KB]
        H[Caching: Edge Network]
    end
    
    classDef good fill:#c6f6d5,stroke:#38a169,stroke-width:2px,color:#22543d
    classDef optimization fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#01579b
    
    class A1,B1,C1,D1 good
    class E,F,G,H optimization
Loading

πŸ”§ Performance Optimizations

⚑ View detailed optimizations

πŸ–ΌοΈ Image Optimization

  • Next.js Image Component - Automatic WebP/AVIF conversion
  • Lazy Loading - Images load only when needed
  • Responsive Images - Multiple sizes for different screen sizes
  • Placeholder Blur - Smooth loading experience

πŸ“¦ Bundle Optimization

  • Tree Shaking - Remove unused code automatically
  • Code Splitting - Load only necessary JavaScript
  • Dynamic Imports - Reduce initial bundle size
  • Compression - Gzip/Brotli compression

πŸš€ Runtime Performance

  • Virtual Scrolling - Efficient large list rendering
  • Memoization - Prevent unnecessary re-renders
  • Service Worker - Cache resources for offline access
  • Prefetching - Load next pages in advance

πŸ› οΈ Development

🎯 Development Workflow

graph LR
    A[πŸš€ Initial Setup] --> B[πŸ“ Create Feature Branch]
    B --> C[⚑ Add Component]
    C --> D[πŸ§ͺ Write Tests]
    D --> E[πŸ“š Update Docs]
    E --> F[πŸ”„ Switch to Main]
    F --> G[πŸ”— Merge Feature]
    G --> H[🌐 Deploy to Vercel]

    %% Branch styling
    A --> I[πŸ“‹ main branch]
    B --> J[🌿 feature branch]
    C --> J
    D --> J
    E --> J
    F --> I
    G --> I
    H --> I

    classDef mainBranch fill:#e6f7ff,color:#0066cc,stroke:#0052cc,stroke-width:3px,font-weight:bold
    classDef featureBranch fill:#f0f8e6,color:#2d5016,stroke:#52c41a,stroke-width:2px
    classDef commit fill:#fff2e6,color:#d46b08,stroke:#fa8c16,stroke-width:2px
    classDef deploy fill:#f6ffed,color:#389e0d,stroke:#52c41a,stroke-width:3px,font-weight:bold

    class I mainBranch
    class J featureBranch
    class A,C,D,E,G commit
    class B,F commit
    class H deploy
Loading

πŸ§ͺ Testing Strategy

πŸ” Testing Approach

Unit Testing

  • Jest - JavaScript testing framework
  • React Testing Library - Component testing utilities
  • Coverage Reports - Maintain >80% code coverage

Integration Testing

  • Playwright - End-to-end testing
  • Visual Regression - Screenshot comparisons
  • Performance Testing - Lighthouse CI

Quality Assurance

  • ESLint - Code quality and consistency
  • Prettier - Code formatting
  • Husky - Pre-commit hooks
  • TypeScript - Static type checking

πŸ”§ Customization Guide

🎨 How to customize for your use

1. Personal Information

// src/data/resume.ts
export const RESUME = {
  name: "Your Name",
  title: "Your Title", 
  email: "your.email@example.com",
  // ... more personal data
}

2. Projects Data

// src/data/projects.ts  
export const PROJECTS = [
  {
    title: "Your Project",
    description: "Project description",
    technologies: ["Next.js", "TypeScript"],
    // ... project details
  }
]

3. Styling Customization

/* src/styles/globals.css */
:root {
  --your-custom-color: #your-hex-code;
  --your-custom-font: 'Your Font Family';
}

4. Content Management

<!-- content/blog/your-post.mdx -->
---
title: "Your Blog Post"
date: "2024-01-01"  
description: "Post description"
---

Your MDX content here...

πŸ“š Documentation

πŸ“– Resources & References

πŸŽ“ Learning Resources

πŸ“š Recommended tutorials and guides

Next.js Learning Path

Design System Resources

Performance Optimization

πŸ”§ API Reference

πŸ“‘ Component APIs and Props

Magic UI Components

// BlurFade Component
<BlurFade delay={0.25} inView>
  <YourComponent />
</BlurFade>

// Dock Component  
<Dock direction="middle" className="your-styles">
  <DockIcon>...</DockIcon>
</Dock>

Custom Hooks

// Theme Hook
const { theme, setTheme } = useTheme()

// MDX Hook
const { posts, getPost } = useMDX()

🀝 Contributing

We welcome contributions from the community! Here's how you can help make this portfolio even better.

πŸš€ How to Contribute

flowchart TD
    A[🍴 Fork Repository] --> B[🌟 Create Feature Branch]
    B --> C[πŸ’» Make Changes]
    C --> D[πŸ§ͺ Add Tests]
    D --> E[βœ… Run Quality Checks]
    E --> F[πŸ“ Commit Changes]
    F --> G[πŸ“€ Push to Branch]  
    G --> H[πŸ”„ Create Pull Request]
    H --> I[πŸ‘€ Code Review]
    I --> J{βœ… Approved?}
    J -->|Yes| K[πŸŽ‰ Merge to Main]
    J -->|No| L[πŸ”„ Address Feedback]
    L --> I
    
    classDef process fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#01579b
    classDef decision fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#e65100
    classDef success fill:#e8f5e8,stroke:#388e3c,stroke-width:2px,color:#1b5e20
    classDef feedback fill:#fce4ec,stroke:#c2185b,stroke-width:2px,color:#880e4f
    
    class A,B,C,D,E,F,G,H,I process
    class J decision
    class K success
    class L feedback
Loading

πŸ“‹ Contribution Guidelines

🎯 Areas where you can contribute

πŸ› Bug Fixes

  • Report issues with detailed reproduction steps
  • Fix existing bugs and improve stability
  • Add error handling and edge cases

✨ Feature Enhancements

  • Improve existing components and functionality
  • Add new interactive elements
  • Enhance accessibility features

πŸ“š Documentation

  • Improve README and component documentation
  • Add code examples and tutorials
  • Create video guides and walkthroughs

🎨 Design Improvements

  • Enhance visual design and user experience
  • Add new themes and color schemes
  • Improve mobile responsiveness

⚑ Performance Optimizations

  • Reduce bundle size and improve loading times
  • Optimize images and assets
  • Implement advanced caching strategies

πŸ” Development Standards

πŸ“ Code quality requirements

Code Style

# Run linting
pnpm lint

# Format code
pnpm format

# Type checking
pnpm type-check

Commit Convention

# Use conventional commits
feat: add new component
fix: resolve navigation bug  
docs: update README
style: format code
refactor: restructure components
test: add unit tests
chore: update dependencies

Pull Request Template

  • Description: Clear explanation of changes
  • Type: Bug fix, feature, documentation, etc.
  • Testing: How the changes were tested
  • Screenshots: For UI changes
  • Breaking Changes: Any breaking changes

πŸ† Recognition

🌟 Contributor Hall of Fame
Contributor Contributions GitHub
K Rajtilak Creator & Maintainer @rajtilak-2020
Your name here Your contributions Your GitHub

Want to see your name here? Start contributing today!

πŸ”’ Security

πŸ›‘οΈ Security Measures

  • Content Security Policy (CSP) - Prevents XSS attacks
  • HTTPS Everywhere - All traffic encrypted via Vercel SSL
  • Dependency Scanning - Automated vulnerability checks
  • Environment Variables - Secure configuration management
  • Input Validation - All user inputs properly sanitized

πŸ“‹ Security Reporting

If you discover a security vulnerability, please send an email to rajtilak1062020@gmail.com. All security vulnerabilities will be promptly addressed.

πŸ“ˆ Analytics & Monitoring

πŸ“Š Performance Monitoring

πŸ” Monitoring stack

Real User Monitoring (RUM)

  • Vercel Analytics - Page views, user sessions
  • Core Web Vitals - Performance metrics
  • Error Tracking - JavaScript error monitoring
  • Uptime Monitoring - 99.9% availability tracking

Development Analytics

  • Bundle Analyzer - JavaScript bundle optimization
  • Lighthouse CI - Automated performance testing
  • TypeScript Compiler - Build-time error detection
  • ESLint Reports - Code quality metrics

πŸ“Š Traffic Analytics

pie title Website Traffic Sources
    "Direct" : 35
    "GitHub" : 25  
    "Search Engines" : 20
    "Social Media" : 15
    "Referrals" : 5
Loading

πŸš€ Deployment

🌍 Deployment Options

⚑ Multiple deployment strategies

Vercel (Recommended)

# Install Vercel CLI
npm i -g vercel

# Deploy to Vercel
vercel --prod

Netlify

# Build the project
pnpm build

# Deploy to Netlify
netlify deploy --prod --dir=out

Docker

# Dockerfile included in repo
docker build -t portfolio .
docker run -p 3000:3000 portfolio

Self-hosted

# Build for production
pnpm build

# Start production server
pnpm start

βš™οΈ Environment Configuration

πŸ”§ Environment variables setup
# .env.local template
NEXT_PUBLIC_SITE_URL=https://your-domain.com
NEXT_PUBLIC_SITE_NAME="Your Portfolio"
NEXT_PUBLIC_AUTHOR_NAME="Your Name"

# Analytics (Optional)
NEXT_PUBLIC_GA_ID=your-google-analytics-id
NEXT_PUBLIC_HOTJAR_ID=your-hotjar-id

# Contact Form (Optional) 
CONTACT_EMAIL=your-email@example.com
SMTP_HOST=your-smtp-host
SMTP_PORT=587

# Social Links
NEXT_PUBLIC_GITHUB_URL=https://github.com/yourusername
NEXT_PUBLIC_LINKEDIN_URL=https://linkedin.com/in/yourprofile
NEXT_PUBLIC_TWITTER_URL=https://twitter.com/yourusername

πŸ”§ Troubleshooting

🚨 Common Issues & Solutions

πŸ” Quick fixes for common problems

Build Errors

# Clear cache and reinstall
rm -rf .next node_modules package-lock.json
pnpm install

# Clear Vercel cache
vercel --prod --force

TypeScript Errors

# Run type checking
pnpm type-check

# Fix auto-fixable issues
pnpm lint:fix

Styling Issues

# Rebuild Tailwind
pnpm build:css

# Check Tailwind config
pnpm tailwindcss --help

Performance Issues

# Analyze bundle size
pnpm analyze

# Run Lighthouse audit
pnpm lighthouse

MDX Content Issues

# Validate MDX files
pnpm mdx:validate

# Check content structure
pnpm content:check

πŸ”§ Debug Mode

πŸ› Enable debug logging
# Enable Next.js debug mode
DEBUG=next* pnpm dev

# Enable Vercel debug mode
VERCEL_DEBUG=1 vercel dev

# View detailed build logs  
VERBOSE=1 pnpm build

πŸ“Š Project Statistics

πŸ“ˆ Repository Stats

GitHub stars GitHub forks GitHub watchers

πŸ”’ Codebase Metrics

Metric Value
Lines of Code ~15,000+
Components 50+
Pages 10+
Blog Posts Dynamic
Bundle Size < 200KB
Dependencies < 50

πŸ›£οΈ Roadmap

🎯 Upcoming Features

timeline
    title Portfolio Development Roadmap
    
    section Q1 2024
        Enhanced Animations    : Magic UI improvements
                                : Micro-interactions
        Blog System           : Search functionality
                              : Categories & tags
        
    section Q2 2024  
        Mobile App            : React Native version
                              : Offline reading
        CMS Integration       : Headless CMS setup
                              : Content management
        
    section Q3 2024
        AI Features           : Content recommendations
                              : Smart search
        Internationalization : Multi-language support
                              : RTL layouts
                              
    section Q4 2024
        Analytics Dashboard   : Custom analytics
                              : User insights  
        Community Features    : Comments system
                              : Newsletter signup
Loading

πŸŽ‰ Version History

πŸ“‹ Changelog and version history

Version 4.0.0 (Current)

  • ✨ Complete rewrite with Next.js 14
  • 🎨 New design system with ShadCN/UI
  • ⚑ Performance optimizations
  • πŸ“± Enhanced mobile experience
  • πŸŒ™ Improved dark mode

Version 3.0.0

  • πŸš€ Next.js 13 with App Router
  • πŸ’« Magic UI integration
  • πŸ“ MDX blog system
  • 🎯 SEO improvements

Version 2.0.0

  • βš›οΈ React 18 upgrade
  • 🎨 Tailwind CSS integration
  • πŸ“± Mobile-first design
  • ⚑ Performance focus

Version 1.0.0

  • 🎯 Initial release
  • πŸ“„ Static HTML/CSS/JS
  • 🎨 Basic responsive design

πŸ’ Acknowledgments

πŸ™ Special Thanks

Inspiration & Resources

🌟 Community

  • Open Source Community - For the amazing tools and libraries
  • Design Community - For inspiration and feedback
  • Developer Community - For knowledge sharing and support

πŸ“„ License

MIT License

Copyright (c) 2024 K Rajtilak

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

πŸ“„ Full License

πŸ“ž Contact & Support

🌐 Connect with Me

Website GitHub LinkedIn Email

πŸ’¬ Get Support

🀝 Community

Join our growing community of developers and creators!

  • 🌟 Star this repo if you find it useful
  • 🍴 Fork and customize for your own portfolio
  • πŸ“’ Share with others who might benefit
  • 🀝 Contribute to make it even better

πŸš€ Ready to build your own portfolio?

Feel free to fork this repository and make it your own. Don't forget to:

  • ⭐ Star the repo if you found it helpful
  • πŸ”„ Share it with your network
  • 🀝 Contribute improvements back to the community

Thank you for checking out my portfolio project!

This portfolio represents my journey as a developer and my passion for creating beautiful, performant web experiences. Whether you're here to learn, contribute, or just browse, I appreciate your time and interest.


πŸ’« "Code is poetry, and every portfolio tells a story"

Happy coding! πŸš€

Made with ❀️, β˜•, and countless hours of debugging

Visitor Count

About

This is my personal developer portfolio built with Next.js 14, Tailwind CSS, ShadCN/UI, and MDX. It showcases my projects, skills, blogs, and more.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors