A dynamic full-stack application for searching and interacting with English learning questions.
-
Smart Search: Real-time search functionality with filters
-
Interactive Questions: Multiple question types supported:
- Multiple Choice Questions (MCQ)
- Anagram Puzzles (Word & Sentence)
- Read Along Exercises
- Content-based Learning
-
Modern UI/UX:
- Responsive design for all devices
- Smooth animations and transitions
- Intuitive user interface
- Real-time feedback system
- React.js
- gRPC-Web
- Lucide Icons
- CSS3 with animations
- Node.js
- gRPC
- MongoDB
- Protocol Buffers
- Envoy Proxy
- Docker
- MongoDB Atlas
- Node.js (v14 or higher)
- Docker
- MongoDB Atlas Account
- Clone the repository
git clone https://github.com/PriyanshK09/SpeakX-QuestSearch.git
cd questsearch
- Setup Backend
cd backend
npm install
# Create .env file with your MongoDB URI
npm start
- Setup Frontend
cd frontend
npm install
npm start
- Start Envoy Proxy
cd envoy
docker-compose up
- Search Questions: Use the search bar to find specific questions
- Apply Filters: Filter questions by type (MCQ, Anagram, etc.)
- Interact with Questions:
- Click "View Details" to attempt questions
- Get immediate feedback on answers
- View solutions when needed
The application uses gRPC for communication between frontend and backend:
service QuestionService {
rpc GetQuestions (GetQuestionsRequest) returns (GetQuestionsResponse) {}
}
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the
file for details.
- The gRPC team for excellent documentation
- MongoDB Atlas for database hosting