UQ Social Timetable

Mobile App
  • Developed a mobile application for students to view their own timetable alongside their friends' timetables.
  • Published on the App Store and Google Play Store, reaching over 3000 users with 500 daily active users.
  • Designed a user-friendly interface to display timetable information and allow students to manage their schedule. Initially written in Swift and later translated to Flutter for cross-platform compatibility.
  • Leveraged Firebase's NoSQL cloud database to implement social networking features, enabling users to send, accept, and decline friend requests.
  • Enabled real-time messaging and timetable sharing by utilizing Firebase's cloud database.
  • Integrated OneSignal for push notifications for group chat messages and friend requests.

Maze Generation and Pathfinding Visualiser

Web App
  • Developed a web application to visualize maze generation and pathfinding algorithms.
  • Implemented maze generation algorithms such as Recursive Backtracking, Recursive Division, Prim's Algorithm, and Kruskal's Algorithm.
  • Implemented pathfinding algorithms such as Greedy-Best-First Search, A* Search, Breadth First Search, and Depth First Search.
  • Designed a user-friendly interface to allow users to select the size of the maze, the algorithm for maze generation, and the algorithm for pathfinding.
  • Utilized React and canvas graphics with p5.js to create the application.
React
JavaScript
GitHub
Web App

Sorting Algorithm Visualiser

Desktop App
  • Developed a desktop application to visualize sorting algorithms.
  • Implemented sorting algorithms such as Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort, and Heap Sort.
  • Designed a user-friendly interface allowing users to select the size of the array, the sorting algorithm, and the speed of the visualization.
  • Utilized Java Swing to build the application.

Nerual Network Solving XOR Visualised

Desktop App
  • Developed a neural network framework capable of handling an arbitrary number of layers and nodes.
  • Visualized the XOR problem using the neural network framework with SDL2 graphics.
  • The grayscale pixels represent the output values of the neural network, where black represents 0 and white represents 1.
  • For the XOR problem: an input of (0, 0) should output 0; (0, 1) and (1, 0) should output 1; and (1, 1) should output 0. Thus, the top-left and bottom-right corners are black, and the top-right and bottom-left corners are white in the visualization.

Snake Game

Desktop App
  • A simple window-based Snake game implemented in C using the SDL library.
  • The game features a snake that moves around the screen, eating food to grow.
  • The game ends when the snake collides with the walls or itself.
  • Written in C using the SDL library for graphics.