← All projects

WakaTime Alarm

In progress

React Native NFC alarm app that ties physical tags to coding-time goals and WakaTime stats.

Role
Solo build (React Native app, NFC hardware, WakaTime API, iOS + Android store pipelines)
Timeframe
Jun 2026 to present
iOS · Android
Platforms
NFC tags
Trigger
WakaTime API
Data source
App Store · Play Store
Distribution

Objective

Build a cross-platform mobile alarm that uses NFC tags as physical triggers, syncs with WakaTime for real coding-time context, and ships to both the App Store and Google Play as a polished consumer app.

Outcome

A React Native app in active development: NFC read/write flows for arming and dismissing alarms, WakaTime API integration for daily/weekly coding stats, local notifications with snooze and repeat rules, and store-ready builds for iOS and Android. Proves mobile hardware integration, third-party API auth, and dual-platform release discipline.

A look inside

Home: today's WakaTime summary and next alarm state (placeholder).
NFC: scan-to-arm flow with tag registration (placeholder).
Alarms: schedule, repeat rules, and WakaTime-linked thresholds (placeholder).
Settings: WakaTime OAuth/API key and notification preferences (placeholder).

How it works

01

NFC arm / dismiss flow

Tap an NFC tag to arm or dismiss alarms. Tags are registered in-app so each physical sticker maps to a routine (wake, focus block, end-of-day).

02

WakaTime-aware scheduling

Pull daily and weekly coding totals from the WakaTime API so alarm thresholds and reminders reflect actual dev time, not just clock time.

03

Cross-platform React Native

One TypeScript codebase with platform-specific NFC and notification handling. Shared UI, navigation, and API layer; native modules where required.

04

Store release pipeline

iOS provisioning, Android signing, and Play Console / App Store Connect metadata scaffolded for TestFlight and internal testing tracks.

What it is

WakaTime Alarm is a React Native mobile app that combines NFC hardware with WakaTime coding analytics. Physical NFC tags act as alarm triggers; the app layers WakaTime stats so reminders and goals are grounded in how much you actually coded, not just what time it is on the clock.

How it works

  • Register tags. Pair NFC stickers in-app; each tag gets a label and action (arm alarm, dismiss, toggle focus mode).
  • Connect WakaTime. OAuth or API key flow pulls heartbeats, languages, and daily totals into the home dashboard.
  • Schedule alarms. Local notifications with repeat rules; optional WakaTime-linked conditions (e.g. nudge when below a daily hour target).
  • Ship. Separate iOS and Android build profiles, store listings, and privacy-policy pages for App Store and Play Store submission.

Status

WIP. Core navigation, NFC scan UI, and WakaTime API client are scaffolded. Next: end-to-end NFC write on device, notification reliability on both OSes, and first TestFlight / internal testing upload.

Replace SVG placeholders with device screenshots once builds run on hardware. Add repo and liveUrl (store links) to frontmatter when published.

Skills used

TypeScript React Native NFC / Mobile Hardware REST API Integration Firebase

Tech stack

React Native TypeScript Expo (NFC module) WakaTime API iOS (App Store) Android (Google Play) Push notifications