Skip to content

Releases: apersongithub/Duolingo-Unlimited-Hearts

❗ v3.6: Emergency Update

17 Apr 01:09

Choose a tag to compare

❗For new users, only if you are using the Mozilla Add-ons Store and Chrome Web Store will your extension update automatically.
❗Only install the extension from HERE, or the places listed in this repository. I have already found a fake one.

⚠ Duolingo is retiring Duolingo for Schools which could break 1-2/3 of the Unlimited Hearts STANDALONE patches since they rely on that 'codebase'. While, I've know many alternative methods (even for max and super too) for awhile I'm just not that interested in web dev anymore. Obviously I am willing to give my knowledge if people want to contribute.

TLDR

Fixed broken practice lessons from the chess update due to a changed JS module file hashing. This is now permanently fixed but as a result, there is an approx. 5-30ms latency on initial site load since it no longer relies on hard-coded hashes and instead automatically searches for the code that it needs to hotpatch (MAJOR architectural change). I didn't expect it the manual hashing to break because it hasn't changed in almost 9 months lol. Also fixed other small complaints from users and tightened the parity gap between the chrome and firefox extension. (THIS ONLY AFFECTS THE HARD-CODED PATCHES, NETWORK PATCHES SURVIVED THIS CHANGE).

Keep in mind since it's my first non-promised update there may be some small bugs since I didn't do the week-long testing I normally do. Basic testing appears to be fine though. Also we are in the TOP 3 Duolingo extensions in the chrome web store, thanks for 7k+ users!

Notes

  1. Extension is now 99.9% future-proof. There would have to be a serious major internal change, like changing their CDN subdomain d35aaqx5ub95lt.cloudfront.net or how they programmatically provide features on the client to users, as Hash changes will not break this extension anymore. They haven't changed their CDN subdomain since Q1 of 2018. By the time the CDN changes the extension and the userscripts would probably be non-functional anyways due the second reason I mentioned.
  2. Yes, the alert on your outdated v3.2 chrome extension from the web store is real, I told you when it finally breaks the alert comes back.
  3. For FIREFOX & NON-CHROME users: If you want Web Speech API support for enabling speaking practices without having to switch to the APP version of Duolingo or using Google Chrome, you can get my companion Speech Recognition Polyfill Add-on. Chrome users can already access speaking practices without this extension since they have the Web Speech API implemented already. You can also try my Speech Recognition Polyfill Userscript instead if you use a browser aside from Firefox, please note that it will not get any future support due to the nature of the script. This is all completely optional and is just there to help bring feature parity between browsers on the site. An image example is shown below of the extension but the userscript works the same (minus the customization features).
  4. Spread the news! Don't gatekeep this extension, it can help alot of people.
  5. You can thank @itzVexlen & @GreyTen1 for reporting this issue.

Media

Dumb Paywall Speech Recognition Polyfill add-on
The paywall that appears on hard-coded versions in the practice hub prior to v3.6. My Speech Recognition Polyfill add-on enabling support for speaking practices on Duolingo (Userscript works the same, less customizable).

🎢 v3.5: Maintainance Update

01 Mar 00:48

Choose a tag to compare

❗For new users, only if you are using the Mozilla Add-ons Store will your extension update automatically.
❗Only install the extension from HERE, or the places listed in this repository. I have already found a fake one.

TLDR

Added support for browsers with the new HTML Sanitizer API and fallbacks to the traditional sanitizer that was introduced in v3.2 if your browser doesn't support it or if it isn't fully implemented. Also added money saved from the extension since first install and fixed some small errors and warnings. Smaller file size due to the merged banner code.

Notes

  1. This is the LAST update as promised since I'm focusing on other things now! Future updates are not guaranteed.
  2. Just a reminder, the extension version shown on the popup page on older versions which claim they are on the latest version is completely false. This is intentional but only temporarily because on older versions, the notification that tells you if there is an update uses alert() rather than the small banner introduced in v3.4. The alert() is very intrusive and makes users who have a language barrier think its a virus or something so I rewrote it. If the chrome web store or mozilla add-on store removes my extension, I will restore the accuracy of the notification throughout all versions. This is all controlled via the chromestupid flag in extension-version.json, setting it to false would fix it.
  3. For FIREFOX & NON-CHROME users: If you want Web Speech API support for enabling speaking practices without having to switch to the APP version of Duolingo or using Google Chrome, you can get my companion Speech Recognition Polyfill Add-on. Chrome users can already access speaking practices without this extension since they have the Web Speech API implemented already. You can also try my Speech Recognition Polyfill Userscript instead if you use a browser aside from Firefox, please note that it will not get any future support due to the nature of the script. This is all completely optional and is just there to help bring feature parity between browsers on the site. An image example is shown below of the extension but the userscript works the same (minus the customization features).
  4. Spread the news! Don't gatekeep this extension, it can help alot of people.

Media

