# Tenebrous Sheets An open source character sheet service for tabletop roleplaying games. Currently under heavy development. ## Build Instructions These are very basic build instructions. They assume you already have cargo set up and installed. Building the application requires **Rust Nightly!** See [rustup documentation][rustup] for more, particularly the part about using [Rust Nightly][nightly]. ### Install Dependencies Install dependencies. The exact method depends on your OS. * sqlite3 and development headers (Void Linux: `xbps-install sqlite sqlite-devel`, Ubuntu: `apt install sqlite3 libsqlite3-dev`). * protoc: protocol buffers compiler. There is one baked into the build, so you should not need this unless you are not using Linux/Mac/Windows. ### Initial Setup Follow these instructions from the root of the repository. Set up database: ``` cargo install diesel_cli --no-default-features --features sqlite diesel setup diesel migration run ``` ### Run Application If you are using `rustup`, then it should automatically switch to the nightly version of Rust in this repository. This is because of the `rust-toolchain` file. Command line "instructions" to build and run the application: ``` cargo run ``` The sqlite database is currently always created in the same directory that `cargo run` was invoked from, so make sure you invoke it from the same place every time. [rustup]: https://rust-lang.github.io/rustup/index.html [nightly]: https://rust-lang.github.io/rustup/concepts/channels.html#working-with-nightly-rust