An open source scrobbler for the web. Just login and scrobble the track(s) you want! This tool lets you scrobble songs you heard on the radio, vinyls or at some place where you need to manually scrobble.
You may use it directly from here: https://openscrobbler.com/
What is scrobbling, you ask? It's tracking the music you listen to, using last.fm.
This tool is open source and free. You can support its development by becoming a Patron (you'll have a distinct identifier in the application and get a sneak peek into what's coming next! โจ )
Contributions and suggestions are welcome. If you want to work on a fix/feature I recommend you to open an issue (or comment on an existing one) before you start working so we can coordinate efforts.
Issues labeled with "help wanted" are perfect candidates!
Translating is very easy. Here's a short guide (if you get stuck let me know on Discord or open an issue).
- Fork this project if you haven't already, so you can edit it.
- Create a folder for your language in the locales directory, copying the files in
en
language. - Translate all the values in the JSON files (for example, in a line that says
"foo": "bar",
you should translate only thebar
part). - Add you language to the language list in
src/i18n.js
- Duplicate one hreflang tag in the index.html and modify it to fit your language.
- Once you are done, the only thing left is creating a pull request so it can be merged with the current code. :confetti:
- Fork this project if you haven't already, so you can edit it.
- Find the folder corresponding to your language in locales directory.
- Translate or modify the values you want in the JSON files in that directory.
- Create a pull request so it can be merged back into this repository. ๐
You'll need a Last.fm API account!
- Run
yarn
to download the required libraries. - Copy
.env
to.env.development.local
and fill in the required constants. - Docker and Docker Compose are required to run the API server locally.
Just start the application with yarn start
(it will launch both the API server and the React application).
A database debugging utility will be available on localhost:8080. All changes to the database schema must be added as migrations (use migration #1 as a guiding template) and remain backwards compatible. All new migrations are applied automatically in the development containers (just keep in mind that each migration runs only once, so you may need to manually revert any failed attempt).
The build
script should be enough! :)
One of the best things about open source is the great community around projects. The Open Scrobbler has several contributors and each one of them has made this tool better for everyone. Thanks to all of them!