From 5d0fbcd10777128cc889b2ee93797270fa34c262 Mon Sep 17 00:00:00 2001 From: Kiana Sheibani Date: Sat, 23 Sep 2023 03:37:22 -0400 Subject: [PATCH] Update documentation --- DETAILS.md | 3 +++ INSTALL.md | 35 +++++++++++++++++++++++++++++++++++ README.md | 20 ++++++++++++++++---- src/queries.rs | 2 +- 4 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 DETAILS.md create mode 100644 INSTALL.md diff --git a/DETAILS.md b/DETAILS.md new file mode 100644 index 0000000..d880a72 --- /dev/null +++ b/DETAILS.md @@ -0,0 +1,3 @@ +# DETAILS + +TODO diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..904e0a1 --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,35 @@ +# Installation + +## Step 1: Authentication Token + +In order to access start.gg's API, you must first have an authentication token +linked to your account. Instructions for generating one can be found in the +[developer API docs](https://developer.start.gg/docs/authentication). + +Once you have an auth token, it must be provided to StartGGElo. In order, the +program checks for a token in: + +- A command-line flag `--auth`. +- An environment variable `AUTH_TOKEN`, +- A file `auth.txt` within the config directory (see the [[README]] for a list + of directories in each OS). + +## Step 2: Dependencies + +StartGGElo is written in Rust, so install the [Rust +compiler](https://www.rust-lang.org/tools/install). + +In addition, StartGGElo needs these run-time dependencies: + +- [OpenSSL](https://www.openssl.org/) +- [SQLite](https://www.sqlite.org/) + +## Step 3: Compiling + +Once you have all the necessary dependencies, build and install StartGGElo by +running the following command: + +``` sh +cargo install --git https://github.com/kiana-S/StartGGElo +``` + diff --git a/README.md b/README.md index 3349973..8c5429e 100644 --- a/README.md +++ b/README.md @@ -6,23 +6,35 @@ generate and maintain [Elo ratings](https://wikipedia.org/wiki/Elo_rating_system Once Elo ratings are generated, StartGGElo can be used to generate ranking lists, predict the probability of a player winning a match, generate seedings for future tournaments, and more. -> **Note**
+> **Warning**
> StartGGElo is still under development; currently, it only supports generating player ratings. ## Installation -TODO +*For more information, see the [installation page](INSTALL.md).* + +Build and install StartGGElo using `cargo`: + +``` sh +cargo install --git https://github.com/kiana-S/StartGGElo +``` + +Alternatively, if you use Nix: + +``` sh +nix profile install github:kiana-S/StartGGElo +``` ## Configuration -StartGGElo stores its rating database in its config directory, which is located at: +StartGGElo stores its rating databases in its config directory, which is located at: - Windows: `%APPDATA%\Roaming\ggelo` - MacOS: `~/Library/Application Support/ggelo` - Linux: `~/.config/ggelo` This directory also contains StartGGElo's config file, which defines how it calculates its ratings. -There are few reasons to access this directory directory, but you can if you want to transfer your +There are few reasons to access this directory directly, but you can if you want to transfer your data between computers. ## Elo system basics diff --git a/src/queries.rs b/src/queries.rs index 2320b54..c4f6452 100644 --- a/src/queries.rs +++ b/src/queries.rs @@ -17,7 +17,7 @@ pub fn get_auth_key(config_dir: &Path) -> Option { use std::env::{var, VarError}; use std::fs::read_to_string; - match var("AUTH_KEY") { + match var("AUTH_TOKEN") { Ok(key) => Some(key), Err(VarError::NotUnicode(_)) => panic!("Invalid authorization key"), Err(VarError::NotPresent) => {