Skip to content

ls1intum/scorpio

Repository files navigation

Scorpio: A VSCode Extension for the Interactive Learning Platform Artemis

Scorpio is an IDE-integrated Visual Studio Code plugin for the online learning platform Artemis. The plugin seamlessly incorporates the entire programming exercise life cycle directly within the student's IDE. It enables the student to start the programming exercise, displays the instructions, offers the option to submit the exercise, and returns the submission results all within the IDE.

Installation

Requirements

If you have any requirements or dependencies, add a section describing those and how to install and configure them.

Features

Seamless Authentication

The plugin allows the student to authenticate to Artemis. The authentication includes two independent authentication options.

  1. the login process within the local IDE
  2. the automatic authentication of the student in the online IDE Theia Cloud without a redundant login process

Exercise Start

The student can start the exercise. The exercise can either be started in the student's IDE through the VSCode Extension or in the online IDE Theia Cloud through the Artemis website. The exercise repository is automatically cloned into the corresponding workspace.

Problem Statement

The plugin displays the problem statement within the IDE. The problem statement related to the exercise repository currently open in the student's workspace is displayed. The problem statement can be composed of text and UML diagrams

Exercise Submission

The plugin allows the students to submit the exercise directly within the IDE. The submission leads to the synchronization of the student's workspace and the exercise repository and triggers the automatic assessment of the student's submission.

Feedback Display

The plugin displays submission feedback within the IDE. The feedback can either be displayed inside the textual part of the problem statement or within the UML diagrams. This should enable the student to get instant submission feedback and aid the solving process.

Extension Settings

  • placeholder.enable: Enable/disable this placeholder.

Development

Release a new version

  1. Go to the GitHub Releases in the scorpio repository

  2. Click on Draft a new release

  3. Choose as a tag the new version number to release (e.g. tag version v1.5.0 releases the version 1.5.0)

  4. Let the release notes be auto-generated by clicking Generate release notes

  5. An admin now has to review and accept the new release

  6. After the release is approved, GitHub will automatically build and upload the artifact as well as publish the new version to the marketplace.

The latest plugin artifact is now available on GitHub and via the VS Code marketplace.

It might take some time for the latest version to be seen on the marketplace since VS Code still has to review and approve the changes!