Giter Club home page Giter Club logo

duolingo-hack's Introduction

duolingo

Keep my Duolingo streak

Streak keeper and XP farm for Duolingo. Never get demoted again!

How to use

  1. Fork this repository
  2. Go to Duolingo
  3. While logged in, open the browser's console (Option (⌥) + Command (⌘) + J (on macOS) or Shift + CTRL + J (on Windows/Linux))
  4. 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]
  1. Go to your forked repository
  2. Go to Settings > Secrets and Variables > Actions . And click the button New Repository secret
  3. For the secret name use DUOLINGO_JWT for the secret value use the copied value from step 4.
  4. Go the your forked repository and go the Actions tab and press the button I understand my workflows, go ahead and enable them

Workflows

🔥 Streak Keeper

This project uses GitHub Actions scheduled workflow to keep your streak alive. The workflow can be viewed here.

📚 Study

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.

Caveats

  • 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;

Running as a standalone script

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

duolingo-hack's People

Contributors

kdssoftware avatar rfoel avatar semantic-release-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

duolingo-hack's Issues

Keep my Duolingo streak

Primeiro, obrigado. Eu consegui rodar a ação de lições, mas este não aparece o botão pra dar inicio. Como que faço? Valeu
duorun

Error

Error when running.
Only happens with certain tokens for somereason, newer accounts seem to be fine.

file:///home/runner/work/duolingo/duolingo/index.js:68
      skillId: xpGains.find(xpGain => xpGain.skillId).skillId,
                                                     ^

TypeError: Cannot read properties of undefined (reading 'skillId')
    at file:///home/runner/work/duolingo/duolingo/index.js:6[8](https://github.com/Shasdoww/duolingo/actions/runs/6450025293/job/17508971835#step:4:9):54
    at process.processTicksAndRejections (node:internal/process/task_queues:[9](https://github.com/Shasdoww/duolingo/actions/runs/6450025293/job/17508971835#step:4:10)5:5)

Node.js v18.18.0
Error: Process completed with exit code 1.

How To Use

Hello I use windows 10 and im new so i dont know how to use?

Could this get me banned?

I'd like to use the streak keeper but will could Duo find out that I do? I have a streak on this account that I don't want to lose.

Error every time "Keep my Duolingo streak" tries to run

sorry if im being really stupid but how do i fix this?

Run node index.js
node index.js
shell: /usr/bin/bash -e {0}
env:
DUOLINGO_JWT: ***
LESSONS: 1
undefined:1

SyntaxError: Unexpected end of JSON input
at JSON.parse ()
at parseJSONFromBytes (node:internal/deps/undici/undici:4553:19)
at successSteps (node:internal/deps/undici/undici:4527:27)
at fullyReadBody (node:internal/deps/undici/undici:1307:9)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async specConsumeBody (node:internal/deps/undici/undici:4536:7)
at async file:///home/runner/work/duolingo/duolingo/index.js:20:19

Node.js v18.18.2
Error: Process completed with exit code 1.

Change Language

Is there any way to change language the bot will farm? for me it only farms xp in russian language even though i only do arabic and english

Error happened today

Normally it works but when I tried it today this happened:

Run node index.js
undefined:1
<!doctype html>
^

SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at parseJSONFromBytes (node:internal/deps/undici/undici:4[7](https://github.com/Bussin537/duolingo/actions/runs/7755659792/job/21151482138#step:4:8)47:19)
    at successSteps (node:internal/deps/undici/undici:471[8](https://github.com/Bussin537/duolingo/actions/runs/7755659792/job/21151482138#step:4:9):27)
    at fullyReadBody (node:internal/deps/undici/undici:1433:[9](https://github.com/Bussin537/duolingo/actions/runs/7755659792/job/21151482138#step:4:10))
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async specConsumeBody (node:internal/deps/undici/undici:4727:7)
    at async file:///home/runner/work/duolingo/duolingo/index.js:20:19

Node.js v[18](https://github.com/Bussin537/duolingo/actions/runs/7755659792/job/21151482138#step:4:19).[19](https://github.com/Bussin537/duolingo/actions/runs/7755659792/job/21151482138#step:4:20).0
Error: Process completed with exit code 1.

Can't run keep my duolingo streak

While the "Do a Duolingo lesson" tab is available to enable, the "Keep my Duolingo streak" tab doesn't show any button like that. I'm not too advanced with GitHub Actions but, is it supposed to be like that?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.