Skip to content

Commit

Permalink
Merge branch 'develop' into chore/restructure-tests
Browse files Browse the repository at this point in the history
  • Loading branch information
MaximilianAnzinger committed Sep 28, 2024
2 parents f861722 + 8cfa013 commit a4d4947
Show file tree
Hide file tree
Showing 119 changed files with 3,144 additions and 1,334 deletions.
13 changes: 0 additions & 13 deletions .idea/runConfigurations/Artemis__Server__Aeolus_.xml

This file was deleted.

13 changes: 0 additions & 13 deletions .idea/runConfigurations/Artemis__Server__GitLabCI___Gitlab_.xml

This file was deleted.

13 changes: 0 additions & 13 deletions .idea/runConfigurations/Artemis__Server__Jenkins___Gitlab_.xml

This file was deleted.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

This file was deleted.

65 changes: 43 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,17 @@

Artemis brings interactive learning to life with instant, individual feedback on programming exercises, quizzes, modeling tasks, and more. Offering customization for instructors and real-time collaboration for students, this platform bridges creativity and education. Embrace a new era of engaging, adaptive learning and artificial intelligence support with Artemis, where innovation meets inclusivity. Find out more on https://artemisapp.github.io

## Main goals

1. **User experience**: Provide an intuitive and engaging interface that enhances the learning experience for both students and instructors. Ensure ease of use across diverse learning scenarios, fostering seamless interaction and accessibility.

2. **Scalable infrastructure**: Build a robust platform capable of supporting large-scale courses with thousands of participants simultaneously. Ensure high availability, performance, and adaptability as the platform grows in functionality and user base.

3. **Constructive alignment**: Align learning goals, activities, and assessments through well-integrated features such as the exam mode that support instructional design principles. Enable the seamless implementation of interactive learning methodologies, ensuring that every feature contributes meaningfully to learning goals.

4. **Learning analytics**: Leverage data to provide actionable insights into student performance and engagement. Offer detailed feedback to both learners and instructors, enhancing personalized learning experiences and supporting data-driven decisions for educational improvement while ensuring data privacy and security.


## Main features and modules

