Skip to content

Commit

Permalink
docs: readme
Browse files Browse the repository at this point in the history
  • Loading branch information
atty303 committed May 9, 2024
1 parent af74562 commit f1f33ca
Showing 1 changed file with 46 additions and 0 deletions.
46 changes: 46 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Path of Building Web

> [!WARNING]
> This project is under development.
This is online version of [Path of Building](https://pathofbuilding.community/).

## Development

### Prerequisites

- [Bun](https://bun.sh/)
- [Emscripten](https://emscripten.org/)
- [CMake](https://cmake.org/)
- [Ninja](https://ninja-build.org/)

### Run driver shell

Set up a development server for the PoB engine alone.

```bash
cd packages/driver
bun install
bun run build
bun dev
```

### Run web app

Set up a web application development server.
You need to build the driver first.

```bash
cd packages/web
bun install
bun dev
```

## Under the hood

- Running the original PoB Lua code with [few modifications for Lua 5.2](https://github.com/atty303/PathOfBuilding/tree/pob-web).
- Using Emscripten to compile the PoB engine to WebAssembly.
- A module equivalent to SimpleGraphic is written in C to bridge with the JS driver.
- The JS renderer renders using WebGL.
- `packages/driver` emulates PoB windows with vanilla JS.
- `packages/web` is the React application that uses the driver.

0 comments on commit f1f33ca

Please sign in to comment.