Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mtimkovich/slippi-db
🐸 Make sense of your gigabytes of Slippi files.
https://github.com/mtimkovich/slippi-db
peppi slippi ssbm
Last synced: 2 months ago
JSON representation
🐸 Make sense of your gigabytes of Slippi files.
- Host: GitHub
- URL: https://github.com/mtimkovich/slippi-db
- Owner: mtimkovich
- License: other
- Created: 2021-05-18T06:29:43.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-05-25T01:46:44.000Z (over 3 years ago)
- Last Synced: 2023-03-21T00:53:39.118Z (almost 2 years ago)
- Topics: peppi, slippi, ssbm
- Language: Rust
- Homepage:
- Size: 13.7 MB
- Stars: 19
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🐸 Slippi DB
Slippi DB ingests [Slippi replays][slippi] and puts the data into a SQLite database for easier parsing.
The primary goal of this project is to make it easier to analyze large amounts of Slippi data. Its end goal is to create something similar to [Ballchasing.com][ballchasing] but for Melee.
Written in [Rust][rust] using [Peppi][peppi], Slippi DB can parse gigabytes worth of Slippi files in a couple seconds.
## Usage
```
USAGE:
slippi-db [OPTIONS] ...ARGS:
... Directories to search for .slp files inFLAGS:
-h, --help Prints help information
-V, --version Prints version informationOPTIONS:
-o, --output-db Set output database file [default: slippi.db]
```## Installation
### Releases
The easiest way to install is to download the executable for your system from [releases](https://github.com/mtimkovich/slippi-db/releases).
### Compiling
```shell
$ git clone https://github.com/mtimkovich/slippi-db
$ cd slippi-db
$ cargo build --release
```## 🗒️ Examples
There's some examples of what is possible in the `examples/` directory. This is good starting point, especially if you're not familiar with SQL. These can be run via:
```shell
$ sqlite3 slippi.db < examples/hours_played.sql
```*If you come up with a cool query, make a PR and I'll add it to the examples!*
## 🚧 Roadmap
- [x] Write data to SQLite DB.
- [x] Check the filelist for new files.
- [x] Save player data.
- [x] Create more SQL examples.
- [x] Detect the winner(s).
- [x] Discard short matches (<30s).
- [x] Handle tiebreaks.
- [ ] Detect rage-quits and assign them losses.
- [x] Create releases.
- [ ] Create *even more* SQL examples.## Bug/Feature Requests
* [File an issue!](https://github.com/mtimkovich/slippi-db/issues)
* Twitter: [@DJSwerveGG][twitter][slippi]: https://github.com/project-slippi/slippi-wiki/blob/master/SPEC.md
[peppi]: https://github.com/hohav/peppi
[rust]: https://www.rust-lang.org/
[ballchasing]: https://ballchasing.com
[twitter]: https://twitter.com/DJSwerveGG## Contributors ✨
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!