IMPORTANT!. If you turn on your microphone, lets say the word and turn off it. You have to wait a few seconds for the assemblyai server response!
LSpeak is an innovative language learning application that caters to German English and Polish learners. It offers a versatile learning experience by incorporating both microphone-based and manual input methods. Users can practice vocabulary by speaking into the microphone to guess words or by typing responses directly. This dual approach not only enhances engagement but also accommodates different learning styles. The application is designed with a modern and user-friendly interface developed using FIGMA for precise design implementation. On the frontend VUE3 ensures a responsive and interactive user experience allowing seamless navigation and intuitive interactions. Meanwhile FASTAPI powers the backend ensuring efficient data handling and robust performance. LSpeak leverages these technologies to provide a comprehensive language learning platform that combines effective learning methodologies with cutting-edge design and technology. Whether users prefer interactive speaking exercises or focused typing drills LSpeak adapts to their needs making language learning accessible engaging and effective.
Here're some of the project's best features:
- Multiple Language Support: Allows learning of German English and Polish simultaneously enabling users to switch between languages seamlessly within the application.
- Interactive Learning Modes: Offers two distinct learning modes:
- Microphone-based Learning: Enables users to practice vocabulary by speaking into the microphone facilitating pronunciation and listening skills development.
- Text Input: Allows users to type responses for vocabulary exercises enhancing writing and spelling proficiency.
- Modern User Interface: Designed using FIGMA for intuitive and visually appealing user interface ensuring a smooth and engaging user experience.
- Frontend Development: Implemented with VUE3 to ensure a responsive and interactive interface supporting seamless navigation and efficient user interaction
- Backend Development: Powered by FASTAPI for robust data handling ensuring efficient processing of user inputs and management of learning progress.
- Sound Integration: Planned addition of sound effects during lessons to enhance immersion and engagement.
- Level Progression: Capability to revisit previous levels allowing users to review and reinforce previously learned material.
1. Clone repo
git clone https://github.com/KLesiu/LSpeak.git
1.1. Get the env file from the author and paste the file into ./api. IMPORTANT. The path for the env file will be: ./api/.env . So you have to rename file name after download and change it from "env" to ".env"
2. Go to the frontend directory
cd frontend
3. Install dependencies
npm i
4. Go back to the root
cd ..
5. Go to the api directory and install dependencies
cd api
pip install uvicorn fastapi assemblyai fuzzywuzzy pytest python-Levenshtein
5.1 Add uvicorn to PATH
6. Start api server
uvicorn main:app
7. Open second terminal
8. Go to the frontend directory
cd frontend
9. Start frontend server
npm run dev
Technologies used in the project:
- Vue 3
- FASTAPI
- FIGMA
- SCSS
- PYTEST
- TypeScript
- Python
- VITE
- AssemblyAI
pytest test.py
This command efficiently tests the functionality of our API, ensuring the correctness of individual modules.