WordSage
Personalized English Vocabulary Learning App Built with React Native & NestJS
Install / Use
/learn @nz-m/WordSageREADME
WordSage is a personalized English vocabulary learning app built with React Native and NestJS, designed to help users enhance their vocabulary in an engaging and effective way. The application covers over 1500 words, including their meanings, synonyms, antonyms, and example sentences. It also offers interactive quizzes to reinforce learning and track progress over time.
🚀 Features
- ✨ Personalized Learning: WordSage customizes the learning experience based on each user's skill level and progress, ensuring efficient learning.
- 📘 Vast Vocabulary: Access a comprehensive database of words, including their meanings, synonyms, antonyms, and example sentences with voice pronunciations.
- 🧠 Interactive Quizzes: Engage in quizzes that are interactive, reinforcing your learning and allowing you to track your progress over time.
- 👤 User Profiles: Create user profiles to monitor your learning journey.
- 🖥️ Admin Panel: The intuitive admin panel, built with React, enables easy management of app content and user data.
- 📱 Cross-Platform: The app is built with React Native, allowing it to run on both Android and iOS devices.
🛠️ Tech Stack
- ⚛️ Frontend: React Native, Redux Toolkit
- 🧱 Backend: NestJS
- 💾 Database: MongoDB
- 🎨 Admin Panel: React, Vite, and Tailwind CSS
⚙️ Installation
📋 Prerequisites
- 📦 Node.js (Developed with v16)
- 🗄️ MongoDB or MongoDB Atlas
- 📱 Expo Go app (for Android)
Note: Newer versions of Node.js may not be compatible with the dependencies used in the frontend. If you encounter any issues, consider using NVM to manage multiple versions of Node.js on your machine.
📝 Steps
-
Clone the repository:
git clone https://github.com/nz-m/WordSage.git -
Install dependencies:
Navigate to the project directory and run the following command in each of the directories: frontend, backend, and admin-panel
npm install
-
Create
.envfiles: Create .env files in thebackendandadmin-paneldirectories following the format in the.env.examplefile. -
Setup backend URL in frontend: In the
frontenddirectory, locate thebaseUrl.jsfile in theconstantsfolder and change the value of theAPI_BASE_URLvariable to the URL of the backend server. -
Start the backend server:
npm start
Access
http://127.0.0.1:4000/docsto view the API documentation. 6. Start the admin panel
npm start
-
Access the admin panel at
http://127.0.0.1:5173/and add learning contents:Note: You will find instructions on how to add content in the admin panel itself. The learning contents are stored in the
backenddirectory in theresourcesfolder with appropriate file names. -
Start the app (frontend):
npm start
Scan the QR code using the Expo Go app to run the app on your mobile device.
📷 Screenshots
<div style="display: flex; flex-direction: row; gap: 10px; justify-content: center;"> <img src="screenshots/login.jpg" alt="Login" style="width: 40%; margin: 0;"> <img src="screenshots/home.jpg" alt="Home" style="width: 40%; margin: 0;"> </div> <div style="display: flex; flex-direction: row; gap: 10px; justify-content: center;"> <img src="screenshots/profile.jpg" alt="Profile" style="width: 40%; margin: 0;"> <img src="screenshots/vocabulary.jpg" alt="Vocabulary" style="width: 40%; margin: 0;"> </div> <div style="display: flex; flex-direction: row; gap: 10px; justify-content: center;"> <img src="screenshots/quiz.jpg" alt="Quiz" style="width: 40%; margin: 0;"> <img src="screenshots/result.jpg" alt="Result" style="width: 40%; margin: 0;"> </div> <div style="display: flex; flex-direction: row; gap: 10px; justify-content: center;"> <img src="screenshots/proficiency-assessment.jpg" alt="Proficiency Assessment" style="width: 40%; margin: 0;"> <img src="screenshots/assessment-prompt.jpg" alt="Assessment Prompt" style="width: 40%; margin: 0;"> </div> <div style="display: flex; flex-direction: row; gap: 10px; justify-content: center;"> <img src="screenshots/lessons.jpg" alt="Lessons" style="width: 40%; margin: 0;"> </div> <img src="screenshots/Admin-panel.png" alt="Admin Panel"> <img src="screenshots/Manage-questions.png" alt="Manage Questions">🤝 Contributing
Contributions are welcome. See CONTRIBUTING.md for more details.
📬 Feedback
If you have any feedback, please reach out to me at neaz6160@gmail.com
📄 License
This project is licensed under the MIT License.
Related Skills
bluebubbles
334.1kUse when you need to send or manage iMessages via BlueBubbles (recommended iMessage integration). Calls go through the generic message tool with channel="bluebubbles".
slack
334.1kUse when you need to control Slack from OpenClaw via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
frontend-design
82.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Agent Development
82.1kThis skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
