Multiplayer canvas tool with programmable brushes!
I've been (hotly) debating this with myself today and I _think_ this is the right decision for an app. note that I'm not changing the font size in the docs; that I think is valuable to have be user-controllable, but I'd really prefer if users would see the app the way _I_ design it to look |
||
|---|---|---|
| .cargo | ||
| admin | ||
| crates | ||
| docs | ||
| scripts | ||
| static | ||
| template | ||
| .editorconfig | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| Justfile | ||
| README.md | ||
| rkgk.toml | ||
rakugaki - digital multiplayer graffiti
rakugaki is a multiplayer paint canvas with programmable brushes!
At the heart of rakugaki is the brush - a little program for manipulating pixels on a wall. Brushes are written in a tiny programming language called haku.
I wanna try it out!
Since the app is currently in very early alpha stages, there's no public instance at the moment.
You're free to spin up a server for your friends though! Here's the setup procedure for production instances.
# As of writing this, 1.81 is not yet released, so we have to use Rust nightly.
rustup toolchain install nightly-2024-08-11
rustup default nightly-2024-08-11
rustup target add wasm32-unknown-unknown
# We use `just` to wrangle the process of building the client-side WebAssembly and the server.
cargo install just
# Now it's time to run the backend!
just port=8080 profile=release
Then, you can connect to localhost:8080 to see the app in action.
For development, I recommend using cargo watch for live reloading.
just defaults to a sensible development configuration.
If you need to override the port, use the port variable as shown above.
cargo install cargo-watch
cargo watch -- just