oia-inquiries-chatbot / README.md

oia-inquiries-chatbot

Web based chatbot for Oman Investment Authority (OIA)

Last updated: 4/16/2026GitHub

oia-inquiries-chatbot

Project Overview

This repository contains a web-based chatbot application for Oman Investment Authority (OIA) that leverages an LLMs for answering user queries and sending emails based on specific keywords. The application uses a React front end, a FastAPI server, and Docker for containerization.

Features

  • Responsive Chat Interface: A frontend built with React and Vite, offering a seamless chat experience.
  • Backend with FastAPI: Handles chat processing and email notifications.
  • LLM Inferencing: Inferencing: The chatbot uses an LLM for generating responses via Onyx AP.
  • Email Trigger: Sends automated emails based on specific triggers in chatbot responses.

Project Structure

project-root
├── web/              # Frontend React Application
│   ├── src/       # React source files
│   └── ...       # Other frontend assets
├── server/           # Backend FastAPI Application
│   ├── main.py   # Main FastAPI entry point
│   └── ...       # API logic and utilities
├── Dockerfile        # Docker configuration
├── docker-compose.yml # Compose file for multi-container setup
└── README.md         # Project documentation

Usage

Docker Setup

1. Build and Run with Docker Compose:

docker-compose up --build
  • Frontend: http://localhost:3000
  • Backend: http://localhost:5001
  • MailHog: http://localhost:8025

Configuration

Environment Variables

Create a .env file in the server directory:

ONYX_API_KEY=<your-llm-api-key>
ONYX_URL=https://oia-demo.rihal.dev

User Credentials

OIA Admin

  • Email: admin@oia.gov.om
  • Password: 123

Public User

  • Email: public@test.com
  • Password: 123

Asyad Admin

  • Email: admin@asyad.om
  • Password: 123

Screenshots

Siraaj Interface Clone Web Interface