• Stars
    star
    192
  • Rank 202,019 (Top 4 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

⚔️ Web-based viewer for Beat Saver maps, built with A-Frame and JavaScript.

beatsaver-viewer

Web-based viewer for BeatSaver maps, built with A-Frame and JavaScript.

CLICK TO VIEW

https://supermedium.com/beatsaver-viewer/?id=811-535&difficulty=Expert

The viewer works within a normal web browser and can be embedded on any webpage. It can also be previewed within VR headsets on browsers that support VR (e.g., Supermedium).

Featured on BeastSaber and the unofficial Beat Saber Songs site!

Usage

You can visit or link the viewer directly.

Or if you have a site, you can I-Frame the viewer and pass a query parameter containing the song ID and difficulty:

<iframe src="https://supermedium.com/beatsaver-viewer/?id=811-535&difficulty=Expert">

To directly preview a BeatSaver ZIP file, use the ?zip parameter in the URL:

https://supermedium.com/beatsaver-viewer/?zip={zipURL}

Note the ZIP must be served with CORS header. An easy way to do this is to prepend https://cors-anywhere.herokuapp.com/ to your ZIP URL:

https://supermedium.com/beatsaver-viewer/?zip=https://cors-anywhere.herokuapp.com/{YOUR_FULL_ZIP_URL}

To directly link to a seeked time, use the ?time parameter in the URL (seconds):

https://supermedium.com/beatsaver-viewer/?time=15

Roadmap

  • Safari support (BeatSaver currently serves OGGs which are not supported)
  • Custom saber viewer

Community

The BeatSaver viewer is an unofficial community project and not officially affiliated with Beat Saber.

It is adopted officially by the community on the Discord though, used as the official tool for sharing maps online and featured on BeastSaber:

Development

Built with A-Frame, a web framework that we created for building VR experiences. And JavaScript.

npm install
npm run start

Then head to localhost:9999 in your browser.