Streak keeper and XP farm for Duolingo. Never get demoted again!
- Fork this repository
- Go to Duolingo
- While logged in, open the browser's console (Option (⌥) + Command (⌘) + J (on macOS) or Shift + CTRL + J (on Windows/Linux))
- Get the JWT token by pasting this in the console, and copy the value ( without
'
)
document.cookie
.split(';')
.find(cookie => cookie.includes('jwt_token'))
.split('=')[1]
- Go to your forked repository
- Go to Settings > Secrets and Variables > Actions . And click the button
New Repository secret
- For the secret name use
DUOLINGO_JWT
for the secret value use the copied value from step 4. - Go the your forked repository and go the Actions tab and press the button
I understand my workflows, go ahead and enable them
This project uses GitHub Actions scheduled workflow to keep your streak alive. The workflow can be viewed here.
This repository can also "study" lessons for you. This will give you XP so you won't get demoted never again! This workflow uses workflow_dispatch to trigger the study session. You can choose the number of lessons to be done. The workflow can be viewed here.
- This project won't help with your daily or friend quests, it can only earn XP to move up the league rank;
- This project won't do real lessons or stories, only practices, so it won't affect your learning path;
You can run this script outside GitHub if you want to. You can have an .env
file with the DUOLINGO_JWT
and run the script like so:
node --env-file=.env index.js
Node v20.6.0 or later is needed to use the
--env-file
flag.
You can also load the env in the terminal like so:
DUOLINGO_JWT=... node index.js