Sortify's games in the browser, for classrooms and devices without the app.
Sortify Web is the browser client of the Sortify educational platform. Built with React 19, TypeScript, and Vite, the application brings native iOS game logic into web browsers using an HTML5 Canvas rendering architecture and responsive controls. I established the web project foundation, built and secured the Firebase connection infrastructure, and maintained platform stability, security, and content moderation.
Sortify Web adopts a rendering architecture that decouples live game state from React UI state while porting native iOS game mechanics to the web. Operating over a requestAnimationFrame loop, mutable game state persists in refs while score, streak, and UI components are managed via React state, maintaining behavioral parity with the native Swift iOS client.
Key Highlights
- Web project foundation, architectural setup, and continuous moderation/maintenance.
- Native Swift game logic ported directly to TypeScript.
- Canvas-based game loop leveraging requestAnimationFrame and mutable ref state.
- Decoupled React UI layer from the real-time canvas game rendering loop.
- Responsive game interface supporting both touch and mouse control inputs.
- Firebase Auth and Cloud Firestore infrastructure integration and security.
React 19 · TypeScript · Vite · HTML5 Canvas · Firebase · Tailwind CSS