LiftX is a WIP workout tracker.
- Clone the repository:
git clone https://github.com/lift-x/liftx.git
- Configure the
docker-compose.yml
- Build and launch!:
docker compose up --build -d
- JSON for data retrieval
- Learn Svelte
- Workout View
- Status Codes
- Workout create
- When adding exercises form a json, render off the json. (Editing/deleting exerices will be possible then)
- Front page
- Login/Auth
- Register Account
- Login
- Remember Login?
- Add validation (on frontend, backend has validation)
- Delete
- User Home Page
- Summaries of workouts
- Add "New Workout" panel for users with less than 3 workouts
- View All page
- Progression statistics/graphcs
- Body weight graph?
- Summaries of workouts
- Account Page
- Global unit preference
- Delete account
- Themes (light/dark)
- Home page customization
- Add Support for other DB types (diesel?) such as MariaDB, Postgres, MySQL..
- Extend error handling with global error codes and don't handle
Result<>
s withunwrap()
s - Organize api (/api/v1), follow some sort of standard like OpenAPI or GraphQL
- Ratelimiting
- Gzip assets
- Docker!
These ideas either take a lot of work to implement or would change the structure of the app majorly.
- GPX Support
- Exercise lists, with muscle group visualization (like wger)
- Native mobile applications (Svelte-native?)
- Nutrition Tracking
- Cardio support, timers, laps
- Calorie estimations?
Prerequisites:
- Clone the repo
- Install npm dependencies:
npm install
- Build the web frontend:
npm run build
- Run the backend:
cargo run