nathanyuan.com

Nathan Yuan - Portfolio Website

A modern, full-stack portfolio website showcasing my work as an AI Full-Stack Software Engineer. This project demonstrates end-to-end development capabilities, from frontend user experience to backend AI integrations and cloud deployment. By utilizing industry AI coding agent tools such has GPT-4.1, GPT-4.0, Grok Code Fast 1, and Claude Sonnet 4 - development was greatly accelerated.

What This Project Is About

For Everyone: A professional portfolio website where you can learn about my background, view my projects, and interact with an AI assistant that knows about my experience.

For Recruiters: A comprehensive showcase of my technical skills, problem-solving approach, and ability to deliver production-ready applications with modern AI integrations.

For Developers: A proof of concept of a my web application skills with integrating AI features.

🚀 Fully Deployed App

Visit nathanyuan.com to see the live application.

System Architecture Overview

Tech Stack

Frontend:

Backend & AI:

Database & Infrastructure:

Why This Stack?

Frontend Choices:

Backend & AI Decisions:

Infrastructure Trade-offs:

Key Features

My Development Setup

Prerequisites

Local Development

  1. Clone the repository
    git clone <repository-url>
    cd nathanyuan.com
    
  2. Frontend Setup
    cd frontend
    npm install
    npm run dev
    
  3. Backend Setup
    # In a separate terminal
    cd ../NathanY_RAG_Assistant_Chatbot
    pip install -r requirements.txt
    python -m uvicorn src.endpoints:app --reload
    
  4. Environment Variables Create .env files in both directories with required API keys and database credentials.

My Deployment Pipeline

Frontend (Vercel):

Backend (Hugging Face Spaces):

Database (Supabase via Vercel Marketplace):

🔧 Technical Challenges & Solutions

AI Integration Challenges

Problem: Balancing response quality with cost and performance. Solution: Implemented RAG pipeline to ground responses in verified content, reducing token usage by 40% and ensuring the model stays on topic.

Rate Limiting Implementation

Problem: Protecting AI API costs while maintaining user experience. Solution: Multi-tier rate limiting (10/minute for chat, 1/minute for health checks etc.) with user-friendly error messages if rate limit is reached.

Real-time Chat History and Logs

Problem: Maintaining conversation context across tabs and saving chat data for iteration. Solution: Session-based storage with PostgreSQL persistence and conflict resolution. Allows me to look at all user chat logs and fine tune the large language model to improve conversation experience with user.

Internationalization

Problem: Supporting multiple languages and reducing hard coded strings. Solution: React-i18next with JSON-based translations and lazy loading.

Performance Metrics

Contributing

This is a personal portfolio project, but I’m always open to feedback and suggestions. Feel free to:

License

This project is private and intended for portfolio purposes only.

About the Developer

I’m Nathan Yuan, an AI Full-Stack Software Engineer with experience in:

Contact: contact@nathanyuan.com LinkedIn: linkedin.com/in/nathanyuan00


Built with ❤️ & 🧠 using modern web technologies and accelerated by AI