An adaptive Estonian language learning platform designed specifically for Honduran Spanish speakers, featuring AI-powered tutoring and real-time progress tracking.
- AI-Powered Tutoring: GPT-4 conversations in Estonian with corrections and explanations
- Speech Integration: Azure TTS for Estonian pronunciation and Whisper for Spanish speech recognition
- CEFR Level Assessment: Automatic difficulty adjustment based on performance
- Interactive Learning Tools: Quizzes, dialogues, and pronunciation practice
- Real-time Progress Tracking: Persistent user progress with Supabase database
- Google Authentication: Secure login and progress saving
- Frontend: React + TypeScript + Vite
- Backend: Node.js + Express
- Database: Supabase (PostgreSQL)
- Styling: Tailwind CSS + shadcn/ui
- Authentication: Passport.js + Google OAuth
- AI Services: OpenAI GPT-4 + Whisper + Azure Speech
Create a .env
file with:
DATABASE_URL=your_supabase_connection_string
OPENAI_API_KEY=your_openai_api_key
AZURE_SPEECH_KEY=your_azure_speech_key
AZURE_SPEECH_REGION=your_azure_region
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
SESSION_SECRET=your_session_secret
- Clone the repository
- Install dependencies:
npm install
- Set up environment variables
- Push database schema:
npm run db:push
- Start development server:
npm run dev
This app can be deployed to:
- Vercel (recommended for frontend + serverless backend)
- Railway (full-stack deployment)
- Render (free tier available)
- Heroku (with add-ons)
- Create a Supabase project at supabase.com
- Get your connection string from Project Settings → Database
- Run
npm run db:push
to create tables
- Go to Google Cloud Console
- Create project and enable Google+ API
- Create OAuth 2.0 credentials
- Set authorized redirect URI:
https://yourdomain.com/auth/google/callback
MIT