Milestones
List view
Look into socketIO for web sockets Allow other users to join a current session / party
No due date•10/10 issues closedUser should be met with a login screen on first visit Login OAuth through GitHub / google / slack initially Let user choose avatar / login name / assign them a colour Details are stored into a DB (decide on what database, design schema with AI) Once user is logged in and authenticated, have leaderboard screen / component rendered somewhere on the app that contains persistent scores. Foreign key in user database? This MVP is the first point where we're connecting people via a leaderboard. No matter what we take forward, this stage of the project will have a leaderboard of persistent scores users will be able to refer to / compete against.
No due dateHome screen, allow user to customize their quiz experience by choosing: Number of questions given, Type of category, Difficulty of questions Home screen should also include a single player button (giving the user experience of MVP 1) ALSO A multiplayer button (which will include the web socketing and produce a party / URL link the user can send to their friends
No due dateGet a functional quiz to work: Have a quiz screen that renders a question based on fetched API response Fetch array of answers for that respective question Shuffle the array to randomize answers Render a React card component for every answer in the array Change card component / add responsiveness for what determines correct / incorrect answer Counter for score tracking Timer for time to answer a question. If no answer given by the end, you got it wrong, move on to next round (MVP 2) Include basic functionality unit testing for how the quiz operates Include codeQL or CI/CD yaml pipelines to run these tests, ENSURING THEY PASS, otherwise reject changes / merges into main. Deploy early on, deployment link should never not work
No due date•13/14 issues closed