Skip to content

A Python tool to automatically give Strava Kudos to recent activities on your feed.

License

Notifications You must be signed in to change notification settings

Taikun/strava-kudos-taikun

 
 

Repository files navigation

Strava Kudos Giver 👍👍👍

Python 3.9 Github Actions

A Python tool to automatically give Strava Kudos to recent activities on your feed. There are a few repos that uses JavaScript like strava-kudos-lambda and strava-kudos.

The repo is set up so that the script runs on a set schedule via Github Actions. Github suggests in their docs to not run cron jobs at the start of every hour to avoid delays so minute30 was chosen here. Feel free to change it to whenever you want. There is also a max_run_duration parameter which is 9 minutes by default so that we don't exceed the monthly Github Action free tier minutes when the action is triggered a few times a day.

🏃 Usage

  1. Fork the repo
  2. Setup the environment variables in secrets
  3. Give kudos automatically!

Alternatively, you can run the script manually with

python3 give_kudos.py

🛠️Setup

Playwright

Playwright is used, so be sure to follow instructions to install it properly.

Execute:

pip install -r requirements

And after:

python -m playwright install
python -m playwright install-deps

Fastapi

Install dependencies and uvicorn (embedded server)

    pip install "fastapi[all]"
    pip install "uvicorn[standard]"

To execute, Important! Don't run uvicorn with reload True otherwise playwright is goingo to fail:

    python -m uvicorn main:app

Environment Variables

Set the environment variables for your email and password as follows:

export STRAVA_EMAIL=YOUR_EMAIL
export STRAVA_PASSWORD=YOUR_PASSWORD

🔬Testing

Manual testing was done in Python 3.9.10.

Contributions

Let me know if you wish to add anything or if there are any issues!

ForTheBadge built-with-love

About

A Python tool to automatically give Strava Kudos to recent activities on your feed.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 91.4%
  • Dockerfile 5.4%
  • Shell 1.8%
  • Procfile 1.4%