Skip to content

Milestone-D5

Compare
Choose a tag to compare
@evanyan13 evanyan13 released this 30 Oct 09:46
· 20 commits to main since this release
abdd1fb
Milestone 5 (#96)

* Add base code for collaboration service

* Added additional services for collaboration and code improvements

* Add basic collab page with resizeable panels

* Add collab-test page component for real-time collaboration

* Add capturing of selection in onInputCapture function

* Add matching history

* Integrate ide in collaboration page

* Fix lint errors for collaboration page

* Add server.js for Socket.io and YJS integration

* Basic collab editor function done

* Remove unecessary dep in useCallback

* Add monaco editor and y-websocket dependencies

* Add MonacoEditor component for collaborative code editing

* Add cursor indicators for collaboration ide

* Add dracula theme for monaco ide

* Collab-test (to be removed)

* Add todo

* Add subscribe button

* Refactor async function to fetch and display question (temp)

* Add CollaborativeEditor and InjectableCursorStyles components

* Get user and add todo

* Refactor matching logic (#104)

* Implement y-websocket and host it as a separate gateway (#101)

* Refactor code structure for collab to maintain consistency

* Adding a new yjs ws gateway

* Update merge error

* Attempt to create yjs gateway

* Remove yjs in nestjs

* Implement y-websocket as service

* Ms5 jared/refactor matching (#102)

* Add base code for collaboration service

* Added additional services for collaboration and code improvements

* Add matching history

* Refactor matching logic

---------

Co-authored-by: Evan Yan <[email protected]>

* Revert "Ms5 jared/refactor matching (#102)" (#103)

This reverts commit ef073565295c5fce8957404961346d480c23cad1.

---------

Co-authored-by: Jajabonks <[email protected]>

* Add new features and update layout in collaboration page

* Improve error handling for question creation/editing

* Update UI components in Chatbox and DescriptionTabContent

* Add y-utility package dependency

* Add useYjsStore custom hook for syncing with Yjs store

* Update CollaborativeWhiteboard to use our own yjs backend

* Refactor cursor styles and WebSocket connection in Editor

* Fix build errors

* Update default socket URLs in collaborative editor and whiteboard components

* Add cursorColors.ts with array of colors and getRandomColor() function

* Use random color for the cursors

* Implement get collab session (#105)

* Implement get collab session

* Remove unused schema

* Check session status before returning session details

* Patch: Connect collab message with gateway

* Add get question by ID endpoint

* Fix get question by id endpoint

* Reorder setupWSConnection to fix sync issues

* Update collaboration page to fetch session info before rendering

* Refactor code for passing sessionId to editor components

* Create SessionInfo schema for storing session details

* Add getSessionInfo function to collaborationService

* Add redirect user to collaboration page

* Setup y-mongo db provider (#106)

* Patch import error
:

* fix get question by id endpoint

* Update CreateQuestionModal.tsx with quill editor

* Update EditQuestionModal.tsx to include quill functionalities

* Update DescriptionTabContent.tsx to display updated description format

* Update pages to display correct question for collab session

* Add QuestionSchema parsing and update DescriptionTabContent

* Quill (#109)

* Update CreateQuestionModal.tsx with quill editor

* Update EditQuestionModal.tsx to include quill functionalities

* Update DescriptionTabContent.tsx to display updated description format

* Update pages to display correct question for collab session

* Add QuestionSchema parsing and update DescriptionTabContent

---------

Co-authored-by: shavonneg <>

* Fix build errors and eslint errors

* Remove test server file

* Remove duplicate QuestionTabPanel component

* Add env file to fe

---------

Co-authored-by: Jajared <[email protected]>
Co-authored-by: jmsandiegoo <[email protected]>
Co-authored-by: Rick <[email protected]>
Co-authored-by: Jajabonks <[email protected]>
Co-authored-by: shavonneg <>