RianTosm
All projects

Mobile · 2022

Tracking App

A mobile app for tracking users' real-time location on a map and sending broadcast messages to a group in seconds.

tracking-app.tosm.my.id

Overview

What it is, and why it exists

Tracking App is a React Native mobile app I built to track a group of users' live location on a map and broadcast messages to all of them at once. It reads and writes location updates through Firebase Realtime Database so a tracked user's position updates on the map as it changes, without a manual refresh.

My Role

Mobile developer — React Native app for real-time location tracking, broadcast messaging, and user management, backed by Firebase Realtime Database.

Problem

The problem

A team needed a way to see where its members currently are on a map and reach all of them with a message at once, instead of coordinating location and announcements manually over calls or chat.

Solution

The solution

I built an Android app that streams each tracked user's location to a live map via Firebase Realtime Database, keeps a movement history per user, and lets an authorized user send a broadcast message to the whole group in one action.

Key Features

What it does

  • Real-time location tracking on a map, per user
  • Movement history log per tracked user
  • User management with detailed profile info
  • Broadcast messaging to multiple users at once
  • Instant notifications for location updates and new messages
  • Encrypted data, accessible only to authorized users

Tech Stack

Built with

Technology choices made to fit the product's real constraints, not novelty.

React NativeTypeScriptFirebase Realtime DatabaseGoogle Maps SDK
Architecture

System architecture

React Native (Android)
Firebase Realtime Database
Google Maps SDK
Push Notifications

Challenges

Challenges & solutions

Live location updates without draining battery or data

Streaming every tracked user's position needed to feel live on the map without hammering the device's battery or data plan. Location writes to Firebase Realtime Database on a throttled interval, and the map screen subscribes only to the users currently being viewed, so it re-renders only when a watched user's position actually changes.

Gallery

A closer look

User list & broadcast menu

Live location tracking

Result

Outcome

  • Ships as an Android app for tracking a group's live location and broadcasting messages to all of them in seconds
  • Location updates and broadcasts sync in real time through Firebase, with no manual refresh needed on either end