Hi, I'm William πŸ‘‹
Computer & Software Engineer
WZ

About

I like fullstack development, data science, machine learning, large language models, taking naps, and programming in Rust πŸš€

If you have time, read my lore.

Skills

React
Next.js
Remix
Tanstack
SvelteKit
Typescript
Redux
Zustand
Zod
tRPC
TailwindCSS
ChakraUI
Bootstrap
Material-UI
Python
Node.js
Rust
Postgres
MongoDB
MySQL
SQLite
Redis
Firebase
GraphQL
REST
Express
FastAPI
Django
Flask
C++
numpy
pandas
scikit-learn
Tensorflow
PyTorch
mediapipe
LangChain
Haystack
Flutter
gRPC
Protobuf
Selenium
OpenCV
SageMath
Git
Docker
Kubernetes
AWS
Google Cloud
Azure
Oracle
Linux
CMake
My Projects

Check out my latest works

I've worked on a variety of projects, from simple web applications to complex dataset analysis with machine learning. Here lists all my favourite projects in chronological order

CapitalQuest

CapitalQuest

A financial literacy game that teaches users about morgages, leasing, investing, stocks, and more

React.js
Vite
react-three-fiber
drei
react-three-rapier
tailwindCSS
Flask
Twirl

Twirl

Text to world, in real life

React.js
Next.js
react-three-fiber
tailwindCSS
supabase
azure
FastAPI
LangChain
LangGraph
OpenSCAD
WebAssembly
Interview Monkeys

Interview Monkeys

A competitive platform for mock one-way interviews

React.js
Next.js
tailwindCSS
FastAPI
Tensorflow
OpenCV
mediapipe
Haystack Diet

Haystack Diet

A web application that uses machine learning to plan events given data and geolocation

Haystack
React.js
Next.js
react-three-fiber
tailwindCSS
FastAPI
Google Maps API
Chart.js
ShopIvy

ShopIvy

An e-commerce platform made for students

Next.js
Typescript
TailwindCSS
Shadcn UI
PostgreSQL
zod
zustand

Chesser

A heavily optimized online chess platform

Next.js
Typescript
TailwindCSS
Express.js
Stockfish
WebSocket

Ghost and Cakes 3D

A 3D web-based single and multiplayer game where you get chased after by "ghosts"

SvelteKit
TypeScript
TailwindCSS
Threlte (three.js)
simplex-noise
blender
rapier_rs
Rust
tokio-tungstenite
Flettext

Flettext

An extensive real-time instant messaging application designed to connect people from all over the world. Provided features include guilds, channels, etc. Talk with a group of friends, or just directly message friends.

SvelteKit
CockroachDB
tailwindCSS
Docker
Rust
actix-web
actix-ws
actix-session
sqlx
tokio
turbo-repo

"Capitalism" Discord Bot

A currency-based discord bot

dpp.dev
C++
CMake
Dockerfile
C++20 coroutines
deta

Rectilearn

Browser-based learning platform

React.js
Next.js
chakra-ui
Kaboom.js (kaplay)
FastAPI
PostgreSQL
sqlalchemy
Hackathons

I love building innovative projects

During my time in high school and university, I attended 9+ hackathons. In hackathons, people from around the world would come together and build incredible things in 2-3 days. It was eye-opening to see the endless possibilities brought to life by a group of motivated and passionate individuals.

  • G

    GeeseHacks πŸ†

    Waterloo, Ontario

    Built "CapitalQuest", a financial literacy game that teaches users about morgages, leasing, investing, stocks, and more. The game is built with react-three-fiber, drei, and react-three-rapier.
    Won 1st place in SunLife case prize
    Won top 5 overall

  • U

    UofTHacks πŸ†

    Toronto, Ontario

    Built "Twirl" - Text to world, in real life. Twirl is an AI Agent with a web app interface that generates a 3D CAD model from a simple instruction with an optional image attachment. The app supports follow-up prompts for refinement and a separate parameter menu for tweaking the model. Used React.js, Next.js, three.js, tailwindCSS, drei, supabase, Azure blob storage, Azure image API, FastAPI, LangChain, LangGraph, and OpenSCAD + WebAssembly. The core feature of the app also includes sending a .stl file to a 3D printer and instantly printing the model.
    Won 2nd place Overall
    Won Best Use of GenAI

  • D

    DeltaHacks

    Hamilton, Ontario

    Developed a networking platform that stores facial embeddings as 128-dimensional tensors for recognition. The platform involves "battles" which are matches with 2+ people, where the goal is to network with the most amount of people at the event by scanning their faces and answering questions about them, in which the responses are validated by LLMs. Unfortunately, @arihan10 did not manage to finish the frontend using Unity because he was busy rizzing up AMD.

  • H

    Hack Western

    London, Ontario

    Developed "Haystack Diet", a web application that uses machine learning to plan events given data and geolocation. The app also provides personalized meal recommendations based on the provided dietary preferences and restrictions. It also integrates a game involving serving mustangs built with react-three-fiber that users can play to train themselves in understanding dietary restrictions

  • H

    Hack The Valley (rigged)

    Scarborough, Ontario

    Made "Interview Monkey", a competitive platform for mock one-way interviews. The application makes interview prep more personalized, engaging, and interactive while simulating a competitive and realistic environment.

  • H

    Hack The North πŸ†

    Waterloo, Ontario

    Created a fun, engaging, and rewarding way for users to reduce their carbon footprint and make eco-friendly decisions.
    Won 1st place in RBC (Royal Bank of Canada) sponsor track

  • H

    Hack The 6ix πŸ†

    Toronto, Ontario

    Developed an Adobe Express Add-on to empower content creators, marketers, and businesses to streamline their social media workflow without compromising on quality or creativity.
    Won 3rd place Overall

  • W

    WaffleHacks πŸ†

    Virtual

    Built a chrome extension that can instantly recognize text for sources of non-inclusive or discriminatory language and replace it with more welcoming vocabulary using Cohere's LLM.
    Won Best Hack for Diversity & Inclusion
    Won Honourable Mention: Use of AI
    Won Honourable Mention: UI/UX

  • H

    HawkHacks

    Waterloo, Ontario

    Built a mobile productivity app that encourages users to achieve their goals from small deposits as a sense of motivation using React Native.

Contact

Get in Touch

Want to chat? You can shoot me an email at messenger@williamzeng.xyz and I'll try to respond as soon as possible.