Speak naturally in Igbo, Yoruba, or Hausa and let the system understand, respond, and open the requested application or website.
# Multilingual Voice Controlled System
A polished web-based voice assistant prototype for Igbo, Yoruba, and Hausa commands. It features:
- Voice capture and transcript display
- Language selection and automatic language hints
- Intent detection for common app and web actions
- Text and speech feedback
- A professional, modern interface
## Run locally
Open index.html in a browser, or serve the folder with a lightweight static server.
Example:
python -m http.server 8000
## Why it may not work on GitHub Pages
GitHub Pages only hosts static front-end files (HTML/CSS/JS). Any backend code (for example server-side speech-to-text, audio upload endpoints, or long-running processes) will not run on GitHub Pages. If your assistant relied on a server endpoint for transcription or command processing, it must be deployed to a hosting service that supports a backend (see options below).
## Included server (optional)
This repo now contains a small Node/Express server at `server/server.js` which accepts audio uploads at `/stt` and forwards them to AssemblyAI for transcription when the `ASSEMBLYAI_API_KEY` environment variable is set.
Quick local run:
```bash
cd server
npm install
# create a .env file or export ASSEMBLYAI_API_KEY
npm start
```
If `ASSEMBLYAI_API_KEY` is not set the endpoint will return a helpful error explaining that STT is not configured.
## Deployment suggestions
- For a simple hosted backend use Railway.app or Render.com (both support Node/Express deployments and provide free tiers for hobby projects).
- For serverless functions, consider Vercel or Netlify functions; you'll need to adapt `server.js` into serverless handlers.
- After deploying the backend, host the frontend (this folder) on GitHub Pages or the same hosting provider, and point the client `fetch('/stt')` requests to the deployed server URL (or enable CORS as required).
How to point the frontend to a deployed backend
- In `index.html` set `window.BACKEND_ORIGIN` to your deployed serv …