docs
Getting Started

Getting Started

Quick start guide to set up and run the portfolio locally.

Prerequisites

  • Node.js 18+ or 20+
  • pnpm 10+ (recommended)
  • Git

Installation

  1. Clone the repository:
git clone https://github.com/TentacioPro/legendary-happiness.git
cd legendary-happiness
  1. Install dependencies:
pnpm install
  1. Run development server:
pnpm dev
  1. Open in browser: Navigate to http://localhost:3000 (opens in a new tab)

Available Scripts

Development

pnpm dev          # Start development server
pnpm build        # Build for production
pnpm start        # Start production server

Testing

pnpm test         # Run tests in watch mode
pnpm test:run     # Run tests once
pnpm test:ui      # Open Vitest UI
pnpm test:coverage # Generate coverage report

Code Quality

pnpm lint         # Run ESLint
pnpm format       # Format code with Prettier

Deployment

# Windows
.\scripts\deploy-composite.ps1
 
# Linux/Mac
./scripts/deploy-composite.sh

Project Structure

src/
├── app/           # Next.js App Router
│   ├── layout.tsx # Root layout
│   └── page.tsx   # Main portfolio page
├── components/    # Reusable components
├── sections/      # Page sections
├── lib/           # Utilities and helpers
└── utils/         # Helper functions

pages/
└── docs/          # Documentation (Nextra)

Configuration Files

  • next.config.mjs - Next.js and Nextra configuration
  • tailwind.config.js - TailwindCSS configuration
  • theme.config.jsx - Nextra theme configuration
  • tsconfig.json - TypeScript configuration
  • vitest.config.ts - Test configuration

Deployment

Deploy to GitHub Pages with multi-version support:

Windows:

.\scripts\deploy-composite.ps1

Linux/Mac:

./scripts/deploy-composite.sh

What it does:

  • Builds V2 (current) for root deployment
  • Builds V1 (legacy) with /v1 basePath
  • Merges both into single artifact
  • Deploys to gh-pages branch
  • Creates CNAME for custom domain

Result:

  • V2: https://abishek-maharajan.online
  • V1: https://abishek-maharajan.online/v1

See the Deployment Guide → for detailed instructions.


Next Steps