Extensions API
Integrating and extending Showcase from extensions
Showcase 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.
Vortex Showcase 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 Showcase 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.
There's currently very little tsdoc included, this will hopefully change in a future release
Whether you are developing on the same machine that Vortex is installed on or not, the easiest way I have found to work with this has been to install the extension manually, then whenever I make a change simply drop my rebuilt index.js
into the vortex-showcase
folder and restart Vortex. Also remember to update the template files in your target environment if you make any changes.
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.
Showcase 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.
I'd also like to maintain Showcase as game-independent as possible, so please don't open issues/PRs for very game-specific functionality. Ideally, I'll be extending the API that Showcase provides in future to allow for enhancing game-specific capabilities but this is a long way off.
For anyone who decides to wade into the Showcase code, there's a few things worth remembering:
Integrating and extending Showcase from extensions
Integrating and extending Showcase from extensions
Working with Showcase's documentation and how to contribute.