Improve documentation
This commit is contained in:
parent
55f968ae35
commit
7bca436012
2 changed files with 29 additions and 1 deletions
8
Makefile
8
Makefile
|
@ -1,2 +1,8 @@
|
||||||
build:
|
build-rust:
|
||||||
wasm-pack build --target=web
|
wasm-pack build --target=web
|
||||||
|
|
||||||
|
build-ui:
|
||||||
|
rm -rf ui/dist ui/.parcel-cache
|
||||||
|
cd ui; npm run build
|
||||||
|
|
||||||
|
build-all: build-rust build-ui
|
22
README.md
Normal file
22
README.md
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# README
|
||||||
|
|
||||||
|
This repository contains the code for 'WordGrid', a (currently) single-player browser game where you use letter tiles to form words.
|
||||||
|
|
||||||
|
Game logic resides in `src/` as Rust code, which gets compiled into WebAssembly.
|
||||||
|
|
||||||
|
UI logic resides in `ui/src/`, which gets bundled by Parcel into the web application.
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
* Make sure you have [Node.js](https://nodejs.org/en) installed and [rustup and Cargo](https://www.rust-lang.org/learn/get-started).
|
||||||
|
|
||||||
|
1. Clone this repository.
|
||||||
|
2. If not already installed, install the Rust `wasm32-unknown-unknown` target with `rustup target add wasm32-unknown-unknown`.
|
||||||
|
3. In the base project directory, run `make build-all` to build both the Rust wasm project (gets stored in `pkg/`) and the final bundled web files (gets stored in `ui/dist/`).
|
||||||
|
4. Place the files in `ui/dist/` onto a web server and access them.
|
||||||
|
|
||||||
|
During development, you'll often want to serve the UI component in serve mode that auto-updates when you make a change. In the `ui/` directory you can run `npm run start`. Note that Parcel doesn't always detect changes to the compiled Rust code, so if you recompile the Rust code with changes you should delete `ui/.parcel-cache/` and `ui/dist/` or else the UI may continue to use older WASM.
|
||||||
|
|
||||||
|
## Future Plans
|
||||||
|
|
||||||
|
I intend on building a multiplayer component to this game, where the Rust code will form a webserver for connecting players and the UI will make server calls instead of calling web assembly.
|
Loading…
Reference in a new issue