WeBuildCrew
📱 Health & Fitness

FitTrack — Fitness Mobile App

A React Native fitness app with workout plans, progress tracking, subscriptions and push notifications — one codebase for iOS and Android.

Timeline
8 weeks
Role
Mobile & backend development
Team
2 engineers
Year
2025
React NativeTypeScriptNode.jsPostgreSQLStripeFirebase
📱
FitTrack

4.8★

App rating

2 stores

1 codebase

+45%

Retention

Client goals

  • Ship iOS & Android from one codebase
  • Keep users engaged with tracking
  • Monetise with subscriptions

Project overview

FitTrack is a cross-platform fitness app built with React Native so one codebase ships to both stores, with plans, tracking, subscriptions and reminders.

The client problem

Our solution

One React Native codebase, a Node API, Stripe subscriptions and Firebase push — with progress charts and streaks designed to keep users coming back.

What we built

Features

🏋️

Workout plans

Guided routines and schedules.

📈

Progress tracking

Charts for weight, reps and streaks.

💳

Subscriptions

In-app plans via Stripe.

🔔

Push reminders

Workout and streak notifications.

👤

Profiles

Goals, history and achievements.

📶

Offline mode

Train without a connection.

Under the hood

Technical code

app/api/projects/route.ts
TypeScript
import { db } from "@/lib/db"; export async function GET() {  const items = await db.project.findMany({    where: { status: "active" },    select: { id: true, name: true, updatedAt: true },    orderBy: { updatedAt: "desc" },    take: 50,  });  return Response.json(items);}
components/StatCard.tsx
TSX
type Props = { label: string; value: string; delta?: number }; export function StatCard({ label, value, delta }: Props) {  return (    <div className="rounded-2xl border border-white/10 bg-white/5 p-5">      <p className="text-sm text-muted">{label}</p>      <p className="mt-1 text-2xl font-bold">{value}</p>      {delta !== undefined && (        <p className={delta >= 0 ? "text-emerald-400" : "text-red-400"}>          {delta >= 0 ? "▲" : "▼"} {Math.abs(delta)}%        </p>      )}    </div>  );}

Integrations

APIs & services

Firebase

Push notifications and analytics.

Stripe

Subscription billing.

Cloudinary

Exercise media delivery.

Process

Development workflow

  1. 1

    Discovery

    Goals, users and success metrics defined on a free call.

  2. 2

    Planning

    Fixed scope, milestone plan and timeline in writing.

  3. 3

    UI/UX design

    Wireframes and a clean, modern design system.

  4. 4

    Backend setup

    Database schema, auth and core services.

  5. 5

    API development

    Typed, documented endpoints and integrations.

  6. 6

    Frontend

    Responsive, accessible UI wired to the API.

  7. 7

    Testing

    QA across devices plus performance & security checks.

  8. 8

    Deployment

    CI/CD, monitoring and a smooth production launch.

  9. 9

    Support

    Ongoing maintenance, updates and new features.

Speed & SEO

Performance & SEO

Performance

  • Server-side & static rendering for instant first paint
  • Image optimisation and lazy loading
  • Code-splitting and route-level prefetching
  • Edge/CDN caching with smart revalidation
  • Green Core Web Vitals (LCP, CLS, INP)
  • Database indexing and query tuning

SEO

  • Per-page metadata, canonical URLs and Open Graph
  • Structured data (JSON-LD) for rich results
  • Programmatic sitemap & robots
  • Semantic, accessible HTML
  • Clean, descriptive slug URLs

Built secure

Security

🔒Session-based auth with role permissions
🔒Server-side authorization on every protected route
🔒Input validation (Zod) on client and server
🔒Secure payments via hosted Checkout (no card data stored)
🔒Rate limiting and abuse protection
🔒Encrypted secrets and least-privilege access

Outcome

Results & impact

4.8★

App rating

2 stores

1 codebase

+45%

Retention

FitTrack launched on both stores from a single codebase, reached a 4.8★ rating and lifted retention by 45% through streaks and reminders.