Full Stack / AI
Ragora
Knowledge-base platform that turns PDFs into searchable vector embeddings
Overview
Ragora is a full-stack knowledge-base platform that lets users upload PDFs, process their contents into searchable vector embeddings, and manage documents from a protected dashboard.
Its layered FastAPI backend routes requests through routers, services, and Prisma to PostgreSQL with pgvector. The document pipeline extracts text with pypdf, chunks it, generates embeddings with Sentence Transformers, and stores the results for search.
The Next.js and TypeScript frontend uses a custom dark design-token system, authentication context, protected routes, and live document-status tracking.
My Role
Built the full-stack platform across its FastAPI and PostgreSQL backend, vector-search document pipeline, and Next.js dashboard.
Tech Stack
Key Features
- PDF upload and processing into searchable vector embeddings
- Layered FastAPI backend with router, service, and Prisma data layers
- pypdf extraction, chunking, Sentence Transformer embeddings, and pgvector storage
- JWT authentication with bcrypt password hashing
- Ownership-checked REST endpoints for documents and user data
- Protected Next.js routes and a dashboard with live document-status tracking
Challenges & Solutions
Challenge
Turning uploaded PDFs into content that could be searched accurately and efficiently.
How I solved it
Built a pipeline that extracts text with pypdf, splits it into chunks, generates embeddings with Sentence Transformers, and stores them in PostgreSQL through pgvector.
Challenge
Keeping documents and API resources private to their owners.
How I solved it
Implemented JWT authentication, bcrypt password hashing, and ownership checks on REST endpoints before returning or modifying document data.
Challenge
Making asynchronous document processing visible and understandable in the frontend.
How I solved it
Built protected dashboard views with auth context and live document-status tracking so users can follow each upload through processing.