RevoFun

Easy-to-play browser games

Revofun is a web-based casual game collection designed to provide quick, relatable mental breaks for office workers. The project features three distinct games—Anjing Meeting, Anjing Mikir, and Anjing Kabur—each inspired by common workplace stressors and designed with retro-style visuals to offer a nostalgic, stress-free user experience during coffee breaks or between meetings.

Preview Website

Project

Revou

Period

Aug 2025 – Sept 2025

About

Goals

The project aims to alleviate employee work stress by delivering short, fun, and easy-to-play browser games. Technically, the objective was to build a mobile-friendly, installation-free platform utilizing a modern tech stack while implementing diverse game mechanics, including rock-paper-scissors logic, number guessing with algorithmic hints, and time-pressured clicker interactions.

Process

I developed the platform using TypeScript and HTML5, utilizing Tailwind CSS for responsive styling. Development involved implementing core game logic, such as a random number generator with hints and collision detection for the clicker game. Webpack was used for bundling and optimization, ensuring smooth deployment and performance across different devices.

Output

The final deliverable is a live, mobile-friendly game portal featuring three fully functional interactive modules: an office-themed Rock-Paper-Scissors game, a Number Guessing game with difficulty levels (Junior/Senior), and a high-speed Clicker game. The system includes localized state management for scores and a difficulty selection interface tailored to user preference.

Tools

Programming Languages

: TypeScript (ESNext), JavaScript (ES6)


Styling

: Tailwind CSS, CSS3


Build Tools & Bundlers

: Webpack, Webpack-CLI, Webpack-Dev-Server, Ts-loader


Libraries

: Anime.js (for animations)


Deployment

: GitHub


Markup

: HTML5


Method

Object-Oriented Programming

: Implementation of classes for storyline management


Asynchronous Programming

: Use of setInterval and setTimeout for game timers and mechanics


DOM Event Handling

: Event listeners for user interactions, clicks, and mouse movements


Module Bundling

: Using Webpack for chunk splitting and asset resource management


State Management

: Localized score and level initialization logic


Functional Programming

: Use of Generators for sequential clue delivery