https://github.com/theatrejs/loader-reaper
⚙️ A Webpack Loader for Reaper files.
https://github.com/theatrejs/loader-reaper
2d canvas engine game game-engine html html5 javascript loader pixel-art reaper theatrejs theatrejs-loader webgl webgl2 webpack webpack-loader
Last synced: 3 months ago
JSON representation
⚙️ A Webpack Loader for Reaper files.
- Host: GitHub
- URL: https://github.com/theatrejs/loader-reaper
- Owner: theatrejs
- License: mit
- Created: 2025-03-10T07:55:28.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-03-22T16:01:43.000Z (4 months ago)
- Last Synced: 2026-03-23T07:08:08.260Z (4 months ago)
- Topics: 2d, canvas, engine, game, game-engine, html, html5, javascript, loader, pixel-art, reaper, theatrejs, theatrejs-loader, webgl, webgl2, webpack, webpack-loader
- Language: JavaScript
- Homepage:
- Size: 79.1 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/deformhead) [](https://github.com/theatrejs/loader-reaper/blob/master/LICENSE) [](https://www.npmjs.com/package/@theatrejs/loader-reaper/v/latest) [](https://www.npmjs.com/package/@theatrejs/loader-reaper/v/latest)
# Reaper Webpack Loader
> *⚙️ A Webpack Loader for Reaper files.*
## Installation
> *⚠️ This loader needs you to have [**Reaper**](https://www.reaper.fm) installed and configured so that it renders to `*.wav` format (default Reaper configuration).*
```shell
npm install @theatrejs/loader-reaper --save-dev
```
## Webpack Configuration
```javascript
{
'module': {
'rules': [
...
{
'test': /\.rpp$/,
'use': [
{
'loader': '@theatrejs/loader-reaper',
'options': {
'reaper': '' // The path to the Reaper executable.
}
}
]
}
...
]
}
}
```
## Quick Start
> *⚠️ This example does not include the preloading of assets.*
```javascript
import {Actor, Sound} from '@theatrejs/theatrejs';
import soundBreathe from './breathe.rpp';
class Hero extends Actor {
onCreate() {
this.addSound(
new Sound({
$audio: soundBreathe
})
);
}
}
```
## With Preloading
```javascript
import {FACTORIES, Sound} from '@theatrejs/theatrejs';
import soundBreathe from './breathe.rpp';
class Hero extends FACTORIES.ActorWithPreloadables([FACTORIES.PreloadableSound(soundBreathe)]) {
onCreate() {
this.addSound(
new Sound({
$audio: soundBreathe
})
);
}
}
```