Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

zidvsd/portfolio

Open more actions menu

Repository files navigation

Rashid Visda — Developer Portfolio

A fast, minimal portfolio built with Next.js 15, TypeScript and Tailwind CSS 4.

Next.js


Demo

Live demo: https://portfolio-five-sand-23.vercel.app/

What this project does

This repository is a personal developer portfolio (website) that showcases projects, achievements, and analytics. It's implemented with the Next.js 15 App Router, TypeScript, Tailwind CSS, and several UI/analytics integrations (Chart.js, Lucide icons, Keen Slider, WakaTime & GitHub data fetchers).

Key pages:

  • Home — featured projects and services (bento grid layout)
  • About — bio, work and education
  • Projects — dynamic project pages populated from GitHub/README files
  • Achievements — certificates and badges with search/filter
  • Dashboard — GitHub + WakaTime visualizations (Chart.js)
  • Contact — email form (Nodemailer) and social links

Why this is useful

  • Lightweight, responsive portfolio starter using modern Next.js features and Turbopack for fast builds
  • Dark/light theme support with Tailwind dark class
  • Example integrations for fetching and visualizing external developer data (GitHub, WakaTime)
  • Ready-to-deploy to Vercel or other Node.js hosts

Quick start (developer)

Requirements

  • Node.js 18+ (recommended)
  • npm (or Yarn)

Install and run locally

git clone --depth=1 https://github.com/zidvsd/portfolio.git
cd portfolio
npm install
npm run dev

Open http://localhost:3000 to view the app.

Build for production

npm run build    # builds using Turbopack
npm start        # runs the production server

Linting

npm run lint

Environment variables

Create a .env.local at the project root with the following values when you need API integrations:

# GitHub (optional)
GITHUB_API_KEY=your_github_api_key
GITHUB_USERNAME=your_github_username

# WakaTime (optional)
WAKATIME_API_KEY=your_wakatime_api_key
WAKATIME_USERNAME=your_wakatime_username

# Email (for contact form)
MAIL_USER=your_email@gmail.com
MAIL_PASS=your_app_specific_password
MAIL_TO=recipient_email@gmail.com

Notes:

  • The app runs without these keys but features that fetch external data will be disabled or empty.

Project structure (high level)

  • app/ — Next.js App Router pages and route handlers
  • components/ — UI components and layout pieces (layout/, section/, ui/)
  • data/ — JSON content used by the app (navs.json, profile.json, etc.)
  • lib/ — small helper modules (GitHub/WakaTime fetchers, utils)
  • public/ — static assets (images, icons)
  • types/ — TypeScript types

See the app/, components/, and lib/ folders for implementation details.

Deployment

  • The project is compatible with Vercel (recommended). Push to your GitHub repo and import the project to Vercel for automatic deployments.
  • Ensure environment variables are configured in your Vercel project settings.

Contributing & support

  • Bug reports and feature requests: open an issue in this repository.
  • Want to contribute? Please open a pull request. For larger contributions, create an issue first to discuss the change.
  • See CONTRIBUTING.md (if present) for contribution guidelines.

Maintainers

  • Primary: zidvsd (GitHub profile)

For direct contact see the app/contact page or the site contact information.

License

This project references a license file — see LICENSE in the repository root for full terms.


If you'd like, I can also:

  • add a CONTRIBUTING.md template in the repo
  • add CI badges (GitHub Actions / Vercel) with working links
  • generate a short docs/ folder with architecture notes

About

The first version of my portfolio built with Next.js — static data, no backend, just getting something clean and live.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.