Skip to content
@CUMSA

CUMSA

Cambridge University Malaysia and Singapore Association

Cambridge University Malaysia and Singapore Association (CUMSA)

This is where CUMSA writes software!

Why Open Source?

As the database officer for the 2024-25 committee, I ran on a platform of security. As a society, we handle lots of sensitive data, and it's important that we do so responsibly. We also need our members to trust us with their data, which means being transparent about how we handle it.

In 2023-24, the committee revamped several membership administration systems. However, the code for these systems was never committed to a version control system, because API credentials were hardcoded. This made software engineering best practices like code review and continuous integration impossible. Our AWS resources were also being called directly from the frontend, which poses a security risk and increases our attack surface.

I worked on an API gateway to centralize access to APIs, with a long-term view of a microservices architecture. This is deployed on Vercel, allowing us to manage API credentials in a single place and configure policies such as CORS and rate limiting globally.

With hardcoded credentials removed, we can now work on GitHub (thanks Daniel for transferring ownership of this long-lost organization!). I'm a strong advocate for open source for several reasons:

  • Transparency: Members can see how their data is handled, and contribute to improving our systems if they wish.
  • Security: More eyes on the code means more eyes to spot vulnerabilities.
  • Sustainability: If I get hit by a bus, the next database officer can pick up where I left off.
  • Community: As a society, we are solving problems that are faced commonly by other societies. If we do a good job, hopefully others can benefit from our work.

Zeyu, Database Officer 2024-25

Pinned Loading

  1. api-gateway api-gateway Public

    API gateway for CUMSA services

    TypeScript

  2. membership-management membership-management Public

    Membership administration system

    JavaScript

  3. membership-signup membership-signup Public

    Membership signup form

    TypeScript

Repositories

Showing 10 of 10 repositories
  • membership-signup Public

    Membership signup form

    CUMSA/membership-signup’s past year of commit activity
    TypeScript 0 0 0 0 Updated Oct 2, 2024
  • .github Public
    CUMSA/.github’s past year of commit activity
    0 MIT 0 0 0 Updated Aug 3, 2024
  • membership-management Public

    Membership administration system

    CUMSA/membership-management’s past year of commit activity
    JavaScript 0 0 0 0 Updated Aug 2, 2024
  • api-gateway Public

    API gateway for CUMSA services

    CUMSA/api-gateway’s past year of commit activity
    TypeScript 0 MIT 0 0 0 Updated Aug 2, 2024
  • generator Public archive

    Chronicle Generator

    CUMSA/generator’s past year of commit activity
    JavaScript 0 2 0 0 Updated Mar 9, 2017
  • members Public archive

    Members Database and Event Registration

    CUMSA/members’s past year of commit activity
    PHP 1 1 0 0 Updated Oct 23, 2016
  • laravel-ucam-raven Public archive

    Laravel 5 package for University of Cambridge Raven integration (UCamWebauth)

    CUMSA/laravel-ucam-raven’s past year of commit activity
    PHP 0 0 0 0 Updated Apr 10, 2016
  • family Public archive

    python script for family allocation

    CUMSA/family’s past year of commit activity
    Python 0 0 0 0 Updated Mar 31, 2016
  • Laravel-Administrator Public archive Forked from FrozenNode/Laravel-Administrator

    An administrative interface package for Laravel

    CUMSA/Laravel-Administrator’s past year of commit activity
    PHP 0 MIT 511 0 0 Updated Mar 21, 2016
  • assassin Public archive

    CUMSA Assassin

    CUMSA/assassin’s past year of commit activity
    PHP 0 0 0 0 Updated Feb 13, 2016

Top languages

Loading…

Most used topics

Loading…