A modern, responsive personal portfolio built with Next.js, TypeScript, Tailwind CSS, and shadcn/ui components.
🌐 Live Demo: https://sohantalukder.github.io/
- Modern Design: Clean, professional, and eye-catching UI
- Dark/Light Mode: Toggle between themes with smooth transitions
- Responsive: Optimized for all device sizes
- Blog Integration: Displays latest articles from Medium
- Contact Form: Working contact form for inquiries
- SEO Optimized: Built with Next.js for optimal performance
- Accessible: WCAG compliant components
- GitHub Pages: Automated deployment with GitHub Actions
- Framework: Next.js 15 with App Router
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Icons: Lucide React
- Theme: next-themes for dark/light mode
- Deployment: GitHub Pages with GitHub Actions
- Hero - Introduction with call-to-action
- About - Personal story and skills showcase
- Experience - Work history and education
- Projects - Featured projects with live demos
- Blog - Latest articles from Medium
- Contact - Contact form and social links
- Node.js 18+
- npm or yarn
- Clone the repository:
git clone https://github.com/sohantalukder/sohantalukder.github.io.git
cd sohantalukder.github.io
- Install dependencies:
npm install
- Run the development server:
npm run dev
- Open http://localhost:3000 in your browser.
portfolio/
├── src/
│ ├── app/ # Next.js app directory
│ ├── components/ # React components
│ │ ├── ui/ # shadcn/ui components
│ │ ├── navigation.tsx # Navigation component
│ │ ├── hero-section.tsx # Hero section
│ │ └── ... # Other sections
│ └── lib/ # Utilities
├── public/ # Static assets
├── .github/
│ └── workflows/
│ └── deploy.yml # GitHub Actions workflow
└── ...
Update the following files with your information:
src/components/hero-section.tsx
- Name, title, descriptionsrc/components/about-section.tsx
- About text and skillssrc/components/experience-section.tsx
- Work experience and educationsrc/components/projects-section.tsx
- Featured projectssrc/components/contact-section.tsx
- Contact information
- Global styles:
src/app/globals.css
- Theme configuration:
tailwind.config.js
- shadcn/ui components:
src/components/ui/
The blog section currently uses mock data. To integrate with Medium:
- Set up Medium RSS feed parsing
- Update
src/components/blog-section.tsx
- Consider using a service like RSS2JSON for CORS handling
Place your images in the public/
directory:
profile.jpg
- Your profile pictureproject1.jpg
,project2.jpg
, etc. - Project screenshots
This portfolio is automatically deployed to GitHub Pages using GitHub Actions. Here's how it works:
- Automatic Deployment: Every push to the
dev
branch triggers the deployment workflow - Build Process: GitHub Actions builds the Next.js app as a static site
- Live Site: The site is deployed to https://sohantalukder.github.io/
- Fork this repository
- Enable GitHub Pages in your repository settings:
- Go to Settings → Pages
- Under "Source", select "GitHub Actions"
- Push changes to the
dev
branch - GitHub Actions will automatically build and deploy your site
npm run build # Creates static export in 'out' directory
- Vercel: Connect GitHub repo for automatic deployment
- Netlify: Connect GitHub repo and deploy
- Firebase Hosting:
npm run build
thenfirebase deploy
The deployment is handled by .github/workflows/deploy.yml
which:
- Installs Node.js and dependencies
- Builds the Next.js static export
- Deploys to GitHub Pages
- Runs on every push to
dev
branch
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is open source and available under the MIT License.
Md. Sohan Talukder Akash
- 🌐 Website: https://sohantalukder.github.io/
- 💼 GitHub: @sohantalukder
- 📝 Medium: @sohantalukder
- 💼 LinkedIn: sohantalukder
⭐ Star this repo if you found it helpful!
- Build Errors: Make sure all dependencies are installed with
npm install
- GitHub Pages Not Updating: Check the Actions tab for deployment status
- Images Not Loading: Ensure images are in the
public/
directory - Styling Issues: Run
npm run build
locally to test static export
- Node.js version: 18+
- Next.js: 15.3.4
- Static export enabled for GitHub Pages compatibility