Money Saved Indicator Speech Recognition Polyfill add-on
"Money Saved" Indicator showing the amount of money saved since an extension installation from August 4th, 2025. My Speech Recognition Polyfill add-on enabling support for speaking practices on Duolingo (Userscript works the same, less customizable).

🐞 v3.4.1: Hotfix patching issues

22 Nov 22:47

Choose a tag to compare

TLDR: Apparently, specifically the userscript/network interception patches made it so you couldn't buy stuff from the item shop.
If you were using the ⭐ DEFAULT patch (currently hardcoded) you are unaffected by this bug.
I've also fixed the chrome extension randomly breaking patches when changed due to caching issues (used to happen rarely).

  • Note 1: This will be the latest version for the foreseeable future, as the extension is feature complete 🎉
  • Note 2: I recommend turning on notifications regardless of where you installed the extension since they aren't as intrusive anymore
  • Note 3: I will try to maintain this extension (as in mainly fix website-breaking issues) until about March 2026 which is about ~8 months from the original release date.

Once again, thank you for your support + this is now the most popular duolingo extension on the mozilla addon store!
The fact that a patch as old as v1.0 still remains functional after several months is a great sign. 🤞🏾 Hopefully, we can maintain that stability with the patches after that as well!

fix

This release is extremely future-proof and may last a year or longer.

v3.4: Remote Sync & Notification Revamp

05 Nov 03:00

Choose a tag to compare

TLDR: Adds remote patch syncing, new notification system [less intrusive, no more alert()], lower file sizes, and preview.duolingo.com support for the extension and userscripts.

Updated options & Example notification:

This release is extremely future-proof and may last upto a year.

v3.3.1: Important Fixes

13 Oct 17:49

Choose a tag to compare

TLDR: Forgot to add super to the patches list and reverted Firefox extension back to mv2 due to issues.

This release is extremely future-proof and may last upto a year.

v3.3: Future proofing & Code Cleanup

13 Oct 06:02

Choose a tag to compare

TLDR: Options page revamp, Alot of Patching Options, Duolingo Max Userscript, and Performance fixes.

This release is extremely future-proof and may last upto a year.

v3.2.1b: Modules/Code Cleanup

08 Oct 19:22
77af2f0

Choose a tag to compare

Pre-release

TLDR: Minor rewrite of extension to use ES6 modules/Universal Module Definition for improved performance and maintainability.

This release essentially makes it easier for people to contribute to the project since the code base is organized and cleaned up.
You can also find the source here.
The file sizes have also shrunk by ~20% and both extensions are now MV3.
This release adds no new features and will likely just be merged with another update for v3.3.

⚠ This is a Pre-Release meaning the extension may have bugs.

If you don't want bugs, use only the 'Latest' tagged versions. Only use this if you are planning on contributing or reporting issues with THIS release.

v3.2: Security/Bug Fixes

04 Oct 01:30

Choose a tag to compare

TLDR: This release adds security enhancements to the external banner injection process, ensuring that any possible remote javascript is removed and cannot execute and some small bug fixes (If you are a dev read bottom of FAQ).

This was also done to help us get the Featured Badge on the Chrome Webstore
(This did not end up happening and is the last version allowed on the Chrome Web Store)

This release is future-proof for the next upcoming months.

v3.1: Finishing Touches

24 Sep 02:26

Choose a tag to compare

TLDR: Support for duolingo china, notification options, a new userscript (with ios support), and optimization fixes.

Thank you to those who have donated or have been with us since v1.0. I likely do not plan on making any major updates so feel free to contribute.
The overall codebase will be cleaned up soon so its easier to dive into for future contributors.

There are currently three methods code-wise to get unlimited hearts. Each uses a different method to achieve the same goal.

  1. v3.0 and above (MAX Features)
  2. v2.0 (Unlimited Hearts ONLY)
  3. Userscript (Unlimited Hearts ONLY)

❗ONLY USE ONE METHOD AT A TIME OR YOU WILL BREAK STUFF❗
I will NOT find any new bypasses even after all three methods get patched.

This release is future-proof for the next upcoming months.

v3.0: Duolingo MAX Features

29 Aug 01:32
e5a700c

Choose a tag to compare

TLDR: Added Duolingo MAX features

Full Release Notes Here:

image image

You can enable speaking on firefox through about:config and setting "media.webspeech.recognition.enable" to true. (It is buggy and not recommended)

Feel free to use v2.0 if necessary as it's still viable for the coming months.


Possible future updates:

  • Support for duolingo.cn (Duolingo China)
  • Code cleanup (no effect on extension)
  • Remove version notifications for Firefox as its updated automatically by the mozilla store
  • Being able to update the rules for the patches being applied from a github json file so less extension updates are required in the future.
  • Choose what method of patching you want to apply just in case one breaks (Unlikely).
  • That's probably it for this extension. Even the future updates that I said above are kinda overkill.

This release is future-proof for the next upcoming months.