Skip to content

CodeWithSharma-Ji/Portfolio-1

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

46 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NTgGamer1 – Personal Portfolio πŸš€

Welcome to my personal portfolio repository! Which is completely made with AI Tools And a little bit of my hardwork. This project showcases my identity as NTgGamer1 β€” blending gaming creativity with real-world software development.

πŸ”— Live Site: https://ntg-portfolio.vercel.app
πŸ“‚ Repo: https://github.com/NTgGamer1/Portfolio


✨ Key Features

🎨 Dark/Light Mode Toggle

Switch between dark and light themes seamlessly. Your preference is saved in browser storage and persists across sessions.

  • Tech: CSS custom properties, localStorage API
  • How it works: Click the sun/moon icon in the navigation bar

πŸ“§ Functional Contact Form

Send messages directly from the portfolio via integrated email service.

  • Tech: EmailJS API for client-side email sending
  • How it works: Fill out name, email, and message on the contact page. Form validates input and sends emails instantly
  • Setup Guide: See EMAILJS_SETUP.md (local only) for configuration

🎯 Project Portfolio

Showcase 6 real-world projects with descriptions, technologies, and live links.

  • Tech: HTML5 semantic structure, CSS Grid/Flexbox, JavaScript filtering
  • Features: Filter by category (Web, Automation, Experiments, Games), view tech stacks, access GitHub/demo links
  • Easy to extend: Add new projects in projects.html with category tags

✨ Smooth Scroll Animations

Elements animate into view as you scroll the page for enhanced visual appeal.

  • Tech: Intersection Observer API, CSS animations (@keyframes)
  • Animations: slideInUp, slideInLeft, slideInRight, scaleIn with staggered timing
  • Performance: Zero janky scroll listenersβ€”uses modern browser APIs

πŸ“± Fully Responsive Design

Perfect display on all devicesβ€”from 320px phones to 4K monitors.

  • Breakpoints:
    • 1441px+ – Extra large desktops
    • 1025–1440px – Large desktops
    • 769–1024px – Tablets
    • 481–768px – Mobile (landscape & large phones)
    • ≀480px – Small phones
  • Features: Hamburger navigation menu on mobile, hidden footer links on tablets/phones, adaptive font sizes
  • Mobile-first approach: Navigation menu button (≑) appears at 768px and below

⚑ Performance Optimized

Fast load times with minified and optimized assets.

  • Reductions: CSS -30%, JavaScript -36%, total -32% (31.5KB β†’ 21.5KB)
  • Files: styles.min.css and script.min.js used in production
  • Lighthouse scores: Performance 90+, Accessibility 95+

πŸš€ Getting Started (Local Setup)

1. Clone the Repository

git clone https://github.com/NTgGamer1/Portfolio.git
cd Portfolio

2. Open in Browser

Option A: Direct (simplest)

  • Open index.html directly in your browser

Option B: Local Server (recommended)

# Using Node.js http-server
npx http-server

# Or using Python
python3 -m http.server 8000

# Or using VS Code Live Server extension

3. Customize the Portfolio

  • Update projects: Edit projects.html to add/remove projects
  • Change colors: Edit CSS variables in Styles/styles.css (lines 1-30)
  • Personal info: Update contact details in HTML files
  • Social links: Edit socials.html with your actual social profiles

πŸ“¦ Production (Minified Assets)

The repository includes minified versions for production:

  • Styles/styles.min.css (16.7 KB)
  • JavaScript/script.min.js (4.8 KB)

To regenerate minified files:

node minify.js

For deployment: The HTML files are already configured to use .min.css and .min.js files. Change the links in HTML if needed.


🌐 Deployment Options

Vercel (Recommended - Free Tier)

  1. Push your code to GitHub
  2. Connect repo to Vercel.com
  3. Deploy automatically on every push
  4. Live at your-username.vercel.app

Netlify

  1. Push to GitHub
  2. Connect repo to Netlify.com
  3. Auto-deploys on git push
  4. Free TLS/SSL and custom domain support

