Hey everyone!
Since I originally made this post, MDL-Sync has received several updates and has evolved quite a bit from the version I initially shared.
The extension is currently at v0.1.3 and is still actively being developed. Along with new features, I've also fixed several issues to make episode detection and synchronization more reliable.
For anyone discovering this project for the first time, MDL-Sync is a small browser extension that automatically tracks your drama episodes on MyDramaList while you watch on supported streaming sites.
What it currently does
Automatically detects the drama and episode you're watching.
Shows a small floating button that lets you sync the episode to your MDL list with one click.
After you manually match a title to MDL once, the extension remembers the mapping.
From then on, episodes can be automatically synced after you've watched around 80% of the episode, without any clicking.
Shows an "Already synced β" indicator so you can immediately see whether the current episode has already been tracked.
Sends a browser notification when an episode is automatically synced, including while watching in fullscreen.
Detects episode changes even when the website doesn't reload the entire page.
Keeps your saved mappings and sync history when updating the extension.
Final episode & ratings
The extension also now has some features specifically for finishing dramas:
The final episode automatically marks the title as "Completed" on MyDramaList when synced.
You can optionally give the drama a rating from 1.0 to 10.0, using MDL's own rating scale.
The rating option appears immediately after syncing the final episode, without requiring a page reload.
Rating is completely optional and can also be used independently of the episode sync.
Supported sites
The main supported sites currently include:
There are also a few other supported sites that I won't mention here for obvious reasons. The source code is publicly available on GitHub, so if you're curious, you can check exactly how the extension works and which sites are supported.
Important requirements
You need to be logged into MyDramaList for the extension to update your list. It uses your existing MDL session through a background tab.
MyDramaList needs to be set to English for the synchronization to work correctly.
Streaming sites should also be set to English for the most reliable detection.
If the drama's title is different between the streaming site and MDL, you can manually search for the correct title when the extension asks you to. Once you open the correct MDL page, the extension saves that mapping, so you won't need to do it again for that title.
Recent improvements and fixes
Since the earlier versions, several issues have been fixed, including:
Better recovery when the extension's service worker becomes idle after the computer goes to sleep or hibernates.
More reliable detection on sites that load their content dynamically.
Fixed Viki incorrectly detecting short intro/branding videos as episodes.
Improved detection for episodes opened through Viki's Continue Watching feature.
Fixed issues caused by changes to WeTV's page title format.
Fixed episodes being synced without correctly updating their watch status on MDL.
Improved detection when websites switch episodes without reloading the page.
Added a new extension icon.
The entire extension interface is now available in English.
Mappings saved in previous versions remain compatible with newer versions.
The project is still in early development, so bugs can definitely still happen. I'm continuing to work on it, fix issues as they come up, and add new improvements and features.
How to get it
Download and installation instructions are available on GitHub: MDL-Sync or Edge Adons
Since the extension isn't currently published on the Chrome Web Store, it needs to be installed as an unpacked extension using Developer Mode in your browser. The GitHub README contains the full installation instructions.
Feedback & suggestions
The project is still evolving, so any feedback is very welcome!
Especially:
Bug reports, preferably including the streaming site and, if possible, a screenshot or console error.
Requests for additional streaming sites.
Feedback on the automatic synchronization system.
Suggestions for improvements or new features.
Thanks to everyone who has followed the project so far and helped with testing and feedback! π¬