Track your gym progress, completely offline.
Go to file
Brandon Presley ebe9a392ca Replace raw SQL in StartPlan with query builder code
Running this code results in the following error:

TypeError: subQueryBuilder.getParameters is not a function (it is undefined)
    at createFromAlias (http://localhost:8081/index.bundle//&platform=android&dev=t
y=false&app=com.massive&modulesOnly=false&runModule=true:205802:59)
    at from (http://localhost:8081/index.bundle//&platform=android&dev=true&minify=
=com.massive&modulesOnly=false&runModule=true:201576:45)
    at ?anon_0_ (http://localhost:8081/index.bundle//&platform=android&dev=true&min
&app=com.massive&modulesOnly=false&runModule=true:316375:209)
    at next (native)
    at asyncGeneratorStep (http://localhost:8081/index.bundle//&platform=android&de
nify=false&app=com.massive&modulesOnly=false&runModule=true:28380:26)
    at _next (http://localhost:8081/index.bundle//&platform=android&dev=true&minify
p=com.massive&modulesOnly=false&runModule=true:28399:29)
    at anonymous (http://localhost:8081/index.bundle//&platform=android&dev=true&mi
e&app=com.massive&modulesOnly=false&runModule=true:28404:14)
    at tryCallTwo (/root/react-native/packages/react-native/ReactAndroid/hermes-eng
Release/4i495j47/arm64-v8a/lib/InternalBytecode/InternalBytecode.js:61:9)
    at doResolve (/root/react-native/packages/react-native/ReactAndroid/hermes-engi
elease/4i495j47/arm64-v8a/lib/InternalBytecode/InternalBytecode.js:216:25)
    at Promise (/root/react-native/packages/react-native/ReactAndroid/hermes-engine
ease/4i495j47/arm64-v8a/lib/InternalBytecode/InternalBytecode.js:82:14)
    at anonymous (http://localhost:8081/index.bundle//&platform=android&dev=true&mi
e&app=com.massive&modulesOnly=false&runModule=true:28396:25)
    at anonymous (http://localhost:8081/index.bundle//&platform=android&dev=true&mi
e&app=com.massive&modulesOnly=false&runModule=true:316420:14)
    at callback (http://localhost:8081/index.bundle//&platform=android&dev=true&min
&app=com.massive&modulesOnly=false&runModule=true:145400:29)
    at anonymous (http://localhost:8081/index.bundle//&platform=android&dev=true&mi
e&app=com.massive&modulesOnly=false&runModule=true:145419:27)
    at commitHookEffectListMount (http://localhost:8081/index.bundle//&platform=and
true&minify=false&app=com.massive&modulesOnly=false&runModule=true:94929:38)
    at commitPassiveMountOnFiber (http://localhost:8081/index.bundle//&platform=and
true&minify=false&app=com.massive&modulesOnly=false&runModule=true:96130:44)
    at commitPassiveMountEffects_complete (http://localhost:8081/index.bundle//&pla
roid&dev=true&minify=false&app=com.massive&modulesOnly=false&runModule=true:96102:4
    at commitPassiveMountEffects_begin (http://localhost:8081/index.bundle//&platfo
d&dev=true&minify=false&app=com.massive&modulesOnly=false&runModule=true:96092:47)
    at commitPassiveMountEffects (http://localhost:8081/index.bundle//&platform=and
true&minify=false&app=com.massive&modulesOnly=false&runModule=true:96082:40)
    at flushPassiveEffectsImpl (http://localhost:8081/index.bundle//&platform=andro
ue&minify=false&app=com.massive&modulesOnly=false&runModule=true:97758:34)
    at flushPassiveEffects (http://localhost:8081/index.bundle//&platform=android&d
inify=false&app=com.massive&modulesOnly=false&runModule=true:97713:43)
    at performSyncWorkOnRoot (http://localhost:8081/index.bundle//&platform=android
&minify=false&app=com.massive&modulesOnly=false&runModule=true:97003:28)
    at flushSyncCallbacks (http://localhost:8081/index.bundle//&platform=android&de
nify=false&app=com.massive&modulesOnly=false&runModule=true:86202:36)
    at flushSyncCallbacksOnlyInLegacyMode (http://localhost:8081/index.bundle//&pla
2023-08-13 20:59:59 +12:00
.bundle First commit 2022-06-30 18:50:52 +12:00
.vscode Add vscode configuration for debugging 2022-12-03 22:14:01 +13:00
.yarn/releases Fix .gitignore for yarn berry 2022-08-26 17:03:44 +12:00
android Validate numbers in EditWorkout - 1.147 2023-08-12 15:41:32 +12:00
ios Upgrade react-native to 0.72.1 2023-07-07 13:17:19 +12:00
metadata/en-US Revert "Update timer page screenshot" 2023-03-02 19:15:26 +13:00
migrations Add setting to automatically backup - 1.130 2023-03-09 17:16:08 +13:00
tests Fix type errors related to upgrade 2023-07-15 14:38:46 +12:00
.Gemfile Add gemfile + lock 2022-11-04 18:50:52 +13:00
.buckconfig First commit 2022-06-30 18:50:52 +12:00
.eslintrc.js Ignore mock-providers.tsx 2023-07-17 16:46:23 +12:00
.fdignore Add ability to customize primary color 2022-09-24 13:57:51 +12:00
.gitignore Replace it with test for jest files 2023-01-04 13:44:28 +13:00
.rgignore Split out routes 2022-07-15 16:34:06 +12:00
.ruby-version Change ruby version to match what is required in ios 2022-11-15 18:10:30 +13:00
.watchmanconfig Run prettier on project directory 2022-09-01 23:52:33 +12:00
.yarnrc.yml Upgrade yarn version 2022-07-19 16:24:05 +12:00
App.tsx Run prettier 2023-08-12 15:23:02 +12:00
AppFab.tsx Run prettier 2023-08-12 15:23:02 +12:00
AppInput.tsx Run prettier 2023-08-12 15:23:02 +12:00
Chart.tsx Run prettier 2023-08-12 15:23:02 +12:00
ConfirmDialog.tsx Run prettier 2023-08-12 15:23:02 +12:00
DrawerHeader.tsx Run prettier 2023-08-12 15:23:02 +12:00
EditPlan.tsx Run prettier 2023-08-12 15:23:02 +12:00
EditSet.tsx Validate reps+weight on EditSet 2023-08-12 15:22:00 +12:00
EditSets.tsx Run prettier 2023-08-12 15:23:02 +12:00
EditWorkout.tsx Validate numbers in EditWorkout - 1.147 2023-08-12 15:41:32 +12:00
Gemfile Upgrade react-native to 0.72.1 2023-07-07 13:17:19 +12:00
Gemfile.lock Get ios running 2022-11-15 18:10:48 +13:00
GraphsList.tsx Optimize GraphsList 2023-08-12 15:03:31 +12:00
GraphsPage.tsx Run prettier 2023-08-12 15:23:02 +12:00
HomePage.tsx Run prettier 2023-08-12 15:23:02 +12:00
LICENSE Add GPL3 license 2022-07-08 11:59:31 +12:00
ListMenu.tsx Run prettier 2023-08-12 15:23:02 +12:00
Page.tsx Run prettier 2023-08-12 15:23:02 +12:00
PlanItem.tsx Run prettier 2023-08-12 15:23:02 +12:00
PlanList.tsx Run prettier 2023-08-12 15:23:02 +12:00
PlanPage.tsx Run prettier 2023-08-12 15:23:02 +12:00
README.md Add plan start screenshot 2022-10-14 18:25:30 +13:00
Routes.tsx Run prettier 2023-08-12 15:23:02 +12:00
Select.tsx Run prettier 2023-08-12 15:23:02 +12:00
SetItem.tsx Run prettier 2023-08-12 15:23:02 +12:00
SetList.tsx Run prettier 2023-08-12 15:23:02 +12:00
SettingButton.tsx Run prettier 2023-08-12 15:23:02 +12:00
SettingsPage.tsx Run prettier 2023-08-12 15:23:02 +12:00
StackHeader.tsx Run prettier 2023-08-12 15:23:02 +12:00
StartPlan.tsx Replace raw SQL in StartPlan with query builder code 2023-08-13 20:59:59 +12:00
StartPlanItem.tsx Run prettier 2023-08-12 15:23:02 +12:00
Switch.tsx Run prettier 2023-08-12 15:23:02 +12:00
TimerPage.tsx Run prettier 2023-08-12 15:23:02 +12:00
ViewGraph.tsx Run prettier 2023-08-12 15:23:02 +12:00
WorkoutItem.tsx Run prettier 2023-08-12 15:23:02 +12:00
WorkoutList.tsx Run prettier 2023-08-12 15:23:02 +12:00
WorkoutsPage.tsx Run prettier 2023-08-12 15:23:02 +12:00
app.json Run prettier on project directory 2022-09-01 23:52:33 +12:00
babel.config.js Upgrade react-native to 0.72.1 2023-07-07 13:17:19 +12:00
best.service.ts Run prettier 2023-08-12 15:23:02 +12:00
colors.ts Run prettier 2023-08-12 15:23:02 +12:00
constants.ts Run prettier 2023-08-12 15:23:02 +12:00
count-many.ts Run prettier 2023-08-12 15:23:02 +12:00
data-source.ts Run prettier 2023-08-12 15:23:02 +12:00
db.ts Run prettier 2023-08-12 15:23:02 +12:00
deno.json Use deno fmt instead of prettier 2023-06-27 15:16:59 +12:00
deploy.sh Fix type errors related to upgrade 2023-07-15 14:38:46 +12:00
drawer-param-list.ts Run prettier 2023-08-12 15:23:02 +12:00
fix-numeric.ts Validate reps+weight on EditSet 2023-08-12 15:22:00 +12:00
gym-set.ts Run prettier 2023-08-12 15:23:02 +12:00
home-page-params.ts Run prettier 2023-08-12 15:23:02 +12:00
index.js Upgrade react-native to 0.72.1 2023-07-07 13:17:19 +12:00
input.ts Run prettier 2023-08-12 15:23:02 +12:00
install.sh Fix install.sh script for new react-native output 2023-07-15 15:02:13 +12:00
jest.config.js Optimize root context 2022-10-31 21:00:10 +13:00
jestSetup.ts Run prettier 2023-08-12 15:23:02 +12:00
metrics.ts Run prettier 2023-08-12 15:23:02 +12:00
metro.config.js Upgrade react-native to 0.72.1 2023-07-07 13:17:19 +12:00
mock-providers.tsx Run prettier 2023-08-12 15:23:02 +12:00
options.ts Run prettier 2023-08-12 15:23:02 +12:00
organize.sh Use deno fmt instead of prettier 2023-06-27 15:16:59 +12:00
package.json Remove prettier from project deps 2023-08-13 20:58:36 +12:00
periods.ts Run prettier 2023-08-12 15:23:02 +12:00
plan-page-params.ts Run prettier 2023-08-12 15:23:02 +12:00
plan.ts Run prettier 2023-08-12 15:23:02 +12:00
react-native.config.js Ran prettier on react-native.config.js 2022-11-22 21:38:54 +13:00
release.sh Turn on proguard and separate build per cpu 2022-07-27 16:06:28 +12:00
route.ts Run prettier 2023-08-12 15:23:02 +12:00
settings.ts Run prettier 2023-08-12 15:23:02 +12:00
time.ts Run prettier 2023-08-12 15:23:02 +12:00
toast.ts Run prettier 2023-08-12 15:23:02 +12:00
tsconfig.json Fix type errors related to upgrade 2023-07-15 14:38:46 +12:00
use-dark.ts Run prettier 2023-08-12 15:23:02 +12:00
use-theme.ts Run prettier 2023-08-12 15:23:02 +12:00
use-timer.ts Run prettier 2023-08-12 15:23:02 +12:00
volume.ts Run prettier 2023-08-12 15:23:02 +12:00
watch-lint.sh Add watch-lint.sh and watch-tsc.sh 2022-09-20 13:51:34 +12:00
watch-tsc.sh Add watch-lint.sh and watch-tsc.sh 2022-09-20 13:51:34 +12:00
write.ts Run prettier 2023-08-12 15:23:02 +12:00
yarn.lock Remove prettier from project deps 2023-08-13 20:58:36 +12:00

README.md

Massive

Massive tracks your reps and sets at the gym. No internet connectivity or high spec device is required.

Features

  • Track weight, reps and sets
  • Rest timers after each set
  • Progress graphs
  • Day planner
Get it on Google Play

Screenshots

Building from Source

First follow the React Native Environment Setup. Then run the following command:

cd android
./gradlew assembleRelease

The apk file can be found at android/app/build/outputs/apk/release/app-*-release.apk The APKs are separated by architecture, for example we have:

  • app-arm64-v8a-release.apk
  • app-armeabi-v7a-release.apk
  • app-x86_64-release.apk
  • app-x86-release.apk

Your phone is probably app-arm64-v8a-release.apk.

Running in Development

First ensure Node.js dependencies are installed:

yarn install

Then start the metro server:

yarn start

Then (in a separate terminal) run the android script:

yarn android

Fdroid Metadata

You can find the metadata yaml file in the fdroiddata repository: https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/com.massive.yml

Relevant Documentation