GitHub Pages

git push origin main
  • Go to Settings β†’ Pages β†’ Select main branch
  • Live at github.com/username/portfolio

🎨 Customization Guide

Colors & Typography

All colors and fonts defined in CSS variables (easily customizable):

/* Edit these in styles.css */
:root {
  --primary: #1a1a1a;      /* Dark background */
  --text: #ffffff;          /* Light text */
  --accent: #ff6b6b;        /* Highlight color */
  --font-family: 'Inter', sans-serif;
}

Add New Projects

In projects.html, add a new project card:

<article class="project-card" data-category="web">
  <h3>Your Project Title</h3>
  <p>Short description</p>
  <div class="tech-stack">
    <span>HTML</span>
    <span>CSS</span>
    <span>JavaScript</span>
  </div>
  <div class="project-links">
    <a href="https://github.com/..." class="btn">GitHub</a>
    <a href="https://..." class="btn">Live Demo</a>
  </div>
</article>

Responsive Breakpoints

Adjust these media queries in styles.css to modify responsive behavior:

  • ≀480px – Extra-small phones
  • 481–768px – Mobile phones & tablets
  • 769–1024px – Tablet landscape
  • 1025–1440px – Desktop
  • 1441px+ – Extra-large monitors

πŸ“Š Performance Metrics

Metric Before After Reduction
CSS Size 23.9 KB 16.7 KB 30%
JavaScript 7.6 KB 4.8 KB 36%
Total 31.5 KB 21.5 KB 32%
Lighthouse Performance 87 92+ +5
Lighthouse Accessibility 93 95+ +2

πŸ”§ Development

File Dependencies

  • All HTML files link to Styles/styles.min.css and JavaScript/script.min.js
  • script.js runs on all pages (hamburger menu, theme toggle, animations)
  • contact.html additionally loads EmailJS CDN for email capability
  • CSS uses @import for modular organization (variables, animations, components)

Browser Support

  • Modern browsers (Chrome, Firefox, Safari, Edge)
  • Requires ES6+ JavaScript support
  • CSS Grid/Flexbox support required
  • localStorage support required for theme persistence

Building Locally

To run the minify script and regenerate minified assets:

npm install minify  # If not already installed
node minify.js      # Generates .min.css and .min.js

🀝 Contributing

Have suggestions or found a bug? Feel free to:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/improvement)
  3. Commit your changes (git commit -m 'Add improvement')
  4. Push to the branch (git push origin feature/improvement)
  5. Open a Pull Request

πŸ“„ License

This project is open source and available under the MIT License.


πŸ“§ Contact & Social


πŸŽ“ Learning Resources

Built with pure HTML, CSS, and JavaScriptβ€”no frameworks!

Technologies Used:

See Also:

  • EMAILJS_SETUP.md – Complete EmailJS configuration steps
  • PERFORMANCE.md – Detailed optimization techniques
  • DEPLOYMENT.md – Advanced deployment options

Last Updated: 2024
Status: βœ… Production Ready 2. Go to https://vercel.com
3. Import the GitHub repo
4. Set Framework Preset: Other
5. Set Root Directory to project root
6. Deploy 🎯


🧩 Roadmap / Future Enhancements

  • Blog/Notes section for learning logs
  • Resume download button

πŸ‘€ About Me

Nikhil (NTgGamer1)
Developer | Tech Explorer | Gamer turned Builder

I use the NTgGamer1 identity across platforms as a long-term personal brand.


🀝 Contributing

This is a personal project, but suggestions and improvements are welcome.
Feel free to open an issue or PR.


πŸ“œ License

This project is licensed under the MIT License.
You’re free to use the structure/design with attribution.


⭐ If you like this portfolio concept, consider starring the repo!

About

A modern, responsive personal portfolio website showcasing development projects, skills, and professional journey. Built with clean, semantic HTML, modern CSS, and vanilla JavaScript.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • HTML 49.9%
  • CSS 39.1%
  • JavaScript 11.0%