mirror of
https://github.com/isledecomp/isle.pizza.git
synced 2026-02-28 13:57:38 +00:00
2.7 KiB
2.7 KiB
isle.pizza Frontend
A custom web frontend for the Emscripten port of isle-portable, allowing LEGO Island to run directly in modern web browsers.
Requirements
Quick Start
-
Clone the repository:
git clone https://github.com/isledecomp/isle.pizza.git cd isle.pizza -
Install dependencies:
npm install -
Obtain the game files (
isle.jsandisle.wasm) by building the Emscripten version of isle-portable, then copy them to the project root. -
Start the development server:
npm run dev -
Open the URL shown in the terminal (usually
http://localhost:5173).
Scripts
| Command | Description |
|---|---|
npm run dev |
Start development server with hot reload |
npm run build |
Build for production (outputs to dist/) |
npm run preview |
Preview the production build locally |
Project Structure
isle.pizza/
├── src/
│ ├── App.svelte # Main application component
│ ├── app.css # Global styles
│ ├── stores.js # Svelte stores for state management
│ ├── core/ # Core modules (audio, OPFS, service worker, etc.)
│ └── lib/ # UI components
├── public/ # Static assets (images, fonts, PDFs)
├── scripts/ # Build scripts
├── src-sw/ # Service worker source
├── index.html # HTML entry point
├── isle.js # Emscripten JS (not in repo, build from isle-portable)
├── isle.wasm # Emscripten WASM (not in repo, build from isle-portable)
└── LEGO/ # Game data directory (not in repo)
Building the Game Files
The isle.js and isle.wasm files are not included in this repository. To obtain them:
- Follow the isle-portable build instructions for the Emscripten target
- Copy the resulting
isle.jsandisle.wasmto this project's root directory
Alternatively, a Docker image that bundles the runtime with this frontend is available.
Tech Stack
- Svelte 5 - UI framework
- Vite - Build tool and dev server
- Workbox - Service worker and offline support
License
See LICENSE for details.