Packaging for Mod Authors
Extra information for mod authors on maximizing compatibility with BeatVortex
BeatVortex is fully open-source! You can see the full code for the extension (including these docs) on GitHub. Community contributions, fixes and PRs are all welcome! That being said, please read the info below to make all of our lives a bit easier.
BeatVortex is made available under an MIT License. That means all contributions will also be licensed under the MIT License and all the conditions and limitations that involves.
To work with the BeatVortex code, you’ll only need Node.js (including a recent version of npm
) and TypeScript installed. Development so far has been done in Visual Studio Code, but any IDE that supports TypeScript should work just fine.
Since version 0.1.1, the code base is almost completely documented with tsdoc annotations!
Whether you are developing on the same machine that Beat Saber and Vortex are installed on or not, the easiest way I have found to work with this has been to install BeatVortex manually, then whenever I make a change simply drop my rebuilt index.js
into the game-beatsaber
folder and restart Vortex.
You can find Diagnostics Logs in the overflow menu at the top right of the Vortex window. There is also a Vortex extension that lets you open the DevTools window.
Note that all commits to, and pull requests against, the master
branch are automatically built as part of a GitHub Action. Please don’t add unnecessary changes to the Actions workflow without prior discussion.
BeatVortex is a community project, currently built and maintained by a single non-developer. As such, feature requests will be accepted, but I can’t provide any level of assurance that any requests will certainly be included. Also remember that we are limited to features that Vortex can reasonably support. Open an issue on GitHub to discuss viability of any requests.
For anyone who decides to wade into the BeatVortex code, there’s a few things worth remembering:
Extra information for mod authors on maximizing compatibility with BeatVortex
A deep dive into how BeatVortex handles the actual mod installation.
A deep dive into how BeatVortex handles mod dependencies.
How BeatVortex handles mod metadata and some extra features.
Translating BeatVortex’s interface elements.
Working with BeatVortex’s documentation and how to contribute.