Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Collab Page #52

Merged
merged 132 commits into from
Oct 31, 2024
Merged

Add Collab Page #52

merged 132 commits into from
Oct 31, 2024

Conversation

limcaaarl
Copy link

@limcaaarl limcaaarl commented Oct 5, 2024

Description

Add a page for collaboration. This page contains the components for the editor and question box.

I have currently limited the support for the CodeMirror's syntax highlighter to java only as the prettier API, for code formatting, does not have plugins for other popular languages such as python, C++, and etc.

Checklist

  • UI
  • Integrate collaboration service
  • Add code formatter
  • Replace dummy room-id with real one
  • Replace dummy username with real one
  • Forfeit and Submit button functionality

Screenshots (if applicable)

image

image

@limcaaarl limcaaarl self-assigned this Oct 5, 2024
@limcaaarl limcaaarl linked an issue Oct 5, 2024 that may be closed by this pull request
@limcaaarl limcaaarl added this to the Milestone 5 milestone Oct 5, 2024
KhoonSun47 and others added 7 commits October 6, 2024 10:06
* collab-page-1:
  Integrate collab service
  Add confirm dialog box for submit and forfeit buttons
  Fix styling issue
  Update to set cursor position
  Update question-box to fetch question through API call
  Update chip colours to match difficulty
  Update layout styling
  Add codemirror
  Set up layout for question box and editor
  Update return type of getQuestionByID
  Revert "Update return type of getQuestionByID"
  Update return type of getQuestionByID
  Fix comments
  Fix question README
  Ensure question table is responsive
  Wrap delete questions in single API call
- Added a README.md to document the collaboration service.
- Added a Dockerfile and docker-compose configuration to containerize the collaboration service.
- Moved project files into appropriate directories for better structure and organization.
- Updated helper.ts with improvements and new helper methods.
- Refactored code to use the helper methods in helper.ts for consistency and reusability.
- Removed unused tests.html file (will develop a new testing approach for HTML files in the future).
- Updated .env.sample to include MONGO_URI for MongoDB Atlas.
- Modified mongodbservice.ts to use MONGO_URI for database connection.
- Updated docker-compose.yml to pass MONGO_URI as an environment variable for the collaboration service.
- compose.dev.yml: Add port 8084
- compose.yml: Remove port 8084
- api.config.ts: Change to api gateway
- editor.component.ts: Change the websocketurl
- default.conf: Add the proxy
- package.json: Add --files to solves issue on dev
- index.ts: Edit the file sequence
KhoonSun47 and others added 6 commits October 30, 2024 21:56
- Use Linting to fix
- webSocketService.ts: Add new checks
- editor.component.ts: Parse userid in the params
This error seems to be due to YJS attempting to read strings sent by the collab service. Let's keep the websocket channel purely for YJS-related changes.
Copy link

@samuelim01 samuelim01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@samuelim01 samuelim01 requested a review from McNaBry October 31, 2024 05:59
Copy link

@McNaBry McNaBry left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@samuelim01 samuelim01 merged commit f85a63b into main Oct 31, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Collaboration Page Add Collaboration Service
4 participants