FluentRoot is a multilingual AI chatbot developed as a final-year project. It supports five languages English, French, Yoruba, Igbo, and Hausa making it especially relevant to Nigeria’s diverse linguistic landscape. Built with a React/TypeScript frontend and a python backend.
# Fluent
FluentRoot is a multilingual AI-powered chatbot that enables users to communicate and learn across five languages: English, French, Yoruba, Igbo, and Hausa. Built as a final-year capstone project, it focuses on bridging the gap in natural language processing support for Nigerian indigenous languages.
---
## Table of Contents
- Overview
- Features
- Tech Stack
- Getting Started
- Language Support
- Acknowledgements
---
## Overview
FluentRoot addresses a significant gap in NLP tooling: the underrepresentation of Nigerian languages in conversational AI. By combining modern AI APIs with a clean, accessible interface, FluentRoot allows users to hold conversations and receive responses in their preferred language, including Yoruba, Igbo, and Hausa alongside English and French.
---
## Features
- Multilingual chat interface supporting English, French, Yoruba, Igbo, and Hausa
- AI-powered responses using OpenAI and Google Gemini APIs
- Real-time language switching within conversations
- User authentication and session management via Supabase
- Clean, responsive UI built with React and TypeScript
- FastAPI backend for efficient request handling
---
## Tech Stack
**Frontend**
- React
- TypeScript
**Backend**
- FastAPI (Python)
**Database and Auth**
- Supabase (PostgreSQL + authentication)
**AI APIs**
- OpenAI API
- Google Gemini API
---
## Getting Started
### Prerequisites
- Node.js (v18 or above)
- Python 3.10 or above
- A Supabase project
- OpenAI API key
- Google Gemini API key
### Installation
1. Clone the repository:
```bash
git clone
github.com
cd fluentroot
```
2. Install frontend dependencies:
```bash
cd frontend
npm install
```
3. Install backend dependencies:
```bash
cd backend
pip install -r requirements.txt
```
4. Set up your environment variables (see below).
5. Start the backend:
```bash
uvicorn main:app --reload
```
6. Start the frontend:
```bash
npm run dev
```
---
##
---
## Langu …