AI-powered language learning and fluency development — personalised practice, grammar feedback, and conversational coaching in any language.
Topics: adaptive-learning · conversational-ai · deep-learning · education-ai · generative-ai · language-learning · large-language-models · neural-networks · nlp · speech-recognition
FluentFlow is an intelligent language learning platform that combines AI-driven conversation practice, grammar error correction, vocabulary acquisition, and pronunciation guidance into a single, adaptive learning environment. Unlike static language learning apps, FluentFlow responds to the learner's actual language production — written text initially, with audio planned — rather than presenting fixed lesson sequences regardless of demonstrated proficiency.
The conversation practice module pairs the learner with an AI tutor persona calibrated to the target language: formal French, colloquial Brazilian Portuguese, business Japanese, or any of 30+ supported languages. The tutor generates contextually appropriate responses at the learner's level, gently corrects errors in-line without derailing the conversation, and introduces new vocabulary organically when the context provides a natural opportunity.
The grammar analysis module parses the learner's written input for grammatical errors, classifies each error by type (subject-verb agreement, tense consistency, article usage, preposition choice), provides the correction with a rule-based explanation, and adds the error pattern to a personalised mistake tracker that drives targeted practice exercise generation.
Language acquisition research shows that comprehensible input and meaningful output practice are the most effective learning mechanisms — more effective than grammar drills and vocabulary flashcards in isolation. FluentFlow was designed to provide unlimited, patient, judgement-free conversation practice with immediate corrective feedback: something previously only possible with a human tutor, now available on-demand through AI.
Learner Text Input (target language)
│
┌───────────────────────────────────────────┐
│ Grammar Analysis Module │
│ LanguageTool / LanguageModel error detection
│ Error type classification + explanation │
└───────────────────────────────────────────┘
│
┌───────────────────────────────────────────┐
│ Conversation Engine (LLM) │
│ Level-calibrated response generation │
│ Vocabulary introduction + feedback │
└───────────────────────────────────────────┘
│
Mistake tracker → Targeted exercise generator
│
Spaced repetition vocabulary scheduler
Practice in 30+ languages including Spanish, French, German, Japanese, Mandarin, Arabic, Hindi, Portuguese, Italian, Korean, and Russian — with language-specific grammar rule engines.
AI tutor adjusts vocabulary complexity, sentence length, and grammatical structures based on the learner's demonstrated CEFR level (A1–C2), preventing both overwhelm and under-challenge.
Errors corrected inline within the conversation flow with a brief explanation footnote — maintaining conversational momentum while providing teachable moments.
Each grammatical error classified into one of 15 error categories (tense, agreement, word order, preposition, article, conjugation, etc.) and tracked per learner for pattern analysis.
Dashboard showing error frequency by type and over time, with targeted grammar exercises generated specifically for the learner's most common error patterns.
New vocabulary introduced in conversational context, reviewed via spaced repetition (SM-2 algorithm), and tracked with retention rate per word.
Pre-built conversation scenarios: job interview, restaurant ordering, travel planning, business negotiation, medical consultation — with role-play and vocabulary specific to each context.
Learning analytics dashboard: conversation hours, words acquired, grammar accuracy trend over time, and CEFR level progression estimate.
| Library / Tool | Role | Why This Choice |
|---|---|---|
| OpenAI GPT-4o / Gemini | Conversation engine | Level-calibrated multilingual conversation and grammar feedback |
| LanguageTool API | Grammar checking | Rule-based grammar error detection for 30+ languages |
| Streamlit | Learning interface | Chat UI, vocabulary cards, progress dashboard |
| spaCy | NLP analysis | Tokenisation, POS tagging, dependency parsing for error classification |
| pandas | Progress tracking | Mistake tracker, vocabulary retention, session history |
| Plotly | Analytics visualisation | Error trend charts, vocabulary growth curves |
- Python 3.9+ (or Node.js 18+ for TypeScript/JavaScript projects)
- A virtual environment manager (
venv,conda, or equivalent) - API keys as listed in the Configuration section
git clone https://github.com/Devanik21/FluentFlow.git
cd FluentFlow
python -m venv venv && source venv/bin/activate
pip install streamlit openai spacy pandas plotly requests python-dotenv
python -m spacy download en_core_web_sm # repeat for target languages
echo 'OPENAI_API_KEY=sk-...' > .env
streamlit run app.py# Start the learning interface
streamlit run app.py
# Practice a specific scenario
python practice.py --language french --scenario restaurant --level B1
# Run grammar analysis on a text
python grammar_check.py --text 'Je suis allé au marché hier.' --language fr
# Export vocabulary list
python export_vocab.py --language japanese --format anki| Variable | Default | Description |
|---|---|---|
OPENAI_API_KEY |
(required) |
LLM API key for conversation engine |
DEFAULT_LANGUAGE |
French |
Target learning language |
DEFAULT_LEVEL |
B1 |
Learner CEFR level: A1, A2, B1, B2, C1, C2 |
VOCAB_DAILY_LIMIT |
20 |
Maximum new vocabulary items introduced per day |
CORRECTION_STYLE |
gentle |
Correction style: gentle, immediate, end-of-message |
Copy
.env.exampleto.envand populate required values before running.
FluentFlow/
├── README.md
├── requirements.txt
├── app.py
└── ...
- Speech recognition integration with Whisper for spoken language practice and pronunciation scoring
- Writing mode: essay and paragraph correction with style and register feedback beyond grammar
- Tandem partner matching: connect learners of complementary language pairs for human conversation exchange
- Native speaker audio pronunciation examples via AWS Polly or ElevenLabs for all vocabulary items
- JLPT/DELF/DELE exam preparation mode with official exam format practice questions
Contributions, issues, and suggestions are welcome.
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-idea - Commit your changes:
git commit -m 'feat: add your idea' - Push to your branch:
git push origin feature/your-idea - Open a Pull Request with a clear description
Please follow conventional commit messages and add documentation for new features.
Grammar correction quality varies by language — English, French, German, and Spanish have the most robust LanguageTool rules. For languages with limited LanguageTool support, correction relies primarily on the LLM. LLM-based grammar feedback should be verified for less common languages.
Devanik Debnath
B.Tech, Electronics & Communication Engineering
National Institute of Technology Agartala
This project is open source and available under the MIT License.
Built with curiosity, depth, and care — because good projects deserve good documentation.