Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/livesplit/livesplit-core
livesplit-core is a library that provides a lot of functionality for creating a speedrun timer.
https://github.com/livesplit/livesplit-core
android c csharp hacktoberfest ios java javascript library livesplit ruby rust speedrun speedrun-timer speedrunning timer
Last synced: 5 days ago
JSON representation
livesplit-core is a library that provides a lot of functionality for creating a speedrun timer.
- Host: GitHub
- URL: https://github.com/livesplit/livesplit-core
- Owner: LiveSplit
- License: apache-2.0
- Created: 2016-12-25T03:06:56.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-12-29T23:04:41.000Z (23 days ago)
- Last Synced: 2025-01-10T12:50:48.498Z (12 days ago)
- Topics: android, c, csharp, hacktoberfest, ios, java, javascript, library, livesplit, ruby, rust, speedrun, speedrun-timer, speedrunning, timer
- Language: Rust
- Homepage: https://livesplit.org/
- Size: 8.93 MB
- Stars: 212
- Watchers: 9
- Forks: 58
- Open Issues: 78
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE-APACHE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# livesplit-core
[![Build Status](https://github.com/LiveSplit/livesplit-core/workflows/Build/badge.svg)](https://github.com/LiveSplit/livesplit-core/actions)
[![crates.io](https://img.shields.io/crates/v/livesplit-core.svg)](https://crates.io/crates/livesplit-core)
[![npm](https://img.shields.io/npm/v/livesplit-core.svg)](https://www.npmjs.com/package/livesplit-core)
[![docs.rs](https://docs.rs/livesplit-core/badge.svg)](https://docs.rs/livesplit-core/)
[![dependency status](https://deps.rs/repo/github/LiveSplit/livesplit-core/status.svg)](https://deps.rs/repo/github/LiveSplit/livesplit-core)livesplit-core is a library that provides a lot of functionality for creating a
speedrun timer. It can be used directly from Rust. Additional bindings are
available for the following programming languages:- C
- C++
- C#
- Java with Java Native Access or Java Native Interface
- Kotlin with Java Native Interface
- Swift
- Ruby
- Python
- JavaScript + TypeScript for Node.js and WebAssemblyThe documentation is available here:
- [Rust Documentation](https://docs.rs/livesplit-core/)
- [TypeScript Documentation](https://livesplit.org/livesplit-core-docs/)## Projects using `livesplit-core`
- [LiveSplit One Web](https://github.com/LiveSplit/LiveSplitOne)
- [LiveSplit One Desktop Prototype](https://github.com/CryZe/livesplit-one-desktop)
- [LiveSplit One OBS Plugin](https://github.com/LiveSplit/obs-livesplit-one)
- [chronos Terminal Timer](https://github.com/DarkRTA/chronos)
- [annelid](https://github.com/dagit/annelid)
- [splits.io (Parsing)](https://splits.io)## Build Instructions
You can install Rust with the installer available on [rustup.rs](https://rustup.rs/).
Clone the repository and build the library with the following command:```bash
cargo build --release -p livesplit-core-capi
```The library will then be available as a shared and static library in the
`target` folder. If you only want to build the library as a shared or static
library, not both, you can run either one of the following commands:```bash
# Shared Library
cargo rustc --release -p livesplit-core-capi --crate-type cdylib
# Static Library
cargo rustc --release -p livesplit-core-capi --crate-type staticlib
```If you want to build the bindings for the library too, you need to go into the
`capi/bind_gen` folder and run the following command:```bash
cargo run
```The bindings will then be available in `capi/bindings`.
## Download
Builds for a lot of common platforms are available in the [Releases](https://github.com/LiveSplit/livesplit-core/releases).
## License
Licensed under either of
- Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or
http://www.apache.org/licenses/LICENSE-2.0)
- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
at your option.### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you shall be dual licensed as above, without any
additional terms or conditions.