Coder Social home page Coder Social logo

leonekmi / scrobbly Goto Github PK

View Code? Open in Web Editor NEW
23.0 5.0 1.0 4.57 MB

↩️ Scrobble your animes to Anilist, Kitsu!

Home Page: https://scrobbly.leonekmi.fr

License: GNU General Public License v3.0

JavaScript 74.69% HTML 17.79% CSS 7.52%
chrome-extension firefox-extension webextension anilist anime kitsu mal scrobble firefox chrome

scrobbly's Introduction

Scrobbly (formerly Anilist Scrobbler)

GitHub shields.io Gitlab pipeline status (self-hosted) Chrome Web Store Translation status

Banner

This project is mirrored from my personal GitLab instance here.

Update your anime lists

At the same time, just by watching on your favourite VoD website, this WebExtension (Firefox & Chromium-based) can update your Kitsu, AniList and MAL lists (for now, it supports only Kitsu and AniList, but MAL is planned for next releases).

Install

Roadmap

Version Function Status
v2.0 (revamp!) Kitsu / AniList support done
- Crunchyroll / Netflix / Wakanim / Plex / Emby support done
- UI rework from v1 done
Released!
v2.1 (more support) Fetch informations from TheTVDB for best details done
- Hulu / HiDive / AnimeOnDemand / ADN support done
- UI improvments done
- Get feedback from first release you can always send me feedback on Twitter
Released!
v2.2 (functions) Manual scrobbling done
- Title Preference (English / Romaji / Native) done
- Choose details to show on popup done
- Get data from other sources (like ImDB) project: not planned
Released!
v2.3 (websites / bug fixes) Ponimu / Wakanim (other regions) / Other websites support done
- Some rework (Browserify --> Webpack) done
Released!
v2.x next releases (even more support!) Trakt support canceled (an official extension exists, i don't think i can do better)
- MyAnimeList support planned (when API will be back, so it can be planned for a later release)
- Hulu support project: not planned (see #16)
- Another streaming websites support you can create an issue
- Bug fixes planned reports are appreciated :)
Deadline : TBD

More to come later... stay tuned!

Donate

If you like Scrobbly, please consider donating on my Patreon page. Thanks!

scrobbly's People

Contributors

jannisbecker avatar leonekmi avatar weblate 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

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

0delfo0

scrobbly's Issues

Request twist.moe

What is the name of the website ?
Anime Twist
twist.moe

Do you know if the website has an open API (in case of anime list or datasource) ?
I do not believe so, but the URL is easily parsable.

Streaming service: Hulu

Hulu is a streaming service available in U.S.A., it is paid and it doesn't have free option (the free trial need a credit card input).

Help wanted : I need access to a Hulu account.

[Crunchyroll] If the show couldn't be clearly identified (asking if its e.g. Symphogear "G" or "GX"), the choice reappears after every page reload / episode switch

So I was watching Symphogear G on Crunchyroll
and in the beginning I was asked if I was watching Symphogear G or GX, which is fine,
but I got the question over and over again after every switch to the next episode (and thus, new page loads).
If it was possible, I think it would be nice to remember this choice somehow.
Of course, remembering that could be a problem as soon as I start watching Symphogear GX (being the next season), right after it.
Perhaps you could solve it in such a way that, as soon as the user is given a choice between anime names and chooses one, remember not just the answer but the given choices as well, and as soon as the user gets to the next episode, which triggers the identification again, if the scrobbler finds the same two anime names again and would be about to ask the exact same question once more, just don't do that and use the last choice again.
In my scenario, this would work all the way up to the last episode of Symphogear G, and as soon as I'd switch to Symphogear GX, the scrobbler would only find one anime named like that anyway, or at least certainly a different list of possible anime names than last time, and could then ask the user again, if neccessary.

Request for Plex mediaserver

Hello,

Great project you have there, in the README i saw something about creating an issue dedicated for the request websites, as there's nothing in the issues tab, i'm humbly posting this request for plex.

Merci encore,
Cheers,

[Crunchyroll] Watching anime in fullscreen mode only ever triggers the anilist scrobbler after exiting fullscreen

I think this is mainly a "problem" with how Crunchyroll works and not with your extension per se.
When watching anime on Crunchyroll, and switching to full screen,
instead of going to another page, the Crunchyroll web player will load the next episode directly,
and thus won't trigger the scrobbling on the next episode. Only when leaving full screen,
it will jump to the new page of the currently watched episode.

That in turn means, if you start at episode one, it will probably still scrobble it, as you have gone to that particular episode page for watching it. But when you entered full screen mode there, watched all episodes up to say episode 5 and then leave the full screen, it will let the browser load the page for episode 5, and the scrobbler will scrobble this one. So in the end, you only scrobbled Ep1 and Ep5.

As mentioned, it's not really an issue, as it would still be tracked correctly on anilist (watched 5 episodes in the end), but if it was possible to track the other ones as well somehow, this would make it look better in status feeds, as the feed would say "AnukWolf (that's me btw ;)) watched episode 1-5 of.." instead of "AnukWolf watched episode 1" and "AnukWolf watched episode 5".

Detect if user is actually watching or just left the tab open

So today I noticed, when I had a crunchyroll video tab left open,
that the anilist-scrobbler still scrobbled the anime episode after 3/4 of the episodes time,
and a quick look into the source confirmed this.

While getting information from the flash player, say on Crunchyroll, is probably impossible,
I thought about a solution for this. Why not check every 10 seconds or so, or even every minute if audio and/or video is actually playing in the tab, and if not, pause the timeout for the time being?
This should work really well, since (I tested this on CR) chrome is really quick in updating the status (audio playing / not playing), so pausing and resuming the timeout based on that should be a fairly accurate way of scrobbling it just at the right time.

https://stackoverflow.com/questions/41649874/how-to-detect-if-a-chrome-tab-is-playing-audio presented a simple solution on how to check if anything is playing, so in theory, someone could simply alter the helpers.js code without having to write specific code for every site.
I might try that out later on, but I'm not too fond of ECMA 6 and all, so you're probably quicker than me ;)

Remove non-necessary vars & add a not logged in message

        if (typeof items['access_token'] == 'undefined') {
            isLoggedIn = false;
        } else {
            isLoggedIn = true;
        }
        if (isLoggedIn == true) {

This code is some of... weird, i written that when i was drunk i think :D, also add a message, e.g. "You must login to use Anilist Scrobbler, click here to login".

Wakanim DE

The Website is called Wakanim. Its already implemented BUT only the french Version.
I looked into the Source Code and found this line:
this.urlregex = /https:\/\/www.wakanim.tv\/fr\/v2\/catalogue\/episode\/([a-zA-Z0-9-]+)\/([a-zA-Z0-9-]+)/;

I think to get it work in germany it should "just" switch www.wakanim.tv\/fr to www.wakanim.tv\/de
The rest of the url should be the same
Example:
https://www.wakanim.tv/de/v2/catalogue/episode/8145/kaguya-sama-love-is-war-omu-staffel-1-folge-1-omu

Would be awesome if you can get this to work!

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.