A modern, responsive portfolio website built with Next.js, showcasing data science projects, research work, and professional experience.
The portfolio is deployed and live at: https://valpip123emy.github.io/portfolio.github.io/
- Framework: Next.js 14 with App Router
- Styling: Tailwind CSS with custom design system
- Animations: Framer Motion
- Icons: Lucide React
- Typography: Google Fonts (Inter, Inter Tight, JetBrains Mono)
- Deployment: GitHub Pages
portfolio.github.io/
├── src/
│ ├── app/ # Next.js App Router pages
│ │ ├── layout.tsx # Root layout
│ │ ├── page.tsx # Home page
│ │ ├── about/ # About page
│ │ ├── contact/ # Contact page
│ │ ├── resume/ # Resume page
│ │ └── globals.css # Global styles
│ ├── components/ # Reusable UI components
│ │ ├── layout/ # Layout components (Header, Footer)
│ │ ├── pages/ # Page-specific components
│ │ ├── sections/ # Section components (Hero, Projects, etc.)
│ │ └── theme-provider.tsx # Dark/Light theme provider
│ └── lib/
│ └── utils.ts # Utility functions
├── .github/workflows/ # GitHub Actions for deployment
├── out/ # Build output (generated)
└── Configuration files...
This repository is configured for automatic deployment to GitHub Pages:
- Fork this repository to your GitHub account
- Enable GitHub Pages in your repository settings:
- Go to Settings → Pages
- Source: "GitHub Actions"
- Push changes to the main branch - deployment will happen automatically
- Access your site at
https://yourusername.github.io/portfolio.github.io/
The GitHub Actions workflow will automatically:
- Build the Next.js project
- Generate static files
- Deploy to GitHub Pages
- Update your live site
-
Clone the repository:
git clone https://github.com/Valpip123EMY/portfolio.github.io.git cd portfolio.github.io
-
Install dependencies:
npm install
-
Build the project:
npm run build
-
Deploy the
out
folder to any static hosting service (GitHub Pages, Netlify, AWS S3, etc.)
- Node.js 18 or higher
- npm or yarn
-
Clone the repository:
git clone https://github.com/Valpip123EMY/portfolio.github.io.git cd portfolio.github.io
-
Install dependencies:
npm install
-
Start development server:
npm run dev
-
Open your browser and navigate to
http://localhost:3000
npm run dev
- Start development servernpm run build
- Build for productionnpm run start
- Start production servernpm run lint
- Run ESLint
Update your personal information in:
src/app/layout.tsx
- Site metadatasrc/components/sections/Hero.tsx
- Hero section contentsrc/components/pages/AboutPage.tsx
- About page contentsrc/components/pages/ContactPage.tsx
- Contact information
Add or modify projects in:
src/components/pages/ProjectsPage.tsx
- Project data and components
src/app/globals.css
- Global styles and CSS variablestailwind.config.js
- Tailwind CSS configuration- Individual component files for component-specific styles
The project includes:
.github/workflows/nextjs.yml
- GitHub Actions workflow for automatic deploymentnext.config.js
- Next.js configuration for static export
The deployment is automatically configured and requires no additional setup. Just push to the main branch and GitHub Pages will build and deploy your site.
For production deployment, you may want to add environment variables in your GitHub repository settings:
- Google Analytics tracking ID
- Contact form backend URL
- Any API keys for external services
- ✅ Responsive design (mobile-first)
- ✅ Dark/Light theme toggle
- ✅ Smooth scrolling navigation
- ✅ Animated components with Framer Motion
- ✅ SEO optimized with Next.js metadata
- ✅ Fast loading with static generation
- ✅ Professional typography with Google Fonts
- ✅ Accessible design with semantic HTML
- Static site generation for optimal performance
- Image optimization (when images are added)
- Font optimization with display: swap
- Lazy loading for components
- Minimal JavaScript bundle size
This project is open source and available under the MIT License.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
For support or questions, please open an issue in the GitHub repository or contact [your email].
Built with ❤️ using Next.js and deployed on GitHub Pages