Quick Setup
-
Clone the repository
Terminal window git clone https://github.com/mlorentedev/garsync.gitcd garsync -
Run setup Ensure you have Python 3.12+ and Node.js 22+ installed.
Terminal window make setup -
Configure Secrets GarSync uses SOPS for secure credential management. The file is encrypted to garsync’s dedicated age identity, and sops cannot infer the format from
.enc, so name both:Terminal window # Opens your default editorSOPS_AGE_KEY_FILE=~/.config/age/garsync.txt \sops --input-type dotenv --output-type dotenv secrets.env.encAdd your Garmin credentials:
GARMIN_EMAIL=user@example.comGARMIN_PASSWORD=yourpassword -
First Sync Fetch your last 30 days of activity and biometrics.
Terminal window make sync DAYS=30 -
Start the Dashboard Launch the development environment:
Terminal window make devVisit
http://localhost:4321to see your data!
Deployment (Production)
Section titled “Deployment (Production)”To run GarSync permanently on your server:
make build && make runThe application will be accessible at http://localhost:8000.