andrejilderda / beat-junkies-record-pool

A niche webapp to navigate through and manage your Beat Junkies record pool library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Beat Junkies Record Pool manager

A niche webapp to navigate and manage your Beat Junkies record pool library.

Features

  • πŸ”Ž Search by title and filter by genre + clean/dirty tracks*
  • πŸ—ƒοΈ Mark tracks as 'reviewed', 'queued' or 'downloaded' for easy management
  • πŸ“₯ Copy URL's of queued tracks for batch downloading**
  • ⌨️ Keyboard shortcuts
  • πŸ’Ώ Quick link to Spotify search
  • πŸ”… Dark & light mode

* Will filter out the other version when both a dirty and a clean version is available.

** You may want to use a download manager that accepts a list of links like this one.

Installation

This guide requires you have Node and npm installed.

  • Clone/download this repo and navigate to the folder in your CLI.
  • Install the dependencies by running npm install.
  • Start the server by running npm run start.
  • Open http://localhost:3000 to view it in the browser.

How to use

Add tracks to the download queue or mark as reviewed by using the buttons next to the track. The download queue you can access via the top right icon where you can copy the download links and mark the items as downloaded.

Keyboard shortcuts

You can quickly navigate through the library using the following keyboard shortcuts:

Action Shortcut
Play/pause current track Space
Select all Cmd/Ctrl+a
Clear selection Cmd/Ctrl+d / Escape
Skip 15 sec. ]
Rewind 15 sec. [
Play previous track Cmd/Ctrl+←
Play next track Cmd/Ctrl+β†’
Add selection to queue q
Mark selection as reviewed r
Mark selection as downloaded d
Reset selection Backspace

Scraping

The data is stored locally in crate.json. Since accessing the Record Pool requires authentication the scraping is done client-side via a simple script which can be found here.

About

A niche webapp to navigate through and manage your Beat Junkies record pool library


Languages

Language:TypeScript 85.4%Language:JavaScript 9.1%Language:CSS 4.0%Language:HTML 1.5%