{"repo":"mohdmahmodi/splitflap.org","free":true,"listed":false,"github":"https://github.com/mohdmahmodi/splitflap.org","clone":"git clone https://github.com/mohdmahmodi/splitflap.org.git","description":"Open-source split-flap display for any screen. Pair your phone as a wireless remote. No frameworks, no build step.","language":"HTML","stars":31,"topics":["digital-signage","display","nodejs","open-source","realtime","self-hosted","solari-board","split-flap","vanilla-js","web-animations-api"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"splitflap.org Open-source split-flap display for any screen. Pair your phone. Control it wirelessly. Live Site · Self-Hosting Guide · Report Bug --- What is this A split-flap display that runs in a browser. The kind you used to see at train stations and airports. Open board.html on a TV, scan the QR code with your phone, and your phone becomes the wireless remote. Four files. One Node.js server, a board page, a phone companion, and a standalone design tool. No build step, no frameworks, and a weather.gov integration for live forecast mode. Features Display Engine Characters cycle through the spool sequentially (A, B, C... until they reach the target), the same way a real Solari board works. None of the random color-scramble nonsense that every other clone does. The animation runs on a single requestAnimationFrame loop that processes a sorted queue of actions. A full 22x5 board transition schedules roughly 3,000 actions and they all run off one rAF callback per frame, not thousands of individual setTimeout calls. Flap rotation uses the Web Animations API ( element.animate() ) so it runs on the compositor thread. The old approach of toggling CSS animations with offsetHeight reflow hacks is gone. Every cell also has contain: layout style paint so changing one flap's text doesn't trigger layout recalculation across the entire board. Sound comes from the Web Audio API. If you drop a click.wav in the public folder it plays the real recording with slight pitch randomization (±0.2) p","default_branch":null,"files":null,"tree":[],"storefront":"/r/mohdmahmodi","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mohdmahmodi/splitflap.org/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}