Project Name: Anubis
In the following section you should only enter the information that you found on the project website. Some of the answers will be impossible to find, others may be very hard to find. Do not google for answers.
Project website: Website
What is the purpose of the project:
Anubis is a Learning Management System that allows courses to provide consistent and customizable development environment for students. And completely automate the learning process. It is especially catered for the need of a CS course, with a built-in coding editor, linux environment to compile assignment on demand, code similarity detection, and other features that are included in traditional LMS like brightspace or canvas.
How easy was it to find information about contributing on the website?
We did see it on the website, but the link was broken. We were able to find the actual guide under their github repo here
Contributing instructions: here There is also a installation guideline here.
URL for the code repository: here
Bug/Issue tracker link: Bug/Issue tracker
Mailing list: We were not able to find one.
Chat channel: Discord but link to discord broken.
Other communication channels: Discord DM.
License: License
Is it OSI approved Yes. license: The MIT Lcense
Programming Language(s): Python, JavaScript,
URL for contributing instructions: Contributing instructions
Are the contributing instructions clear? Relatively clear. The commit style and coding conventions required are clearly listed. Pull requests insturction are also listed.
URL for code of conduct / community norms / community guildelines: We were not able to find one.
URL for instructions for users to download and install the package: Adoption guide is listed on the website, but the link is broken. It also asks potential users to reach out.
Are these instructions clear? Do you think they would be easy to follow? No.
URL for instructions for how to install development environment: here
Are these instruction clear? Do you think they would be easy to follow? Yes. It is step by step and very clear.
Number of contributors: 27 contributors
Usernames of three contributors with largest number of commits; for each of them list the link to their latest commit:
- [wabscale] (1374 commits) - Their Latest Commit
- [synoet] (66 commits) - Their Latest Commit
- [PIG208] (46 commits) - Their Latest Commit
Number of commits: 1591 commits
Latest commit
-
link to the commit: Latest commit
-
who made that commit: wabscale
-
what type of work was commited? For UI enhancement.
Issues
-
how many open issues are there: 65 Open Issues
-
url for the last issue created: Last issue created
-
how many users discuss the issue: 2 person
-
when was the issue reported: February 17th, 2024
-
-
how many closed issues are there: 157 closed issues
- url for the last issue closed: Last issue closed
- how many users discussed the issue: 2 people
- when was the issue reported: February 17th, 2024
- when was the issue closed: February 19th, 2024
-
how active is the discussion on the issues: Earlier feature-based issue were very actively discussed. However, the more recent bug fix issues were not actively discussed.
-
example of a lot of good discussion: Good discussion
-
example of an issue that does not have much discussion: Not much discussion
-
-
are there issues marked "good for newbies", "beginner" or some other indicators that imply that they are good for beginner contributors: Yes.
-
how many of such issues are there? 43 issues (7 open issues but from a long time ago)
-
look at a few of them, do they look beginner friendly? Yes. Mostly UI related work.
-
-
are there issues marked "documentation" or some other indicators that imply that they are documentation (user or developer specific): Yes
-
how many of such issues are there? 7 issues (3 open issues)
-
look at a few of them, do you think you could submit a fix? Yes, but they are frmo a long time ago so we will need to clarify if it has been addressed already.
-
Pull requests
-
how many open pull requests are there: 249 pull requests
-
url for the last pull request created: Last Pull Request created
-
when was the last pull request made: Feb 19, 2024
-
url for the oldest pull request created: Oldest Pull Request created
-
when was the oldest pull request made: Jan 9, 2020
-
-
how many closed pull requests are there: 249
-
url for the last pull request closed: Last Pull Request closed
-
how many users discussed the pull request: 1 users
-
when was the pull request made: Feb 19, 2024
-
when was the pull request closed: Feb 19, 2024
-
-
do maintainers respond quickly to pull requests when they are opened? Yes, they just merged and close that pr in the same day when the pr was made
Each member of your group should attempt to configure the development environment for this project. Complete the following for each member:
Name: Jack Chen
Operating system: MacOS
Was the installation successful? (if not, explain what went wrong and what you did to try to remedy it) Yes (mindebug environment). I cannot configure the full debug environment as I don't have access to a linux environment.
How long did the whole process take? 10 minutes.
Name: Ruiming Shen
Operating system: Windows
Was the installation successful? (if not, explain what went wrong and what you did to try to remedy it) Yes(mindebug environment). Using WSL to run this and got successed.
How long did the whole process take? About 15 minutes.
Name: Leo Wang
Operating system: MacOS
Was the installation successful? (if not, explain what went wrong and what you did to try to remedy it) Only mindebug environment is available, because the other two debug and mkdebug environment requires Linux environment.
How long did the whole process take? About 10 minutes.
How friendly is this project for beginner contributors?
I would say decently friendly. While the project itself is very big and the architecture is pretty complicated, components like UI and API are essentially simple web apps that would be seen in a web development setting. As long as contributors have flask/react experience, there are issues to be picked up. Additionally, because not a lot of people are contributing, new contributors have a lot of freedom on the type of issues they would like to work on.
Do the maintainers respond helpfully to questions in issues?
Yes, the main contributor (Wabscale) especially provides a lot of guidance on issues.
Are people friendly in the issues, discussion forum, and chat (for example, IRC or Slack)?
For the most part, yes. Maintainer provides very helpful comments on issues. It is also the same way in discord, although the server itself is not as active as before.
Do pull requests get reviewed?
Yes, as demonstrated by the most pull request.
Do maintainers thank people for their contributions?
Not from what we have seen.
Are there special skills required to contribute to the project? If so, what are they?
For certain part of the project, some understanding in containers and kubernetes knowledge is probably needed.
Are there any special hardware/software requirements to be able to contribute to the project? If so, what are they?
The minimum development (web UI and API) does not require special environments. However, full feature development environment requires a linux environment with Docker installed is required, as prod is running in linux environment.