HackTheLab REST API
Author
Ryan Vreeke
Date Published

๐ Overview
The HackTheLab Hackathon REST API was created for a hackathon event where participants interacted with a RESTful API to navigate a rat through a maze, collect cheese, and find the exit. The project was divided into three main components:
โข ๐ฅ๏ธ Frontend: Built using React, HTML, CSS, and TypeScript for an intuitive user interface.
โข ๐๏ธ Backend: Developed with TypeScript, Node.js, and Express.js to handle API requests, authentication, and game logic.
โข ๐ฎ Simulation: Created using Unity to visualize the ratโs movement in the maze.
The hackathon was held at Michigan Software Labs as a learning experience for Computer Science students. I helped facilitate the event by explaining API interaction, guiding participants through the challenge, and ensuring an engaging and educational experience. It was exciting to plan, build, and host this event while learning alongside the participants.
๐ช Work I Did on the Project
โข ๐ Developed RESTful API Endpoints & Authentication
Designed and implemented API routes that allowed users to control the ratโs movement, collect cheese, and find the maze exit, while securing access through authentication.
โข ๐ Built the Backend Infrastructure
Developed controllers, middleware/interceptors, and services to support smooth API interactions and maintain structured backend architecture.
โข ๐ Managed Database & Game Logic
Implemented database management for storing game states, user progress, and session data, while also developing game logic for API endpoints to handle rat movement, cheese collection, and maze completion.
โข ๐ Created API Documentation with Swagger
Used Swagger to document API endpoints, making it easy for hackathon participants to understand how to interact with the backend.
โข ๐ Helped Organize & Administer the Hackathon Event
Facilitated the hackathon by assisting students, explaining competition rules, and troubleshooting technical issues, ensuring a successful and educational event.
๐ Technologies Used
Node.js | JavaScript runtime for server-side development
Express.js | Backend framework for handling API requests
TypeScript | Strongly typed JavaScript for scalable code
Docker | Containerization for easy deployment
Redis | In-memory database for fast data access
Postman | API testing and development tool
Swagger | API documentation for better usability
๐ป GitHub Repositories
Check out the source code for the project:
HackTheLab Backend Repository
HackTheLab Frontend Repository
HackTheLab Simulation Repository