AI Assistant

A technical showcase of advanced AI implementation, combining Google Gemini's conversational capabilities with real-world integrations including calendar management, email verification, and dynamic content access.

Technical Architecture

Core Technology

  • Google Gemini 2.5 Pro & Flash - Advanced AI model for natural language understanding
  • Next.js 15 - React framework with App Router and Server Components
  • TypeScript - Type-safe implementation
  • Redis - Session management and OTP storage

Key Integrations

  • Google Calendar API - Real-time availability and meeting scheduling
  • Nodemailer - Email verification with OTP
  • MDX Blog System - Dynamic blog content access
  • Slack API - Error notifications and monitoring

Advanced Capabilities

Function Calling & Tool Use

The AI assistant uses Google Gemini's function calling capability to execute real-world actions:

Meeting Scheduling

  • • Timezone resolution from city names
  • • Email verification with OTP
  • • Real-time availability checking
  • • Google Calendar integration
  • • Meeting cancellation

Blog Content Access

  • • List all blog posts with filtering
  • • Fetch specific articles by slug
  • • Category and tag-based search
  • • File existence validation
  • • Dynamic content delivery

Intelligent Session Management

Persistent conversation context with secure state management:

  • LocalStorage Integration: Chat history persists across browser sessions
  • Redis-based OTP: Secure email verification with 15-minute activity-based expiration
  • Session Tracking: Unique session IDs for each conversation
  • Context Preservation: User information maintained throughout interaction

Security & Validation

Multiple layers of security ensure safe and reliable operation:

  • Email Verification: OTP-based verification before calendar access
  • Rate Limiting: One active session per email address
  • Input Validation: TypeScript interfaces and runtime checks
  • Error Handling: Comprehensive error tracking with Slack notifications

Enhanced User Experience

Thoughtful design decisions for optimal interaction:

  • Markdown Support: Rich formatting with links, lists, and emphasis
  • Expandable Interface: Compact and full-screen modes
  • Loading States: Visual feedback during processing
  • Natural Language: City-based timezone input (e.g., "New York" → America/New_York)

Implementation Highlights

150KB

Optimized system context for efficient token usage

15 MIN

OTP session expiration (15 min of inactivity)

12+

Function declarations for AI tool use

Experience It Yourself

Click the chat button in the bottom right to interact with the AI assistant. Try scheduling a meeting, asking about blog posts, or learning about my experience.

Read Blog Posts

Technical Stack

Frontend

  • • React 19 with TypeScript
  • • Next.js 15 App Router
  • • Tailwind CSS for styling
  • • React Markdown for rich text
  • • LocalStorage for persistence

Backend

  • • Next.js API Routes
  • • Google Gemini AI SDK
  • • Redis for session management
  • • Nodemailer for emails
  • • Google Calendar API

Content Management

  • • MDX for blog posts
  • • Gray-matter for frontmatter
  • • next-mdx-remote for rendering
  • • Rehype-highlight for syntax
  • • File-based content system

DevOps & Monitoring

  • • PM2 for process management
  • • Nginx reverse proxy
  • • Slack error notifications
  • • Git-based deployment
  • • Environment-based config