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 8000 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 visualise 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.
Neural Network Visualiser
Desktop App
-
Built from scratch in C++ - complete neural network with custom matrix operations, backpropagation, and gradient descent (no ML libraries)
-
Solves the legendary XOR problem that stumped early AI researchers, demonstrating non-linear pattern learning through hidden layers
-
Real-time SDL2 visualisation shows decision boundaries evolving as the network trains, making AI learning visually intuitive
-
Features three classic machine learning problems: XOR logic gates, circle boundary classification, and spiral separation with configurable network architectures
-
Live training metrics display current epoch count, error rates, and learning improvement to track neural network convergence in real-time
Sorting Algorithm Visualiser
Desktop App
-
Developed a desktop application to visualise 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 visualisation.
-
Utilized Java Swing to build the application.
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.