OSS Projects at NUS SoC

NUS-OSS is an initiative to help interested NUS SoC students become OSS developers.
Projects under the NUS-OSS initiative have benefited more than a million users.


We have a number of OSS projects that are especially suitable for NUS students to level-up their SE within the context of OSS projects.

Project(s) KLoC Languages Description
CATcher 10 TypeScript, Angular, Electron A Desktop App for anonymous peer testing of software products. ( product website, project website). Mentor: Dr. Damith
MarkBind 10 Node.js, HTML, JavaScript, CSS, Vue A tool for generating educational websites from Markdown syntax. ( product website, project website). Mentor: Dr. Damith
PowerPointLabs 60 C# A productivity plugin for Microsoft Powerpoint estimated to have benefited more than 1,000,000 people ( product website, project website). Mentor: Dr. Damith
RepoSense 10 Java, Javascript, HTML, CSS, Vue A tool to monitor contributions to multiple Git repositories. ( product website, project website). Mentor: Dr. Damith
SSID 70 Ruby, Rails, Java, JavaScript Web application for source code plagiarism checking, streamlined for instructor and TA use. A simpler alternative to Stanford's MOSS. ( project website). Mentor: Dr. KAN Min-Yen
SE-EDU 1-10 Java, Jekyll A collection of sample projects and other resources for SE students and teachers ( website). Mentor: Dr. Damith
TEAMMATES 125 Java EE, Angular, Javascript, HTML, CSS, Google Cloud An online feedback management system for education used by more than 750,000 users ( product website, project website). Mentor: Dr. Damith


Doing work outside modules will set you apart from those who are only good in academic work and will increase your chances of getting,

  • paid internships in our OSS projects (more info below)
  • good internship offers from other companies for SIP/ATAP
  • entry to selection-based modules such as CS3281&2, CS3216, CS3217
  • tutorships in related modules

How to get started

Each of the projects have their own documentation on how to get started.

If you have limited experience outside project in school modules, you can start with a smaller project such as those in SE-EDU and move to bigger projects after a while.

Vacations are especially good times to get started on our projects as our projects are more active during those times. We even have dedicated working space in school for those working on our projects during vacation times.

Earning modular credit

There are several ways to earn modular credit for OSS work

Some of the interns from 2017 summer batch

For NUS students, it is possible to get paid for work done in these projects.

  • Part time internships : Pay depends on the amount of work, at normal NSWS scheme
  • Full time internships : $1000-1500 per month. These internships are eligible for SIP and ATAP credit.
  • Google Summer of Code: Our projects have taken part in GSoC 2014 (4 internships), 2015 (6 internships), 2016 (7 internships) 2017 (9 internships), 2018 (5 internships).

Before you apply

Before you apply, ensure that you match both our expectations given below.

  • Due to the nature of our projects, we prefer to select interns who can remain involved with the project (on a lightweight basis, possibly paid as part time work) even after the internship is over, and help with running the project e.g., mentoring new contributors, review PRs, etc. These projects are currently run by such alumni and that is the only way we can sustain these projects.
  • We prefer to recruit students who are interested in our projects for the right reasons (e.g., as an opportunity to improve SE skills, make an impact to many users, or due to genuine interest in the product or the technologies being used etc.) rather than those looking at it purely as an opportunity to earn some money.

How to apply:

  • SIP/ATAP internships (NUS students): Apply via the school's internship application system.
  • Other full time internships: contact project mentor prof Damith (contact given below)
  • Part time work: After you have contributed a few PRs to any of the projects above, contact project mentor prof Damith (contact given below) to explore possibilities for paid internships.


If you have questions, please contact project mentor Dr Damith or write to nus-ossatcomp.nus.edu.sg.