LiveSplit / livesplit-core

livesplit-core is a library that provides a lot of functionality for creating a speedrun timer.

Home Page:https://livesplit.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"Lite" release version

Californ1a opened this issue · comments

However much of the API is possible to be included in a static cdn file. Something that could just be loaded over unpkg, jsdelivr, etc. or at least able to be bundled with webpack/rollup/vite/etc. rather than needing to be run server-side. Primarily, the splits file parsing and editing, not necessarily any of the actual bindings to manipulate the timer itself. Would be great for frontend static/serverless sites that don't need all the timing stuff and just take in a splits file or multiple and parse them for timestamps, convert between formats, do stats, or otherwise edit the splits and save them back out.

It'd be awesome to be able to do splits file parsing and editing on something like github pages without needing to do raw XML parsing.

The thing is with wasm-bindgen you can already create exactly such a more lightweight library that in the end only contains parsing. We definitely want to integrate something like this into our binding generator where you can more directly choose what to generate, but that's not possible yet. I'm not sure if it makes sense for us to host all these different versions of livesplit-core somewhere. It probably makes more sense to just have the full package hosted somewhere and then allow anyone to customize their own lighter weight version with the binding generator.

commented

rather than needing to be run server-side.

I think its worth noting that you can opt to have the whole library on a GitHub Pages site and run it clientside. Nothing in livesplit-core's design demands that it be ran on a server, and in fact the web version of the timer runs entirely clientside with the server only being there to serve the files.