1. **[Exercises](https://docs.artemis.cit.tum.de/user/exercises)** with automatic and manual assessment. Instructors have many configuration options.
Expand Down Expand Up @@ -83,7 +94,7 @@ The Artemis development team prioritizes the following areas in the future. We w
* **Long term**: Allow students to take notes on lecture slides and support the automatic updates of lecture slides
* **Long term**: Develop an exchange platform for exercises

## Contributing to This Project
## Contributing

We welcome contributions from both members of our organization and external contributors. To maintain transparency and trust:

Expand All @@ -96,28 +107,38 @@ We follow a pull request contribution model. For detailed guidelines, please ref

#### Maintainers


The following members of the project management team are responsible for specific feature areas in Artemis. Contact them if you have questions or if you want to develop new features in this area.

| # | Feature / Module | Responsible maintainer |
|----|-----------------------|------------------------------------------------------------------------------------|
| 0 | Core | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 1 | Exercises | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 2 | Programming exercises | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 3 | Build agents | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 4 | Quiz exercises | Felix Dietrich ([@FelixTJDietrich](https://github.com/FelixTJDietrich)) |
| 5 | Modeling exercises | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 6 | Text exercises | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| 7 | File upload exercises | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| 8 | Exam mode | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 9 | Assessment | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| 10 | Communication | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| 11 | Lectures | Maximilian Anzinger ([@maximiliananzinger](https://github.com/maximiliananzinger)) |
| 12 | Atlas | Maximilian Anzinger ([@maximiliananzinger](https://github.com/maximiliananzinger)) |
| 13 | Iris | Patrick Bassner ([@bassner](https://github.com/bassner)) |
| 13 | Athena | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| 15 | Tutorial Groups | Felix Dietrich ([@FelixTJDietrich](https://github.com/FelixTJDietrich)) |
| 16 | Plagiarism checks | Markus Paulsen ([@MarkusPaulsen](https://github.com/MarkusPaulsen)) |
| 17 | LTI | Matthias Linhuber ([@mtze](https://github.com/mtze)) |

| Goal | Responsible maintainer |
|-------------------------|------------------------------------------------------------------------------------|
| User experience | Ramona Beinstingel ([@rabeatwork](https://github.com/rabeatwork)) |
| Scalable infrastructure | Matthias Linhuber ([@mtze](https://github.com/mtze)) |
| Constructive alignment | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| Learning analytics | Maximilian Anzinger ([@maximiliananzinger](https://github.com/maximiliananzinger)) |

| Feature / Module | Responsible maintainer |
|-----------------------|------------------------------------------------------------------------------------|
| Exercises | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| Programming exercises | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| Build agents | Robert Jandow ([@robertjndw](https://github.com/robertjndw)) |
| Quiz exercises | Felix Dietrich ([@FelixTJDietrich](https://github.com/FelixTJDietrich)) |
| Modeling exercises | Felix Dietrich ([@FelixTJDietrich](https://github.com/FelixTJDietrich)) |
| Text exercises | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| File upload exercises | Elisabeth Friesinger ([@easy-lisi](https://github.com/easy-lisi)) |
| Exam mode | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| Assessment | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| Communication | Stephan Krusche ([@krusche](https://github.com/krusche)) |
| Lectures | Patrick Bassner ([@bassner](https://github.com/bassner)) |
| Atlas | Maximilian Anzinger ([@maximiliananzinger](https://github.com/maximiliananzinger)) |
| Iris | Patrick Bassner ([@bassner](https://github.com/bassner)) |
| Athena | Maximilian Sölch ([@maximiliansoelch](https://github.com/maximiliansoelch)) |
| Tutorial Groups | Ramona Beinstingel ([@rabeatwork](https://github.com/rabeatwork)) |
| Plagiarism checks | Markus Paulsen ([@MarkusPaulsen](https://github.com/MarkusPaulsen)) |
| LTI | Maximilian Anzinger ([@maximiliananzinger](https://github.com/maximiliananzinger)) |



## Setup and guidelines

Expand Down Expand Up @@ -172,7 +193,7 @@ Refer to [Using JHipster in production](http://www.jhipster.tech/production) for
The following command can automate the deployment to a server. The example shows the deployment to the main Artemis test server (which runs a virtual machine):

```shell
./artemis-server-cli deploy [email protected] -w build/libs/Artemis-7.5.4.war
./artemis-server-cli deploy [email protected] -w build/libs/Artemis-7.5.5.war
```

## Architecture
Expand Down
14 changes: 7 additions & 7 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ plugins {
}

group = "de.tum.cit.aet.artemis"
version = "7.5.4"
version = "7.5.5"
description = "Interactive Learning with Individual Feedback"

java {
Expand Down Expand Up @@ -290,7 +290,7 @@ dependencies {
implementation "org.apache.sshd:sshd-sftp:${sshd_version}"

// https://mvnrepository.com/artifact/net.sourceforge.plantuml/plantuml
implementation "net.sourceforge.plantuml:plantuml:1.2024.5"
implementation "net.sourceforge.plantuml:plantuml:1.2024.7"
implementation "org.jasypt:jasypt:1.9.3"
implementation "me.xdrop:fuzzywuzzy:1.4.0"
implementation("org.yaml:snakeyaml") {
Expand Down Expand Up @@ -368,7 +368,7 @@ dependencies {
implementation "javax.cache:cache-api:1.1.1"
implementation "org.hibernate.orm:hibernate-core:${hibernate_version}"

implementation "com.zaxxer:HikariCP:5.1.0"
implementation "com.zaxxer:HikariCP:6.0.0"

implementation "org.apache.commons:commons-text:1.12.0"
implementation "org.apache.commons:commons-math3:3.6.1"
Expand Down Expand Up @@ -447,7 +447,7 @@ dependencies {
implementation "org.apache.maven:maven-model:3.9.9"
// NOTE: 3.0.2 is broken for splitting lecture specific PDFs
implementation "org.apache.pdfbox:pdfbox:3.0.1"
implementation "org.apache.commons:commons-csv:1.11.0"
implementation "org.apache.commons:commons-csv:1.12.0"
implementation "org.commonmark:commonmark:0.23.0"
implementation "commons-fileupload:commons-fileupload:1.5"
implementation "net.lingala.zip4j:zip4j:2.11.5"
Expand All @@ -457,7 +457,7 @@ dependencies {
implementation "org.apfloat:apfloat:1.14.0"

// use newest version of guava to avoid security issues through outdated dependencies
implementation "com.google.guava:guava:33.3.0-jre"
implementation "com.google.guava:guava:33.3.1-jre"
implementation "com.sun.activation:jakarta.activation:2.0.1"

// use newest version of gson to avoid security issues through outdated dependencies
Expand Down Expand Up @@ -531,7 +531,7 @@ dependencies {
testImplementation "io.github.classgraph:classgraph:4.8.176"
testImplementation "org.awaitility:awaitility:4.2.2"
testImplementation "org.apache.maven.shared:maven-invoker:3.3.0"
testImplementation "org.gradle:gradle-tooling-api:8.10.1"
testImplementation "org.gradle:gradle-tooling-api:8.10.2"
testImplementation "org.apache.maven.surefire:surefire-report-parser:3.5.0"
testImplementation "com.opencsv:opencsv:5.9"
testImplementation("io.zonky.test:embedded-database-spring-test:2.5.1") {
Expand Down Expand Up @@ -613,7 +613,7 @@ tasks.withType(Test).configureEach {
}

wrapper {
gradleVersion = "8.10.1"
gradleVersion = "8.10.2"
}

tasks.register("stage") {
Expand Down
Loading

0 comments on commit a4d4947

Please sign in to comment.