Skip to content

Repository files navigation

πŸš€ Developer Portfolio β€” Arpan Biswas

Preview

🌐 Live Website: https://portfoliox-tauv.vercel.app

✨ Overview

This portfolio represents my journey as a B.Tech CSE (AI-ML) student, focused on building scalable, efficient, and user-centric applications. It combines modern UI/UX design with smooth animations and interactive elements to create an engaging experience.

Features

  • ⚑ Modern Futuristic UI β€” Clean, dark-themed interface with glowing cosmic accents
  • 🌌 3D Interactive Space Canvas β€” Real J2000 planetary orbital physics with interactive camera tilt
  • 🎬 Smooth Animations & 60 FPS Performance β€” Powered by Framer Motion & GPU hardware acceleration
  • πŸ“Š Live GitHub Activity Graph β€” Real 52-week contribution heatmap synced via GitHub APIs
  • 🧠 AI & Distributed Systems Projects Showcase β€” Highlighting projects like SurgeShield (lock-free rate limiter in Rust)
  • πŸ“± Fully Responsive Design β€” Optimized for mobile, tablet, and desktop viewports
  • πŸš€ Production-Ready CI/CD Workflows β€” Automated daily stats sync & Vercel deployment

πŸ› οΈ Tech Stack

πŸš€ Frontend

  • Next.js 16 (App Router & Turbopack)
  • React
  • TypeScript

🎨 Styling & Design

  • Tailwind CSS
  • Vanilla CSS Tokens & Glassmorphism

🎬 Animations & 3D Physics

  • Framer Motion
  • HTML5 Canvas 2D Celestial Physics Engine

βš™οΈ Automation & Tooling

  • GitHub Actions (CI/CD Workflows)
  • Node.js Automation Scripts

☁️ Deployment

  • Vercel

πŸ—οΈ System Architecture

flowchart TD
    %% Node Style Definitions matching modern dark-theme aesthetics
    classDef cyanBox fill:#00838f,stroke:#00e5ff,stroke-width:2px,color:#ffffff,font-weight:bold;
    classDef blueBox fill:#1565c0,stroke:#42a5f5,stroke-width:2px,color:#ffffff,font-weight:bold;
    classDef purpleBox fill:#6a1b9a,stroke:#ab47bc,stroke-width:2px,color:#ffffff,font-weight:bold;
    classDef orangeDiamond fill:#e65100,stroke:#ff9800,stroke-width:2px,color:#ffffff,font-weight:bold;
    classDef redBox fill:#c62828,stroke:#ef5350,stroke-width:2px,color:#ffffff,font-weight:bold;
    classDef greenBox fill:#2e7d32,stroke:#66bb6a,stroke-width:2px,color:#ffffff,font-weight:bold;

    %% Telemetry & Web UI Header
    PS["πŸ”₯ Prometheus Server<br/><i>Scrapes GET /metrics</i>"]:::cyanBox
    PE["πŸ“ˆ Prometheus Endpoint<br/>/metrics"]:::cyanBox
    WB["🌐 Web Browser<br/><i>Views GET /dashboard</i>"]:::blueBox
    UI["πŸ–₯️ Embedded Telemetry<br/>Web UI"]:::cyanBox

    PS --> PE
    WB --> UI

    %% Request Processing Pipeline
    CR["πŸ“‘ Client Request"]:::blueBox
    SSL["πŸ›‘οΈ SurgeShield<br/>Middleware Layer"]:::purpleBox

    CR --> SSL

    D1{"β›” Check Jail Status"}:::orangeDiamond

    SSL --> D1

    D1 -- "Jailed / Banned" --> B1["β›” Instant 403 Forbidden<br/><i>&lt; 0.01ms</i>"]:::redBox
    D1 -- "Not Jailed" --> KE["πŸ”‘ Key Extractor"]:::purpleBox

    KE -- "Single-Instance Node" --> MS["πŸ’Ύ MemoryStore / DashMap"]:::cyanBox
    KE -- "Multi-Node Cluster" --> RS["⚑ RedisStore / Atomic Lua"]:::blueBox

    B1 --> RPT["πŸ“Š Record Prometheus<br/>Telemetry"]:::cyanBox

    D2{"🚦 Rate Limit Engine"}:::orangeDiamond

    MS --> D2
    RS --> D2

    D2 -- "Quota Available" --> OK["βœ… Allow Request - 200 OK"]:::greenBox
    D2 -- "Quota Exceeded" --> B2["β›” Block Request - 429<br/>Rate Limited"]:::redBox

    OK --> ARH["πŸš€ Application Route Handler"]:::greenBox
    B2 --> IVC["πŸ”₯ Increment Violation<br/>Counter"]:::orangeDiamond

    IVC -- "β‰₯ 5 Violations" --> B1
    ARH --> CR
    B2 --> CR
Loading

πŸ”„ Automated Workflows & CI/CD

πŸ€– GitHub Coding Stats Sync Workflow

  • Workflow File: .github/workflows/update-coding-stats.yml
  • Automatic Triggers:
    • push: branches: [main] β€” Runs automatically whenever code is pushed to the main branch.
    • schedule: cron '0 0 * * *' β€” Runs automatically every day at midnight UTC (5:30 AM IST).
    • workflow_dispatch β€” Allows manual one-click trigger from the GitHub Actions tab.
  • Automation Pipeline:
    1. Executes scripts/fetch-github-stats.mjs.
    2. Queries live GitHub APIs for repository language breakdown and real 52-week contribution calendars.
    3. Updates public/data/coding-stats.json.
    4. Automatically commits changes back using git-auto-commit-action.

πŸš€ Continuous Deployment

  • Integrated with Vercel for instant production builds and zero-downtime deployment on every commit.

πŸ“ Folder Structure

PORTFOLIO/
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       └── update-coding-stats.yml   # GitHub Action automated workflow
β”œβ”€β”€ app/                              # Next.js App Router pages and layout
β”œβ”€β”€ components/                       # Reusable UI components & 3D visuals
β”‚   └── ui/                           # UI primitives (OrbitalHero, StarButton)
β”œβ”€β”€ public/                           # Static assets & live JSON stats
β”‚   └── data/
β”‚       └── coding-stats.json         # Automated GitHub contribution dataset
β”œβ”€β”€ scripts/
β”‚   └── fetch-github-stats.mjs        # Automation script fetching live API metrics
β”œβ”€β”€ utils/                            # Helper utilities and motion variants
β”œβ”€β”€ README.md
β”œβ”€β”€ next.config.ts                    # Next.js configuration
β”œβ”€β”€ package.json                      # Dependencies and scripts
└── tsconfig.json                     # TypeScript configuration

βš™οΈ Β Getting Started

πŸ“₯ Clone the Repository

git clone https://github.com/8ernity/PORTFOLIO.git  
cd PORTFOLIO  

πŸ“¦ Install Dependencies

npm install  

πŸ’» Run Development Server

npm run dev  

Open in browser: http://localhost:3000

πŸ“Š Fetch Live Stats Manually

node scripts/fetch-github-stats.mjs

πŸ— Build for Production

npm run build  

▢️ Start Production Server

npm start  

🀝 Contributing

Contributions, suggestions, and feedback are welcome!
Feel free to fork the repository and submit a pull request.

⭐ Support

If you like this project, consider giving it a ⭐ on GitHub!

πŸ“œ License

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

About

πŸš€ Futuristic portfolio built with Next.js, featuring interactive UI, smooth animations, and modern web technologies.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages