Hanguru is an innovative web application designed to facilitate Korean language learning. It integrates various technologies, including AI and Google Cloud APIs, to offer a comprehensive and interactive learning experience.
- Create and edit personalized Korean vocab sets using Google Translation API.
- Practice with generated questions and receive feedback.
- Generate text for reading practice and record your own voice for review.
- Track your daily login consistency.
- Register, login, and manage your profile and settings.
- Backend: Node.js with Express framework, Passport.js for authentication.
- Frontend: HTML, Chakra UI for responsive design.
- Database: MongoDB and Google Cloud.
- AI/ML & Language Processing: OpenAI and Google Cloud tools for Korean language processing.
- Containerization: Docker for deployment consistency.
- Ensure Docker and MongoDB are installed.
Create an .env
file in the server directory with the following:
MONGO_URI=mongodb://mongo:27017/hanguru
SESSION_SECRET=<your_session_secret>
GOOGLE_API_KEY=<your_google_api_key>
OPENAI_API_KEY=<your_openai_api_key>
GCS_SERVICE_ACCOUNT=gcs-service-account.json
SPEECH_TO_TEXT_SERVICE_ACCOUNT=text-to-speech-service-account.json
GCS_BUCKET_NAME=hanguru-audio-bucket
PORT=8100
- Obtain and configure the necessary service account JSON files
- Create a network and connect all servers (GCP SQL Proxy, MongoDB, client, and server)