ChatPDF - AI-Powered Document Assistant

ChatPDF is a Next.js-based application that allows users to upload PDF documents and interact with them through AI-powered chat. The system processes PDFs using Langchain, Pinecone, and Google Gemini AI, enabling users to ask questions, retrieve key information, and summarize content seamlessly.

ChatPDF

Technology Stack

Project Overview

ChatPDF is an AI-powered document assistant that allows users to upload PDFs (on Cloudinary) and interact with them using natural language queries. Built with Next.js, it leverages Pinecone for storing embeddings of documents, Langchain to use AI Integrations for example Google Gemini AI or ChatGpt to enable seamless document analysis, key information retrieval, and summarization. The app is designed for students, professionals, and researchers who need quick insights from large PDF documents.

Objectives

The project aimed to achieve the following:

  1. Develop a Full-Stack AI-powered document assistant Platform – Enable users to upload their PDF files and enable seamless document analysis, key information retrieval, and summarization with the power of AI.
  2. Implement Secure Authentication – Use Clerk to support email/password and social logins (Google, Facebook) with profile management.
  3. Implement Subscription Plans – Use Stripe to support Free & Pro-tier with monthly subscription plans that user can manage through Stripe Portal.
  4. Enable AI-driven interactions – Use Pinecone to store embeddings of documents for fast semantic search and LangChain to integrate Gemini for answering user quires.

Features

Landing Page

Responsive landing page to showcase the features of the application along with navigation to Login and Pricing Page.

Landing Page

Pricing Page

Responsive pricing page to showcase clear prices and features of the application. There are 2 action button for navigating bck to Dashboard and to change user account limits.

Pricing Page

SignIn Page

A simple yest customized SignIn page using Clerk SignIn components.

SignIn Page

SignUp Page

A simple yest customized SignUp page using Clerk SignUp components.

SignUp Page

Dashboard Page

A simple Dashboard to showcase all the uploaded documents and chats along with option to Upload a new Document, Download a Uploaded Document, Delete a Chat (Pro Feature), and User Profile.

Dashboard Page

Upload PDF

Click the Add a Document button that will open a Modal. Click to select a PDF document or Drag and Drop one. The modal will show a interactive state of all the processing while uploading.

Upload PDF

Chat with PDF

Ask questions, summarize, or retrieve key insights from the document. You can also tell AI to answer the question as markdown. Along that you can** Navigat**e PDF Pages, Rotate PDF, Zoom In/Out PDF.

Chat Page

Stripe Payment

Upgrade to Pro via Stripe monthly subscriptions for higher document limits.

Stripe Payment Page

Manage Subscriptions

Upgraded members can cancel or renew subscriptions form Strip Portal.

Manage Subscriptions Page

Conclusion

Building ChatPDF was an invaluable experience in developing an AI-driven document assistant, enhancing my expertise in Next.js, AI-powered retrieval, and cloud-based storage. This project allowed me to integrate Langchain and Pinecone for intelligent document search, leverage Google Gemini AI for interactive responses, and ensure secure authentication and storage with Clerk and Firebase. Implementing Stripe for subscription management and Cloudinary for file handling further solidified my understanding of scalable and production-ready applications.

Through this project, I honed my skills in building responsive, AI-powered, and user-centric applications, reinforcing my ability to create efficient, real-world solutions that enhance productivity.

Tayyab

© 2025 Tayyab Asghar. All rights are reserved.