End credits from "Portal" - the video game, recreated with JS and browser windows. 🍰
Find a file
Victor Westerlund 7a6ed67d92 Fix Monkeydo events and #3
Monkeydo events will now be executed through the Proxy created in 8b659066cc

This commit also implements a solution for #3 by having each window report to its PlayerManager when it has been closed.
2021-12-05 22:09:56 +01:00
assets Fix Monkeydo events and #3 2021-12-05 22:09:56 +01:00
.gitignore Add Monkeydo submodule 2021-10-31 13:08:11 +01:00
.gitmodules Update .gitmodules 2021-10-31 13:09:02 +01:00
index.html Fix Monkeydo events and #3 2021-12-05 22:09:56 +01:00
monkeydo_credits.json Semi-stable release (#1) 2021-10-31 12:40:49 +01:00
monkeydo_lyrics.json Fix Monkeydo events and #3 2021-12-05 22:09:56 +01:00
player.html Semi-stable release (#1) 2021-10-31 12:40:49 +01:00
README.md Update README.md 2021-11-01 00:23:31 +01:00
robots.txt Semi-stable release (#1) 2021-10-31 12:40:49 +01:00

Still Alive

The end credits song from the video game Portal
done with pure JavaScript, browser windows, and a lot of patience.

Take me to the demo 🍰

Known limitations

  • Time drifting (#2)
    The browser will throttle setTimeout() when it deems a page as low-priority (running in the background etc.). This will cause all visuals to fall behind the music and appear as delayed.
  • Windows blocked (#3)
    Pop-up blockers (built-in on most browsers) will prevent all- or some windows to open. You have to allow the page to "open multiple windows" in your browser for this demo to work.
  • Stacking windows on Chrome for Windows (the OS)
    Due to a bug in Chromium on Windows, browser windows will stack if the play button is clicked from a non-primary display.