Tejas
Computer Science student at Dalhousie obsessed with game engine development, graphics programming, and low-level systems. I work primarily in Java and C/C++, with OpenGL on the graphics side — building things that are fast, functional, and well-crafted.
I'm also into self-hosting — currently running Navidrome (Music Server) and Immich (Photo Server). #selfhosting

Last heard

Happy Hour: The Greatest Hits

Last played: T-Pain, B.o.B

Projects

RedBall Game Engine

View on GitHub

A 2D game engine built from scratch in Java, with a custom OpenGL renderer and GLSL shader pipeline behind it. Batch rendering draws every sprite on screen in a single draw call.

A Unity-inspired editor with hierarchy, viewport, inspector, asset browser, and console panels for full scene authoring and in-editor playback. Export pipeline in progress, bundling assets into a custom .pak format.

JavaOpenGLLWJGLDear ImGui

ForgeGL 3D Engine

View on GitHub

A 3D engine built in C++ with an ECS architecture powered by EnTT, keeping rendering, physics, and scene management cleanly separated. OpenGL handles rendering, with Assimp for model loading, textured meshes, and lighting.

A Dear ImGui editor with hierarchy, inspector, and scene view panels, runtime play/stop mode, and full scene persistence through JSON save/load. ReactPhysics3D handles rigid-body simulation directly within the ECS workflow.

C++OpenGLEnTTAssimpDear ImGuiReactPhysics3D

OurDrive

View on GitHub

Built the frontend for a personal cloud storage app with a clean file-management interface, chunked uploads with pause and resume support, and folder sharing.

Worked on interactive UI components that connected to a Java backend, and collaborated on the full-stack app with user authentication and shared folder access across accounts.

JavaScriptHTML/CSSJavaMySQLGit

Other Works

OurMusic

View on GitHub

A self-hosted music streaming platform with a Next.js frontend and a Java backend via Javalin, built for browsing, searching, and streaming a personal music library.

REST APIs backed by PostgreSQL handle music metadata, with HTTP range-based audio streaming for seekable playback, and async calls driving queue, playback control, and live updates.

React (Next.js)TypeScriptJavaPostgreSQLGit

Distributed File System

View on GitHub

A distributed file system in Java, using ServerSockets to coordinate communication across multiple storage servers.

Multi-node connectivity spreads files across independent hard disks, managed through a centralized file management interface.

JavaDistributed SystemsServerSockets

Custom Malloc Implementation

View on GitHub

A custom heap allocator written in C from scratch, using sbrk and metadata-linked blocks to track allocations and free space.

Supports block reuse, resizing with data preservation, and leak reporting, with CI/CD running automatically on every commit.

CCMakeAzure Pipelines

Global Game Jam 2026

View on GitHub

Ace Mask, a game built during the 48-hour Global Game Jam at Dalhousie University with a multidisciplinary team, turning a rough idea into a playable game from scratch.

Gameplay programming, debugging, and fast feature iteration under a hard 48-hour deadline, working closely alongside designers and artists.

UnityC#Git