Skip to content

Latest commit

Β 

History

History
43 lines (33 loc) Β· 2.56 KB

README.md

File metadata and controls

43 lines (33 loc) Β· 2.56 KB

strava-box

Update a gist to contain your YTD Strava distances


Strava Box

Previous Work

This repo is based off of matchai's waka-box. For this fork of strava-box, I've added Walk metrics (I'm not swimming during COVID) which were not accessible due to configurations in the base version.

Setup

Prep work

  1. Create a new public GitHub Gist (https://gist.github.com/)
  2. Create a token with the gist scope and copy it. (https://github.com/settings/tokens/new)
  3. Create a Strava Application (https://www.strava.com/settings/api)
    • Copy the Client ID and Client Secret
  4. Get the code you receive from Strava's Oauth flow after registering your app: https://www.strava.com/oauth/authorize?client_id=<YOUR_CLIENT_ID>&response_type=code&redirect_uri=https://localhost&approval_prompt=force&scope=read,activity:read_all It should be within the query params of the response once you authorize, e.g. https://localhost/?state=&code=<YOUR_CODE>&scope=read,activity:read_all
  5. Get your Athlete Token by going to https://www.strava.com, click your profile photo in the top right corner. Copy the ID in the url. https://www.strava.com/athletes/12345

Project setup

  1. Fork this repo
  2. Log into CircleCI with your GitHub (https://circleci.com/vcs-authorize/)
  3. Click on "Add Projects" on the sidebar
  4. Set up a project with the newly created fork
  5. Go to Project Settings > Environment Variables
  6. Add the following environment variables:
  • GIST_ID: The ID portion from your gist url https://gist.github.com/<github username>/6d5f84419863089a167387da62dd7081.
  • GITHUB_TOKEN: The GitHub token generated above.
  • CACHE_VERSION: default its value to v1 and update the value if you ever need to update the cache, since CircleCI does not allow you to delete a project/cache without creating a ticket. Read more
  • STRAVA_ATHLETE_ID: The ID you got from visiting your profile page.
  • STRAVA_CLIENT_ID: The client ID you got from the Strava API page.
  • STRAVA_CLIENT_CODE: Client code you receive from Strava's Oauth flow after registering your app
  • STRAVA_CLIENT_SECRET: The client secret you got from the Strava API page.
  • (optional) UNITS: miles or metres (default)