31 lines
1.2 KiB
Markdown
31 lines
1.2 KiB
Markdown
# YouTube Maze
|
|
|
|
Some YouTube creators have made video-gamebooks during which viewers can make choices that influence the course of the narration.
|
|
This is generally implemented by breaking up the video into short interlinked segments.
|
|
This tool automatically generates a visual representation of networks underlying such games by automatically exploring the video maze starting from a root video.
|
|
|
|
[See it live →](https://youtube-maze.delab.re)
|
|
|
|
## How Does it Work?
|
|
|
|
The [algorithm](lib/explore.mjs) starts at the first video and explores the links recursively using a breadth-first search approach, keeping track of the links as it goes.
|
|
The [Graphviz](http://www.graphviz.org/) library is used to automatically lay out the graph so that as few edges cross as possible.
|
|
|
|
## Running Locally
|
|
|
|
You can also run the server locally, provided you have a working installation of Node.JS and Graphviz.
|
|
|
|
```
|
|
git clone https://forge.delab.re/matteo/youtube-maze.git
|
|
cd youtube-maze
|
|
npm install
|
|
npm start
|
|
```
|
|
|
|
If everything goes as planned, you should be able to access the server by opening `http://localhost:3000` in your browser.
|
|
|
|
## License
|
|
|
|
This software is made available under the MIT license.
|
|
[See the full license text →](LICENSE)
|