Skip to content

feat: add REST/WebSocket API layer, Tailwind UI and API tests#20

Merged
umbertogriffo merged 8 commits intoumberto/add-ts-frontendfrom
copilot/modernise-rag-chatbot
Feb 25, 2026
Merged

feat: add REST/WebSocket API layer, Tailwind UI and API tests#20
umbertogriffo merged 8 commits intoumberto/add-ts-frontendfrom
copilot/modernise-rag-chatbot

Conversation

Copy link
Contributor

Copilot AI commented Feb 23, 2026

This pull request introduces a significant backend and frontend update to support document upload and management, as well as a streaming chat API and a new, modernised React UI.
The backend adds REST endpoints for document management, a WebSocket endpoint for streaming chat, and centralises dependency injection.
The frontend is refactored to use custom hooks and Tailwind CSS for a more interactive and visually modern experience, including a sidebar for document uploads and a streaming chat interface.

Backend Improvements

  • Document Management API
    • Added new REST endpoints in documents.py to upload, list, and delete documents, with in-memory metadata storage and file validation using allowed extensions from settings.
  • Streaming Chat API
    • Introduced a WebSocket endpoint in chat_stream.py for token-by-token streaming chat responses, utilising dependency injection for the LLM client.
  • Dependency Injection Refactoring
    • Centralised LLM client dependency with a new dependency module and updated chat endpoints to use it.
  • Configuration Updates
    • Added settings for allowed upload extensions and WebSocket message size.
  • API Routing and Prefixes
    • Updated API router to include new endpoints and removed the version prefix for consistency.

Frontend Improvements

  • UI Redesign and Features
    • Refactored App.tsx to use Tailwind CSS, introduced a sidebar for document management, and modernised the chat interface.
    • Added a new DocumentUpload component for drag-and-drop uploads, progress, and document listing.
    • Updated ChatWindow to match the new design, support streaming, and improve message rendering.
  • Codebase Cleanup
    • Removed unused Material UI imports and components, and switched to a custom, lighter UI approach.
  • Miscellaneous
    • Updated .gitignore to exclude package-lock.json.

…aming, and API tests

Co-authored-by: umbertogriffo <1609440+umbertogriffo@users.noreply.github.com>
Copilot AI changed the title [WIP] Modernise RAG chatbot with React frontend and API layer Modernise RAG Chatbot: REST/WebSocket API layer, Tailwind UI, and API tests Feb 23, 2026
Copilot AI requested a review from umbertogriffo February 23, 2026 17:32
@umbertogriffo umbertogriffo marked this pull request as ready for review February 25, 2026 17:15
@umbertogriffo umbertogriffo changed the title Modernise RAG Chatbot: REST/WebSocket API layer, Tailwind UI, and API tests feat: add REST/WebSocket API layer, Tailwind UI and API tests Feb 25, 2026
@umbertogriffo umbertogriffo merged commit f55e59c into umberto/add-ts-frontend Feb 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants