This project is a collaborative learning platform where users can post their doubts and get help from other users. Users who clear doubts receive points that increase their ranking on the platform. Currently, the project is developed as a command-line application using Core Java, MVC architecture, Hibernate, and MySQL.
PS: This project is currently work in progress and technologies involed are subjected to change acc to me and my will , spring integration is postponed as i started playing about with servlets and jsp would make views based on these front-end stack , later integrates towards spring core -> spring MVC -> spring- boot. -> currently exploreing JavaScripts based backend frameworks like nodejs , Expressjs , -> would Shift from MYSQL (Current ) to MongoDb.
- User Registration and Profiles
- Posting Doubts
- Matching Users
- Clearing Doubts and Points System
- Backend: Core Java, MVC, Hibernate, JPA
- Database: MySQL
- Frontend (Future Goals): HTML, CSS, JavaScript
- Video Conferencing API (Future Goals): Google Meet API, Zoom API
- Hosting (Future Goals): AWS, Heroku, or DigitalOcean
The project is currently implemented as a command-line application using Core Java, MVC architecture, Hibernate, and MySQL. Below are the completed tasks and the goals for integrating a web interface.
- Define overall architecture and technologies
- Design user interface and user experience (for command line)
- Create wireframes and prototypes (for web interface)
- Set up the project using Core Java and MVC
- Create database schema for users, doubts, meetings, and points using Hibernate and JPA
- Develop core functionalities for user registration, doubt posting, and matching users (command-line based)
- Integrate HTML, CSS, and JavaScript for the web interface
- Update controllers to handle web requests and responses
- Develop web pages for user registration, login, doubt posting, and profile viewing
- Implement responsive design for accessibility on various devices
- Implement user registration and login functionalities (command-line based)
- Secure web-based authentication (future goal)
- Implement functionality for posting doubts with categories (command-line based)
- Develop a matching algorithm to match users with suitable helpers
- Create mechanisms for doubt clearance and point allocation
- Integrate Google Meet API or other conferencing tools for creating meeting links
- Provide users with the option to choose internal or external communication platforms
- Create functionality for confirming doubt clearance and updating user points (command-line based)
- Display points and rankings on web user profiles
- Conduct unit testing for backend services (command-line based)
- Perform testing on the web interface and integration with backend
- Deploy the application to a cloud service (AWS, Heroku, or DigitalOcean)
- Ensure scalability and handle potential user load
- Regularly update the platform with new features and improvements
- Monitor the system for any issues and ensure smooth operation
- Java Development Kit (JDK)
- MySQL
- Basic knowledge of HTML, CSS, and JavaScript for frontend integration
- Clone the repository
gh repo clone codedeprived/Tutor-Hire