Skip to content

sikatikenmogne/portfolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Portfolio

Build Vercel Next.js License: CC BY 4.0 Development Status Maintenance

A modern professional developer portfolio Built with Next.js following a JAMstack architecture, leveraging static site generation for optimal performance and deployed automatically on Vercel.

✨ Features

  • Professional first impression with clear value proposition
  • Comprehensive project showcase with detailed case studies
  • Professional background and skills evaluation system
  • Responsive mobile-optimized experience across all devices
  • Simple contact system with professional networking links

πŸ› οΈ Tech Stack

This portfolio follows JAMstack architecture principles with modern tooling for optimal performance, maintainability, and developer experience:

Category Technology Version Role Why This Choice
πŸ–₯️ Frontend Next.js 15.0 React framework with App Router SSG capabilities, performance, modern routing
React 18+ UI library Mature ecosystem, reusable components
Tailwind CSS 4 Utility-first CSS framework Rapid development, consistent design system
Lucide Latest Icon system Lightweight, optimized SVGs, tree-shaking
βš™οΈ Business Logic React Hooks - State management Simple, performant state handling
Custom Hooks - Reusable logic Clean separation of concerns
ES Modules - Modern JavaScript modules Native standards, optimization
πŸ”§ Development Tools Node.js 18+ JavaScript runtime npm ecosystem, modern tooling
pnpm 8+ Package manager Performance, disk space efficiency
ESLint Prettier Latest Code quality Consistent coding standards
πŸš€ Services & APIs Formspree - Form handling No backend required, spam protection
GitHub API v4 Repository data Dynamic project information
Vercel Analytics - Performance monitoring Privacy-friendly, built-in
πŸ“¦ CI/CD & Deployment GitHub Actions - CI/CD pipeline Native integration, automated workflows
Vercel - Hosting and deployment Edge network, preview deployments
Git - Version control Collaboration, history tracking
πŸ“„ Content Management Markdown MDX - Content format Rich content, component embedding
JSON - Configuration Type-safe, easy maintenance
Git CMS - Content management Version control, developer-friendly

πŸ“‹ Prerequisites

  • Node.js 18+ (LTS recommended)
  • pnpm 8+ (package manager)
  • Git (version control)
  • GitHub Account (for GitHub Actions)
  • Vercel Account (for deployment)

πŸš€ Quick Start

# Clone repository
git clone https://github.com/sikatikenmogne/portfolio.git
cd portfolio

# Install dependencies
pnpm install

# Start development server
pnpm run dev
# β†’ Open http://localhost:3000

# Build for production
pnpm run build

# Start production server
pnpm run start

πŸ“– Preview

Portfolio Screenshots

Desktop View

Desktop Homepage Desktop Projects

Mobile View

Mobile Homepage Mobile Navigation

Dark Mode

Dark Mode

πŸ—οΈ Project Structure

portfolio/
β”œβ”€β”€ .github/workflows/     # GitHub Actions CI/CD
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/              # Next.js App Router (pages & layouts)
β”‚   β”œβ”€β”€ components/       # Reusable React components
β”‚   β”‚   β”œβ”€β”€ navigation/   # Header, footer, navigation
β”‚   β”‚   β”œβ”€β”€ projects/     # Project cards, filters, details
β”‚   β”‚   β”œβ”€β”€ profile/      # About, skills, experience
β”‚   β”‚   β”œβ”€β”€ contact/      # Contact form, social links
β”‚   β”‚   └── shared/       # Layout, SEO, error boundaries
β”‚   β”œβ”€β”€ hooks/            # Custom React hooks
β”‚   β”œβ”€β”€ lib/              # Utility functions and services
β”‚   └── data/             # Configuration and static data
β”œβ”€β”€ content/              # Git-based CMS (Markdown files)
β”‚   β”œβ”€β”€ projects/         # Project case studies
β”‚   β”œβ”€β”€ blog/             # Technical articles
β”‚   └── profile/          # About, experience, education
β”œβ”€β”€ public/               # Static assets (images, icons, docs)
β”œβ”€β”€ scripts/              # Build and utility scripts
β”œβ”€β”€ .env.example          # Environment variables template
└── next.config.mjs       # Next.js configuration

🚧 Project Status

This portfolio is currently under active development. Some features may be incomplete or under implementation.

Development Progress

  • User Interface
  • Navigation System
  • Contact Form
  • Dark/Light Theme
  • Projects Showcase
  • Technical Blog
  • Automated Testing
  • Internationalization

Last Update: September 2025

🀝 Contributing

This project follows the Contributor Covenant code of conduct. By participating, you are expected to uphold this code.

πŸ”„ How to Contribute

  1. Fork the project
  2. Create a branch (git checkout -b feature/improvement)
  3. Commit using conventional commits (git commit -m 'feat: add improvement')
  4. Push (git push origin feature/improvement)
  5. Open a Pull Request

πŸ“ Commit Convention

This project uses Conventional Commits specification for commit messages. This leads to more readable messages that are easy to follow when looking through the project history.

Format: <type>[optional scope]: <description>

Common types:

  • feat: new feature for the user
  • fix: bug fix for the user
  • docs: changes to documentation
  • style: formatting, missing semi colons, etc
  • refactor: refactoring production code
  • test: adding missing tests, refactoring tests
  • chore: updating grunt tasks etc

🌿 Branch Strategy

  • main: Production-ready code, auto-deployed to live site
  • develop: Integration branch, auto-deployed to preview environment
  • feature/*: Feature branches, merged to develop via PR
  • hotfix/*: Critical production fixes, merged directly to main and back to develop

⚑ Development Workflow

%%{init: {
  'theme': 'base',
  'themeVariables': {
    'primaryColor': '#ffffff',
    'primaryTextColor': '#333333',
    'primaryBorderColor': '#E60012',
    'lineColor': '#333333',
    'git0': '#E60012',
    'git1': '#E3F2FD',
    'git2': '#E8F5E8',
    'git3': '#FFF3E0',
    'git4': '#F3E5F5',
    'gitBranchLabel0': '#ffffff',
    'gitBranchLabel1': '#333333',
    'gitBranchLabel2': '#333333',
    'gitBranchLabel3': '#333333',
    'gitBranchLabel4': '#333333',
    'commitLabelFontSize': '10px'
  }
}}%%
gitGraph
    commit id: "Initial"
    branch develop
    checkout develop
    commit id: "Setup"
    commit id: "Feature A"
    
    branch feature/auth
    checkout feature/auth
    commit id: "Auth System"
    checkout develop
    merge feature/auth
    
    commit id: "Feature B"
    checkout main
    merge develop
    commit id: "Release v1.0"
    
    branch hotfix/critical-bug
    checkout hotfix/critical-bug
    commit id: "Fix Bug"
    checkout main
    merge hotfix/critical-bug
    commit id: "Hotfix v1.0.1"
    checkout develop
    merge main
    
    checkout develop
    commit id: "Feature C"
    
    branch feature/new-component
    checkout feature/new-component
    commit id: "New Component"
    checkout develop
    merge feature/new-component
    
    checkout main
    merge develop
    commit id: "Release v1.1"
Loading

πŸ“„ License

This portfolio is licensed under Creative Commons Attribution 4.0 International License. See the LICENSE file for full details.

πŸ“ž Contact

For any questions or support, please email us via:

  • Gmail
  • Linkedin Badge

Built with ❀️ by Samuel SIKATI

About

A modern professional developer portfolio Built with Next.js following a JAMstack architecture

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published