Skip to content

Latest commit

 

History

161 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alexandra – AI Voice Assistant

Alexandra Banner

An intelligent voice assistant built with Kotlin, Java, and the OpenAI API. Final Year Project (PFE) – 2026

Kotlin Java Firebase OpenAI


Table of Contents


Overview

Alexandra is an intelligent voice assistant designed to simplify everyday tasks: voice recognition, conversation with an AI, reminders and notifications, all within a mobile application paired with a web dashboard for user management.

This project was designed as a complete end-to-end application: mobile app (Kotlin/Java), backend/authentication (Firebase), conversational intelligence (OpenAI API), and an admin interface (HTML/CSS/JS).


Demo

Screenshots — Mobile Application

Home History Profile
Login Sign up Permissions

Screenshots — Web Dashboard

Admin dashboard User dashboard Login

Features

Mobile Application

  • Voice recognition — natural interaction through speech
  • AI Chat — intelligent responses generated via the OpenAI API
  • Reminders and tasks — never forget anything
  • Smart notifications — alerts at the right moment
  • User profile — personalized experience

Web Dashboard

  • User management — add, edit, delete
  • Statistics and analytics — app usage tracking
  • Secure login — protected admin access
  • Activity log — traceability of user actions

Architecture

   🎙️ User voice
        │
        ▼
 SpeechRecognizer (Android)
        │
        ▼
   Transcribed text
        │
        ▼
   OpenAI API call  ──────► Firebase (auth + history)
        │
        ▼
   Generated response
        │
        ▼
   Text-to-speech (TTS) + display in the app

Technical Challenges and Learnings

  • Real-time synchronization: making continuous voice recognition work alongside network calls to the OpenAI API without blocking the user interface.
  • Handling API latency: displaying visual feedback while waiting for the AI's response so the user doesn't think the app has frozen.
  • Kotlin/Java consistency: managing the coexistence of both languages within the project, between legacy modules and newer development.
  • API key security: the OpenAI key and the google-services.json file are excluded from the repository and managed locally to prevent any leaks.

Technologies

Technology Usage
Kotlin Main application development
Java Backend logic / legacy modules
OpenAI API Generating conversational responses
Firebase Database and authentication
HTML/CSS Dashboard pages
JavaScript Dashboard interactions

Project Structure

Alexandra-AI-Voice-Assistante/
│
├── android_studio_codes/
│   ├── app/
│   │   └── src/main/
│   │       ├── java/
│   │       │   └── views/
│   │       ├── res/
│   │       │   ├── color/
│   │       │   ├── drawable/
│   │       │   ├── layout/
│   │       │   ├── menu/
│   │       │   └── values/
│   │       └── AndroidManifest.xml
│   ├── build.gradle.kts
│   └── settings.gradle.kts
│
├── dashboard_pages/
│   ├── dashboard-admin.html
│   ├── dashboard-user.html
│   └── login.html
│
├── screenshots/
│   ├── app/
│   └── dashboard/
│
├── README.md
└── LICENSE

Author


License

This project is distributed under the MIT License – see the LICENSE file for more details.


⭐ If you like this project, feel free to leave it a star!

About

Alexandra is an AI-powered voice assistant, developed as part of my PFE project in 2026.

Resources

Stars

18 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages