LiamMorrow / LiftLog

A cross platform app for tracking your lifts in the gym

Home Page:https://liftlog.online

Repository from Github https://github.comLiamMorrow/LiftLogRepository from Github https://github.comLiamMorrow/LiftLog

LiftLog

LiftLog Play Store Graphic
App Screenshot 1 App Screenshot 2 App Screenshot 3

Get it on Google Play Download on the App Store Try demo in your browser


๐Ÿš€ Overview

LiftLog is an intuitive, cross-platform gym weight tracking app built with React Native and Expo. It features Material Design 3, AI-powered workout planning, and secure, end-to-end encrypted social feeds. Available on Android, iOS, and the web.

Key Features

  • ๐Ÿ“ฑ Runs on Android, iOS, and web
  • ๐Ÿง  AI planner tailors gym plans to your goals and body
  • ๐Ÿ”’ End-to-end encrypted social feeds (opt-in, privacy-first)
  • ๐ŸŽจ Material Design 3 via React Native Paper
  • ๐ŸŒ Internationalization with Tolgee (10+ languages)
  • ๐Ÿ‹๏ธโ€โ™‚๏ธ Publish workouts, follow other users, and control your feed privacy
  • โšก Fast, modern UI with Expo Router and Redux Toolkit

๐ŸŒ Translations

LiftLog uses Tolgee for internationalization and translation management. Translation files are in app/i18n/. A huge thanks to them providing an open source license to LiftLog โค๏ธ.

Available languages:

  • ๐Ÿ‡ฆ๐Ÿ‡บ English (default)
  • ๐Ÿ‡ฎ๐Ÿ‡น Italian
  • ๐Ÿ‡ฉ๐Ÿ‡ช German
  • ๐Ÿ‡ท๐Ÿ‡ธ Serbian
  • ๐Ÿ‡ซ๐Ÿ‡ท French
  • ๐Ÿ‡ณ๐Ÿ‡ฑ Dutch
  • ๐Ÿ‡ซ๐Ÿ‡ฎ Finnish
  • ๐Ÿ‡ช๐Ÿ‡ธ Spanish
  • ๐Ÿ‡ท๐Ÿ‡บ Russian
  • ๐Ÿ‡จ๐Ÿ‡ฟ Czech

Want to help translate? Open an issue or PR.


โšก Quickstart

Prerequisites

  1. Node.js (v18+): Download here
  2. Expo CLI: npm install -g expo-cli (Guide)
  3. Android Studio (for Android) (Setup)
  4. Xcode (for iOS, macOS only) (Setup)

Run the App

cd app
npm install
npm run android   # For Android
npm run ios       # For iOS (macOS only)
npm run web       # For web

Run the Backend API

cd LiftLog.Api
dotnet run

See backend/LiftLog.Api/README.md for backend details.


๐Ÿ—‚๏ธ Project Structure

LiftLog is organized into several projects:

Frontend (app/)

  • Main React Native app (Expo)
  • Components: components/ (layout, presentation, smart)
  • State: store/ (Redux Toolkit)
  • Services: services/ (API, business logic)
  • Hooks: hooks/ (custom React hooks)
  • Translations: i18n/ (Tolgee)
  • Navigation: Expo Router

Backend (LiftLog.Api/)

  • Dotnet WebAPI for feeds, AI plans, and secure data
  • End-to-end encrypted feeds (AES)
  • OpenAI integration for workout plans

RevenueCat (RevenueCat/)

  • Client library for in-app purchases/subscriptions

Website (site/)

  • Source for liftlog.online and privacy policy

๐Ÿ“Š Stats

Star History Chart

๐Ÿค Contributing

Contributions, issues, and feature requests are welcome! See CONTRIBUTING.md (or open an issue/PR).

๐Ÿ“š Documentation

๐Ÿ’ฌ Support & Community


Note: LiftLog was rewritten from the ground up in React Native. The previous .NET MAUI Blazor implementation is in the dotnet branch.

About

A cross platform app for tracking your lifts in the gym

https://liftlog.online

License:GNU Affero General Public License v3.0


Languages

Language:C# 65.8%Language:TypeScript 16.5%Language:JavaScript 16.3%Language:Swift 0.4%Language:Pug 0.4%Language:Kotlin 0.3%Language:SCSS 0.3%Language:HTML 0.1%Language:Ruby 0.1%Language:C 0.0%Language:Dockerfile 0.0%