Loading...
← Back to all apps
iPhone + iPad project

Attendize

Attendance, with momentum.

Attendize turns attendance into momentum. Students log Present, Late, or Absent for each class, see exactly how many classes they can still safely miss, forecast their end-of-term percentage, and earn XP, ranks, streaks, and badges along the way.

Work with me
iPhoneiPad App Store submission ready
React NativeExpo (SDK 53)TypeScriptExpo RouterZustandNativeWindReanimated 3react-native-svgFirebaseEAS Build
Today screen Attendize — the Today screen
Role
Designed & built end-to-end, solo
Platforms
iPhone + iPad
Year
2026
Status
Under
The idea

Attendance you
actually want to open

Most students track attendance in their head or a half-kept spreadsheet, usually until it is too late to fix. Attendize makes the daily check-in a two-second habit, then turns that data into something motivating: a clear read on how much room you have left, an honest forecast of where you will land, and a game worth keeping a streak in.

Signature features

Glance, act,
understand

The whole app is organized around a student's loop. Four pieces carry it.

Dashboard — Momentum Ring Dashboard — Momentum Ring

The Momentum Ring

The dashboard hero. One glanceable ring combines XP progress, current academic rank, and your active streak, so opening the app immediately tells you where you stand.

Class Detail — Buffer Gauge Class Detail — Buffer Gauge

The Buffer

The number students actually want: exactly how many classes you can still miss before you drop below your required percentage, computed live as you check in.

Forecast — projection + what-if Forecast — projection + what-if

End-of-term Forecast

Projects your final attendance from your current trend, runs what-if scenarios, and flags at-risk classes with confidence bands so there are no surprises at finals.

Trophy Case — ranks + badges Trophy Case — ranks + badges

Gamification

Academic ranks from Freshman to Valedictorian, daily streaks, and a twelve-badge trophy case, with a guided first-run checklist to get a new student set up fast.

Also in the app

The rest of the kit

Fast check-in

One tap for Present, Late, or Absent, with instant XP, a streak bump, and a small celebratory burst the moment you log it.

Insights

Weekday and time-of-day patterns, a consistency heatmap, and your punctuality records, so habits become visible.

Privacy by design

Attendance data stays on the device, with full account and data deletion built in from the start.

Design

A full design
system, from scratch

Light and dark, tokenized end to end, with two brand objects doing the heavy lifting.

Spruce
#2F5247
Honey gold
#E0A53D
Deep spruce
#1F3A31
Cream
#F6EFDE
Ink
#16201C

Tokenized, light + dark

A full system on OKLCH color tokens, a 4-point spacing scale, a type scale, radii, elevation, and motion curves, themed end to end.

Typography

Fraunces, a display serif, carries the hero numerals and rank names; Outfit handles the UI text.

A bespoke icon family

A cohesive set of 33 glyphs, all drawn on a single 24px grid for a consistent weight and rhythm.

An academic companion

A calm identity in deep spruce green and honey gold, with tactile depth from gradients, soft shadows, grain, and glass.

Two signature components

Momentum Ring Momentum Ring

Momentum Ring

A single hero object that folds XP progress, current rank, and streak into one ring.

Buffer Gauge Buffer Gauge

Buffer Gauge

A 270° gauge showing, at a glance, how many classes you can still miss before dropping below target.

Under the hood

The engineering

One typed codebase, two derived engines, and a responsive system that treats the iPad as a first-class layout.

Cross-platform foundation

React Native and Expo (SDK 53), fully typed in TypeScript, with file-based Expo Router navigation, a custom tab bar, and a center Check-In button.

A real iPad layout

A custom responsive system that becomes a sidebar with multi-column content on tablet and bottom tabs on phone, rather than a stretched-up phone screen.

From-scratch iOS UI kit

Sheets, segmented controls, steppers, sliders, and toggles built by hand, plus bespoke SVG data-viz, with no heavy third-party UI library.

Custom graphics & motion

react-native-svg and Reanimated 3 drive the Momentum Ring, Buffer Gauge, sparkline, forecast chart, and celebrations, all built to respect reduced motion.

State & engines

Zustand stores persisted with AsyncStorage feed a gamification engine and a forecasting engine that both derive from one attendance record store, so there is no schema migration.

Auth & platform

Firebase with email, Google, and Apple sign-in, a guest demo mode, account deletion, local notifications, and location-based reminders.

Release engineering

An EAS Build and Submit pipeline, a branded icon and splash, a hosted privacy policy and landing page on GitHub Pages, the App Store listing, and a dedicated demo login for Apple review.

A toolchain fix

Tracked down a React Native and Xcode build failure (an fmt consteval error) and resolved it with a custom Expo config plugin.

Architecture at a glance

Attendance record store

Zustand · AsyncStorage · on-device

Gamification engine

XP · ranks · streaks · badges

Forecasting engine

projection · what-if · confidence

Typed SVG UI

Ring · Gauge · charts · Reanimated

Want this kind of work?

Attendize is a full product shipped solo: the idea, a complete design system, and a cross-platform app taken all the way to App Store review. Open to freelance, contract, and the right full-time role.

Work with me