# LingoPal — kielenopetuspeli (Full Stack & AI)

LingoPal on Unityllä Androidille ja iPhonelle kehitetty kielenopetuksen mobiilipeli. Projekti yhdistää pelin, puheentunnistuksen ja oman taustajärjestelmän. Peli on vielä kehitysvaiheessa.

Toteutin projektissa palvelinpuolta, verkkoliikennettä ja tekoälyintegraatiota.

## Keskeiset ominaisuudet

- **Puheentunnistus:** Peli tallentaa puheen mikrofonista, muuntaa sen WAV-muotoon ja lähettää HTTP-rajapintaan. Palvelimella Whisper tunnistaa puhutun kielen, esimerkiksi suomen tai espanjan.
- **Suojattu kehitysverkko:** Pelikone ja etäpalvelin kommunikoivat Tailscale VPN:n kautta ilman julkisia porttiohjauksia.
- **API ja tietokanta:** .NET Web API hoitaa käyttäjähallinnan, pelitilanteiden tallennuksen ja oppimishistorian. Tiedot tallennetaan Docker-kontissa toimivaan PostgreSQL-tietokantaan.

## Teknologiat

- **Peli:** Unity, C#
- **Palvelin:** .NET Web API, Python, Flask
- **Puhe ja tekoäly:** OpenAI Whisper, FFmpeg
- **Tietokanta ja infrastruktuuri:** PostgreSQL, Docker, Tailscale VPN
- **Palvelinympäristö:** Ubuntu Server, Azure CLI
