We want to organise hackathons every month in our company. For this we want a web application where our employees can ideate and collaborate.
Hence, build a web application which lets our employees add challenges and collaborate on them and the application should have below mentioned features:
Allow employees to log in to the application with their 'employee id'. Allow users to add a new challenges A challenge will have a title, description and tags You can maintain fixed pre-defined tags or provide database seeds for few pre-defined tags
Employees can upvote a challenge, except the employee who added the challenge
Employees can express interest to collaborate on a challenge An employee should be able to see list of other employees who have expressed interest to collaborate on the challenge
Show the list of all challenges on home page Allow users to sort challenges with votes count, creation date
The backend application should expose a RESTful JSON API You can write the backend in any object-oriented/functional programming language You can write the frontend in any Javascript framework of your choice To save time on UI, use any popular CSS frameworks like Bootstrap/ Materialize Try to keep the use of external libraries/packages to a minimum