List of projects

List of projects

Application

Computing Performance Task 2018

Status: done

A Python program (made by me along with a peer for the purposes of a performance task that required us to work in pairs or groups to create a new program that would achieve a specific task) that allows the user to group a list of students imported from an Excel spreadsheet or a CSV (comma-separated value) file into groups, which can be exported as an Excel spreadsheet/CSV file.

This program is ideally meant to be run with Python v3.7.3 or higher. For more info about the project and on how to start it, check out the README file located at the root of the source code.

Application

StudyBuddy for Android

Status: in development

An app that helps you keep track of your tasks and events, as well as the ability to chat with your peers and a usage manager that indicates how long you’ve spent your time on your phone. This is the Android version.

The app uses the following products:

  • Firebase
    • Firebase Authentication - User authentication
    • Firebase Crashlytics - To handle crashes
    • Firebase Cloud Messaging - Message users
    • Firebase Firestore - Store data
  • AndroidX Libraries
  • Material Components for Android

This app was based on an idea by the student counsellor of my school.

Application

StudyBuddy for web

Status: in development

An app that helps you keep track of your tasks and events, as well as the ability to chat with your peers. This is the web version.

The app uses the following products:

  • Firebase
    • Firebase Authentication - User authentication
    • Firebase Firestore - Store data
    • Firebase Hosting - Hosting the web version
  • Angular v8
    • Angular Material
  • HTML + CSS + TypeScript (which is compiled to JavaScript by the Angular CLI)

This app was based on an idea by the student counsellor of my school.

Application

RSS Reader

Status: in development

An Angular app based on an example Angular app by BeCompany GmbH and updated to the latest version of Angular.

The app also includes features such as the ability for the user to specify a feed to be read into the RSS feed, as well as retrieving the headlines of a country and a refreshed interface. (The original app only had a list of cards which could be clicked on.)

Unfortunately, work on the app has been temporarily ceased due to other projects and the lack of time. (EDIT - Work on the app has recently resumed with new features such as a release notes page, among bug fixes.)

Library

ngx-ytd-api

Status: in development

An unofficial Angular library wrapper of the YouTube Data v3 API.

The wrapper currently supports the following APIs:

  • Comment threads/Comments (list/add/delete/edit comment threads/comments)
  • Search (search for videos and/or channels and/or playlists)
  • Videos (check if the specified video has been liked, list video’s details)

This library uses the following libraries:

Library

ngx-simple-http

Status: in development

An Angular wrapper of the HttpClient class provided by @angular/common/http, but simplified to a few easy to understand methods. Also internally used by the ngx-ytd-api library.

For more info about HttpClient, view the docs.

Note: Development for this Angular library may soon be stopped in favour of a better Angular library such as ngx-api-utils.

Application, Game

SCCLGame

Status: archived

An educational game made for the Singapore Chinese Centre of Learning Competition in 2017-2018 with two peers - Teo Wei Hao and Aakash Sanjay Mehta.

The app’s purpose was to aid children in primary schools in their Chinese studies and was supported on Android and iOS.

The project was submitted in late 2017 with a video showing how to play the game and a certificate of participation was awarded in late 2018.

The source code of the two apps was archived on 23 Aug 2018. Development of the apps has been ceased.

Website

Edric's website

Status: in development

This project is essentially the website you’re looking at right now.

The website uses the following technologies:

This website is the 2nd iteration of the original website which used the following frameworks:

GitHub Action

Build and deploy to GitHub Pages (GitHub Action)

Status: in development

As what the project name indicates, this is a GitHub Action with the intention of building and deploying a Jekyll site to GitHub Pages. (Note - this was specifically created to workaround the problems of GitHub not supporting specific plugins in GitHub Pages by manually building the Jekyll site instead of being automatically built by GitHub Pages.)

This project was heavily inspired by previous GitHub Actions which would perform a similar task but were outdated. My project also allows for additional options to be specified such as the ability to invoke the --force flag when pushing the built site to GitHub Pages, which would override any old changes for the branch, as well as supporting user pages that only allow deployment via the master branch or the docs folder.

The project is currently at version 2.2.1. The former version (version 1) is no longer supported as GitHub Actions no longer support the former HCL workflow syntax.

For more info about the project, check out the source code or the GitHub Marketplace listing for the Action.

An update is available!