Skip to content

Conversation

@az108
Copy link
Contributor

@az108 az108 commented Dec 4, 2025

Checklist

General

Motivation and Context

We want to migrate to the new documentation https://ls1intum.github.io/Artemis/ from https://artemis-platform.readthedocs.io/en/latest/index.html to provide a more modern and user friendly access to additional information around Artemis.

Description

  • Migrating the Courses section to the new documentation
    • Splitting it into the Student and Instructor documentation
    • Simplifying explanations and making them more user friendly (less text, more bullet points)
    • Removing that part from the old documentation and linking to the new documentation

Steps for Testing

Run npm install and npm start in the /documentation folder

  1. Verify http://localhost:3000/Artemis/student/courses is clear and understandable
  2. Verify http://localhost:3000/Artemis/instructor/courses is clear and understandable
  3. Verify you are not missing information that you think would be required

Review Progress

Manual Tests

  • Test 1

Summary by CodeRabbit

  • Documentation
    • Added comprehensive course documentation for instructors covering course customization, creation, and management.
    • Added course documentation for students explaining customization options and registration workflow.
    • Reorganized course guidance into dedicated student and instructor sections for improved navigation and accessibility.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 4, 2025

Walkthrough

Documentation reorganization migrates course customization content from legacy RST format to new MDX pages for instructor and student audiences. Sidebar configurations updated to include the new course documentation entries.

Changes

Cohort / File(s) Summary
Legacy documentation removal
docs/user/courses/customizable.rst
Substantial course customization guidance removed and replaced with relocation notices directing to separate instructor and student documentation.
New instructor documentation
documentation/docs/instructor/courses.mdx
New MDX file added documenting course customization, creation, and management for instructors, including course attributes, UI elements, and configuration steps with embedded images.
New student documentation
documentation/docs/student/courses.mdx
New MDX file added documenting student-facing course behavior, including registration flow, confirmation messages, and course display elements with embedded images.
Sidebar configuration updates
documentation/sidebar-instructors.ts, documentation/sidebar-students.ts
Added 'courses' entry to both instructor and student sidebar configuration arrays.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify links in relocation notices are correctly formatted and point to new documentation files
  • Confirm MDX syntax and frontmatter (id, title, sidebar_label) are properly configured in new files
  • Check that image import paths and asset references are valid
  • Validate sidebar configuration entries align with new MDX file locations and IDs

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main objective of the PR: migrating courses documentation to the new documentation site.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/general/migrate-customizing-courses-documentation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
documentation/docs/student/courses.mdx (1)

1-5: Align doc title with top-level heading for consistency.

Frontmatter sets title: Courses while the content starts with # Customizing Courses. This will typically show “Courses” as the page title and then immediately another H1 “Customizing Courses”, which can feel redundant and inconsistent.

Consider either:

  • Renaming the frontmatter title to “Customizing Courses”, or
  • Keeping title: Courses and demoting the in-content heading to ## Customizing Courses.

Also applies to: 14-17

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6f99517 and 1062e6c.

⛔ Files ignored due to path filters (16)
  • docs/user/courses/customizable/buttons/course_settings_button.png is excluded by !**/*.png, !**/*.png
  • docs/user/courses/customizable/course_management.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_create.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_delete.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_edit.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_header.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_management.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_management_button.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_overview.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_overview_button.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/instructor/assets/courses/course_settings.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/student/assets/courses/course_header.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/student/assets/courses/course_overview.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/student/assets/courses/course_overview_button.png is excluded by !**/*.png, !**/*.png
  • documentation/docs/student/assets/courses/course_register.png is excluded by !**/*.png, !**/*.png
  • documentation/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (5)
  • docs/user/courses/customizable.rst (1 hunks)
  • documentation/docs/instructor/courses.mdx (1 hunks)
  • documentation/docs/student/courses.mdx (1 hunks)
  • documentation/sidebar-instructors.ts (1 hunks)
  • documentation/sidebar-students.ts (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (10)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: Build and Push Docker Image / Build linux/arm64 Docker Image for ls1intum/artemis
  • GitHub Check: Build and Push Docker Image / Build linux/amd64 Docker Image for ls1intum/artemis
  • GitHub Check: Build .war artifact
  • GitHub Check: client-style
  • GitHub Check: server-style
  • GitHub Check: client-tests
  • GitHub Check: server-tests
  • GitHub Check: Analyse
  • GitHub Check: Mend Security Check
🔇 Additional comments (4)
documentation/sidebar-instructors.ts (1)

9-9: Adding courses to the instructors sidebar aligns with the new doc id.

The new courses entry correctly matches the id: courses frontmatter in documentation/docs/instructor/courses.mdx, so the link should resolve as expected.

documentation/sidebar-students.ts (1)

10-10: Student sidebar courses item is consistent with the new doc id.

This entry lines up with id: courses in documentation/docs/student/courses.mdx, so navigation from the student sidebar to the courses page should work fine.

docs/user/courses/customizable.rst (2)

6-9: Verify and update the student docs URL (customizing-courses vs courses).

The note links to .../student/customizing-courses/, but the new MDX documentation uses the id courses and PR instructions reference /student/courses. This discrepancy will likely produce a broken link on the published docs.

Update the URL to match the actual route (likely /student/courses/) or configure a redirect/slug to preserve the old path.

Example diff if /student/courses/ is correct:

-    This section has moved to `new student documentation <https://ls1intum.github.io/Artemis/student/customizing-courses/>`_.
+    This section has moved to `new student documentation <https://ls1intum.github.io/Artemis/student/courses/>`_.

11-14: Verify instructor documentation URL path for correctness.

The note points to https://ls1intum.github.io/Artemis/instructor/customizing-courses/ but needs confirmation that this is the canonical path. If the instructor documentation uses /instructor/courses/ instead, the URL should be updated accordingly, or a redirect should be created to maintain the old path.

If /instructor/courses/ is the correct path, adjust to:

-    This section has moved to `new instructor documentation <https://ls1intum.github.io/Artemis/instructor/customizing-courses/>`_.
+    This section has moved to `new instructor documentation <https://ls1intum.github.io/Artemis/instructor/courses/>`_.

@github-project-automation github-project-automation bot moved this from Work In Progress to Ready For Review in Artemis Development Dec 4, 2025
@github-actions
Copy link

github-actions bot commented Dec 4, 2025

End-to-End (E2E) Test Results Summary

TestsPassed ☑️Skipped ⚠️Failed ❌️Time ⏱
End-to-End (E2E) Test Report218 ran213 passed3 skipped2 failed1h 13m 15s 436ms
TestResultTime ⏱
End-to-End (E2E) Test Report
e2e/exam/ExamDateVerification.spec.ts
ts.Exam date verification › Exam timing › Student can start after start Date❌ failure2m 4s 261ms
e2e/exercise/programming/ProgrammingExerciseParticipation.spec.ts
ts.Programming exercise participation › Programming exercise team participation › Check team participation › Instructor checks the participation❌ failure7s 488ms

Copy link

@LuisL02 LuisL02 left a comment

Choose a reason for hiding this comment

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

Tested the migrated docs locally. Docs work as intended and are easy to understand. However the formatting looks a bit off and could be improved for better readability.

image image image

Copy link

@kristi-balla kristi-balla left a comment

Choose a reason for hiding this comment

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

tested locally: LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Ready For Review

Development

Successfully merging this pull request may close these issues.

4 participants