Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brendonovich/sceneify
The simplest way to control OBS from JavaScript
https://github.com/brendonovich/sceneify
javascript obs obs-websocket typescript
Last synced: 1 day ago
JSON representation
The simplest way to control OBS from JavaScript
- Host: GitHub
- URL: https://github.com/brendonovich/sceneify
- Owner: Brendonovich
- License: mit
- Created: 2021-09-11T16:34:34.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-10-04T08:34:20.000Z (almost 2 years ago)
- Last Synced: 2024-08-01T22:58:28.507Z (2 months ago)
- Topics: javascript, obs, obs-websocket, typescript
- Language: TypeScript
- Homepage: https://sceneify.brendonovich.dev
- Size: 2.23 MB
- Stars: 85
- Watchers: 3
- Forks: 4
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Sceneify
The easiest way to control OBS from JavaScript
Using `obs-websocket` can be difficult. Small manipulations of scenes and scene items are manageable, but keeping track of scenes, sources, settings, filters and more can quickly become a daunting task.
Sceneify aims to fix this. By working with `Scene`, `Source`, and `SceneItem` objects, you can have unparalleled control over your OBS layouts.
# Beta Warning
This library is not well tested and is still under heavy development. Feel free to use it, but make sure you make a backup of your scene collections before doing anything with Sceneify.
## Features
- Persistence across code reloads, so scenes and items aren't deleted and recreated each time you run your code
- `Scene`, `Source` and `SceneItem` are designed to be overridden, allowing for complex layouts to be abstracted into subclasses
- Easy integration into existing layouts with `Scene.link()`, allowing for incremental migration to Sceneify without handing over your entire layout to your code.