AI Chatbot with Amazon Bedrock & Next.js

A secure, mobile-friendly AI chatbot using Amazon Bedrock, Next.js, and Tailwind CSS. Features persistent chat, AWS OIDC CI/CD, and robust cloud protections.

Full Description

This project is a modern AI chatbot built with Next.js and Tailwind CSS, designed for seamless use across all devices. It leverages Amazon Bedrock's Nova micro model for AI responses, with a backend powered by AWS Lambda and API Gateway (SAM project). The UI is fully responsive and keeps chat history in local storage, so conversations persist even after a page refresh. Security is a top priority: the chatbot is protected with rate limiting, DoS protection, Cloudflare security, and AWS CloudWatch alarms. CI/CD is handled via GitHub Actions using AWS OIDC for secure deployments, with IAM roles configured for GitHub authentication.

Key Features

  • Chatbot UI built with Tailwind CSS and Next.js
  • Mobile-friendly, responsive layout for all devices
  • Persistent chat history using local storage
  • AI powered by Amazon Bedrock Nova micro model
  • Backend with AWS Lambda and API Gateway (SAM project)
  • Rate limiting and DoS protection on API endpoints
  • Cloudflare security and protection
  • AWS CloudWatch alarms for monitoring
  • CI/CD pipeline with GitHub Actions and AWS OIDC integration
  • IAM roles for secure GitHub-to-AWS authentication

Tech Stack

  • 🌐Next.js
  • 🎨Tailwind CSS
  • ⚛️React
  • 🪨Amazon Bedrock
  • λAWS Lambda
  • 🛣️API Gateway
  • 📦SAM
  • ☁️Cloudflare
  • 📈CloudWatch
  • 🚀GitHub Actions
  • 🔐OIDC
  • 💾Local Storage

Architecture

Frontend
Next.js app with Tailwind CSS for UI, chat state managed in local storage for persistence.
Backend
AWS Lambda functions exposed via API Gateway, deployed using AWS SAM.
AI
Amazon Bedrock Nova micro model for generating responses.
Security
Rate limiting, DoS protection, Cloudflare, and AWS CloudWatch alarms.
CI_CD
GitHub Actions pipeline with AWS OIDC provider and IAM role for secure deployments.

Screenshots

AI Chatbot with Amazon Bedrock & Next.js screenshot 1AI Chatbot with Amazon Bedrock & Next.js screenshot 2

DevOps & Deployment

  • CI/CD: GitHub Actions with AWS OIDC for secure, automated deployments.
  • Hosting: Frontend hosted on Vercel as a part of portfolio website, backend on AWS Lambda/API Gateway.
  • Analytics: AWS CloudWatch for monitoring and alarms.

Notes

  • Chat history is stored in local storage for persistence across sessions.
  • API endpoints are protected with rate limiting and DoS protection.
  • Cloudflare and AWS CloudWatch provide additional layers of security and monitoring.
  • CI/CD uses AWS OIDC and IAM roles for secure GitHub-to-AWS authentication.