Coming from an engineering background (having attempted JEE), we know how important it is to get one’s doubts resolved as quick as possible along with a proper understanding of the concept.
Hence, we came up with StuTea where all the students can get their doubts solved! :)
We provide a platform to get your doubts solved by other students/colleagues. It was a dream for a lot of introvert students who hesitated in asking doubts just so they don’t seem to be silly!
This problem is proposed to be solved by StuTea!
Here the doubts would be solved by someone with similar knowledge and in simple language making it easy to ask as many questions until your doubt is resolved.
StuTea is a one stop solution to getting your doubts solved on a number of topics. Users can register and have an initial score of 1000 credits that they can redeem when their doubts get successfully resolved. This would transfer credits to the account of the person solving doubts. This provides an incentive to the one solving doubts.
The questions will be sorted using tags. The tags will help the one solving doubt to anchor his areas of expertise and solve doubts effectively.
Once the doubt is resolved the user will get a notification through which they can check the answer and rate the person who solved it. This would help in keeping a track of good doubt solvers and eliminate the ones who don’t provide quality answers.
User verification through email
We make sure that genuine accounts are being registered here at StuTea. Hence for every registration we send a verification e-mail through sendgrid thereby creating a new account.Notifications
Once the user’s question has been answered, he will get a notification on his profile which would lead him to his question.Credit system
This is the most crucial aspect of StuTea. Users can find their credit score on the dashboard. Credits are what would act as virtual money. For every question posted there is a deduction of 50 credits. If the user’s doubt is successfully answered, he would in return give credits according to the quality of answer. If he rates the answer with a 3 or 3+ rating, 50 credits would be deducted from his account and 100 credits would be added to the person answering’s account.For ratings less than 3, 50 credits will be deducted from the one asking and 50 would be added to the person answering’s account. The users who would be solving more doubts and having more credits could redeem them at our shop, where we provide a variety of StuTea merchandise!
Analytics in profile
Users can view their previously asked questions, number of questions successfully answered and average feedback of answered questions on their profile.Shop
At StuTea, users solving doubts with great efficiency will be rewarded with credits that they can redeem at the shop with a number of StuTea merchandise.Tags
Each question will be allotted tags which would help in sorting of doubts. This would help the person solving doubts to find questions of his expertise.Efficient feedback system
In order to keep a track of the quality of answers to the doubts we provide an efficient feedback by the users asking doubts. Rest is in the future scope of the project.Favourite tags
Users can choose their favourite tags using which the user can find various questions on their favourite topics.How we built it
We started out by dividing work amongst the team members according to the existing resources and knowledge we had. We built our frontend using React framework. Major libraries used are react router-dom, react bootstrap, react-paginate.The web app is deployed using firebase service.
We have a separate repository for the backend of our web app. We made different schemas for catering data in our database i.e., MongoDB. We used node.js and express for creating the rest of our backend. The email authentication is done using nodemailer package and sendgrid. Backend as a service is running on heroku. Some dependencies used in backend are bcrypt, cors, crypto, express-validator, nodemailer, jsonwebtoken.
What we learnt
Throughout the development of this project, we learned so much. Going into it, we had a basic idea what we were doing. Along the way, we learnt in and about our tech stacks which were MongoDB, Express, React, Node.Js . Most of all, we learned that through perseverance and determination, you can make progress towards helping to solve problems in the world, even if you don't initially think you have the resources or knowledge.We would love some constructive feedback. This was a learning experience for us all and we would love to see how we could improve in both technical aspects as well with our presentation.
As software engineers, we're never fully satisfied with the work. There are always more ways to make the product better, faster, more secure, accessible, etc. Here are some product features that we would love to implement in the future:
- Use of voice medium and A/V recordings to answer doubts.
- Involvement of real time monetary transactions to buy/sell credits.
- A more equipped shop to induce business into the product.
- Extending our existing one-to-one answering product to one-to-many version.
- An efficient search mechanism which will include search by tags/question and many more.
- We also aim to create an efficient feedback system to authentify the credit/decredit system.
This app is an open source project, to contribute you should follow these steps.
To contribute, fork this repository to your own github account.
git clone https://github.com/harshjohar/stutea
Go to the project directory
cd stutea/frontend
OR
cd stutea/backend
yarn install
yarn start
Resolve issues and send PRs.