projectmoon 255b55c8de | ||
---|---|---|
proto | ||
src | ||
static/scripts | ||
templates | ||
.env | ||
.gitignore | ||
COPYING | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
Rocket.toml | ||
build.rs | ||
diesel.toml | ||
rust-toolchain | ||
sqlx-data.json |
README.md
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.
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 --version=0.2.0 sqlx-cli
cargo run --bin tenebrous-migrate
Run Application
If you are using rustup
, then it should automatically switch to the
stable 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 created in the directory cargo run
was
invoked from by default. You can also pass a path to a different
location as a single argument to the program.
Development
Development instructions.
To set up a local database, or run migrations, run:
cargo run --bin tenebrous-migrate
Database Queries and Migrations
When adding/updating a compile-checked query or a migration, you need to update the SQLx data JSON file:
cargo sqlx prepare -- --bin tenebrous