Changes to clone419e0.togger.com

Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 26: class Togger {
- (params.get("v") ? "custom" : "") ||
+ (params.get("v") ? "customjam" : "") ||
Changed around line 160: class Togger {
- jams: "custom",
+ jams: "customjam",
Changed around line 544: class Togger {
+ this.player.seekTo(0, true);
Breck Yunits
Breck Yunits
1 month ago
404.scroll
Changed around line 1
- path = path.replace("watch?", "")
+ path = path.replace("watch?", "&")
Breck Yunits
Breck Yunits
1 month ago
404.scroll
Changed around line 1
- let path = window.location.pathname.slice(1).replace("/", "")
- path = path.replace("watch", "")
+ let path = window.location.href.split("/").pop()
+ path = path.replace("watch?", "")
Breck Yunits
Breck Yunits
1 month ago
404.scroll
Changed around line 1
- path = path.replace("/watch", "")
+ path = path.replace("watch", "")
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated 404.scroll
404.scroll
Changed around line 1
- const path = window.location.pathname.slice(1).replace("/", "")
+ let path = window.location.pathname.slice(1).replace("/", "")
+ path = path.replace("/watch", "")
root
root
1 month ago
Deleted caothicamhoa.scroll
channels/caothicamhoa.scroll
Changed around line 0
- ../channels.parsers
-
- id caothicamhoa
- youtube https://www.youtube.com/@caothicamhoa
- status removed
- channelid UCR7oT-IK597WWXXyVWANIGQ
- channeltitle CAO THI CẮM HOA
- jams sports
- neweststream YbLZXAeXRbQ
- chat true
- streamtime 2024-12-01T00:23:24.193Z
root
root
1 month ago
Deleted muoi_vlog.scroll
channels/muoi_vlog.scroll
Changed around line 0
- ../channels.parsers
-
- id muoi_vlog
- youtube https://www.youtube.com/@muoi_vlog
- status removed
- channelid UCwr6BV06xwB0WzfgFhmyaXA
- channeltitle Nhịp Sống Phương Nam
- jams sports
- neweststream 3dDBGYfQy54
- chat true
- streamtime 2024-12-01T00:23:24.260Z
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 761: This event fires if an error occurs in the player. The API will pass an event ob
- // if (event.data === 101 || event.data === 150)
- // togger.reportStatus("removed");
+ if (event.data === 101 || event.data === 150)
+ togger.reportStatus("removed");
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 761: This event fires if an error occurs in the player. The API will pass an event ob
- if (event.data === 101 || event.data === 150)
- togger.reportStatus("removed");
+ // if (event.data === 101 || event.data === 150)
+ // togger.reportStatus("removed");
ffff:182.2.164.113
ffff:182.2.164.113
1 month ago
updated channels/UCdRNCCz2FDwE7svh7sDuc2Q.scroll
channels/UCdRNCCz2FDwE7svh7sDuc2Q.scroll
Changed around line 2
- status live
+ status removed
ffff:34.209.112.47
ffff:34.209.112.47
1 month ago
updated channels/UCNlfGuzOAKM1sycPuM_QTHg.scroll
channels/UCNlfGuzOAKM1sycPuM_QTHg.scroll
Changed around line 2
- status live
+ status removed
ffff:34.209.112.47
ffff:34.209.112.47
1 month ago
updated channels/tvltrzcianka1.scroll
channels/tvltrzcianka1.scroll
Changed around line 2
- status live
+ status removed
ffff:34.209.112.47
ffff:34.209.112.47
1 month ago
updated channels/UCpDqi4cjYZ0UZYr_1Odhavg.scroll
channels/UCpDqi4cjYZ0UZYr_1Odhavg.scroll
Changed around line 2
- status live
+ status removed
ffff:34.209.112.47
ffff:34.209.112.47
1 month ago
updated channels/namibiacam.scroll
channels/namibiacam.scroll
Changed around line 2
- status live
+ status removed
ffff:107.131.166.16
ffff:107.131.166.16
1 month ago
updated channels/UCOVcAiUMS7RZ6RVUcrwAYXA.scroll
channels/UCOVcAiUMS7RZ6RVUcrwAYXA.scroll
Changed around line 2
- status live
+ status removed
ffff:74.134.135.81
ffff:74.134.135.81
1 month ago
updated channels/cmgriffing.scroll
channels/cmgriffing.scroll
Changed around line 3
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/cmgriffing.scroll
channels/cmgriffing.scroll
Changed around line 3
- status off
+ status live
- neweststream 3AX-OQwhbq4
+ neweststream RUSDcaEjQfg
Breck Yunits
Breck Yunits
1 month ago
channels.parsers
Changed around line 3: idParser
- cue togger
+ cue youtube
1
1
1 month ago
updated channels/madisonkanna.scroll
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=ASbY7CJAOAo code`
+ const data = `https://www.youtube.com/watch?v=2hhqrwC2rPw code`
channels/madisonkanna.scroll
Changed around line 1
+ ../channels.parsers
+
+ id madisonkanna
+ youtube https://www.youtube.com/@madisonkanna
+ status off
+ channelid UC_QwoMzVAnoV9K1yCtaVkXg
+ channeltitle Madison Kanna
+ jams code
+ neweststream 2hhqrwC2rPw
+ chat true
+ streamtime 2024-12-01T21:26:34.228Z
+ twitch https://www.twitch.tv/madisonlearning
+ homepage https://www.madisonkanna.com
+ twitter https://x.com/Madisonkanna
togger.js
Changed around line 354: class Togger {
+ if (this.isMuted)
+ this.unmute()
1
1
1 month ago
updated channels/t3dotgg.scroll
channels.parsers
Changed around line 2: idParser
- youtubeParser
+ toggerYoutubeParser
+ cue togger
channels/t3dotgg.scroll
Changed around line 2
- status live
+ status off
togger.js
Changed around line 156: class Togger {
- url: "https://www.youtube.com/watch?v=" + customVideoId,
+ youtube: "https://www.youtube.com/watch?v=" + customVideoId,
Breck Yunits
Breck Yunits
1 month ago
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=YNQrxMbU0-s fortnite
- https://www.youtube.com/watch?v=FanNoQg06w0 fortnite
- https://www.youtube.com/watch?v=_DvwMctBprc fortnite
- https://www.youtube.com/watch?v=wc9On7mGACk fortnite
- https://www.youtube.com/watch?v=As89fqmIuoA fortnite
- https://www.youtube.com/watch?v=UmPD6Moqulg fortnite
- https://www.youtube.com/watch?v=3Qtuh1uWldA fortnite
- https://www.youtube.com/watch?v=Z62OLrzE_tw fortnite
- https://www.youtube.com/watch?v=FKuxzJbWPVg fortnite`
+ const data = `https://www.youtube.com/watch?v=ASbY7CJAOAo code`
channels.parsers
Changed around line 2: idParser
- urlParser
+ youtubeParser
- description What is the URL to the channel?
+ description What is the URL to the YouTube channel?
channels/UC0e3QhIYukixgh5VVpKHH9Q.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC0e3QhIYukixgh5VVpKHH9Q
+ youtube https://www.youtube.com/channel/UC0e3QhIYukixgh5VVpKHH9Q
channels/UC14ap4T608Zz_Mz4eezhIqw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC14ap4T608Zz_Mz4eezhIqw
+ youtube https://www.youtube.com/channel/UC14ap4T608Zz_Mz4eezhIqw
channels/UC1fLEeYICmo3O9cUsqIi7HA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HA
+ youtube https://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HA
channels/UC29ju8bIPH5as8OGnQzwJyA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA
+ youtube https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA
channels/UC2D6eRvCeMtcF5OGHf1-trw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw
+ youtube https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw
channels/UC3EsPQp04deLlxQxc2b2__g.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC3EsPQp04deLlxQxc2b2__g
+ youtube https://www.youtube.com/channel/UC3EsPQp04deLlxQxc2b2__g
channels/UC46wWUso9H5KPQcoL9iE3Ug.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC46wWUso9H5KPQcoL9iE3Ug
+ youtube https://www.youtube.com/channel/UC46wWUso9H5KPQcoL9iE3Ug
channels/UC4JX40jDee_tINbkjycV4Sg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC4JX40jDee_tINbkjycV4Sg
+ youtube https://www.youtube.com/channel/UC4JX40jDee_tINbkjycV4Sg
channels/UC4L-dSrzbPoZcr1Av5GvwKw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC4L-dSrzbPoZcr1Av5GvwKw
+ youtube https://www.youtube.com/channel/UC4L-dSrzbPoZcr1Av5GvwKw
channels/UC5Sl4VbJELXi9SCaWbTdXfA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC5Sl4VbJELXi9SCaWbTdXfA
+ youtube https://www.youtube.com/channel/UC5Sl4VbJELXi9SCaWbTdXfA
channels/UC6Q2ZkwzOjbeMEhLJNpZKaA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC6Q2ZkwzOjbeMEhLJNpZKaA
+ youtube https://www.youtube.com/channel/UC6Q2ZkwzOjbeMEhLJNpZKaA
channels/UC8butISFwT-Wl7EV0hUK0BQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
+ youtube https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
channels/UC8gbWbcNNyb5-NIXvFklkOA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC8gbWbcNNyb5-NIXvFklkOA
+ youtube https://www.youtube.com/channel/UC8gbWbcNNyb5-NIXvFklkOA
channels/UC9-l6tK1cID43cvFE0tDQtA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC9-l6tK1cID43cvFE0tDQtA
+ youtube https://www.youtube.com/channel/UC9-l6tK1cID43cvFE0tDQtA
channels/UC9OM-qeiYIPtAkBe9veG5uw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC9OM-qeiYIPtAkBe9veG5uw
+ youtube https://www.youtube.com/channel/UC9OM-qeiYIPtAkBe9veG5uw
channels/UC9Yp2yz6-pwhQuPlIDV_mjA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UC9Yp2yz6-pwhQuPlIDV_mjA
+ youtube https://www.youtube.com/channel/UC9Yp2yz6-pwhQuPlIDV_mjA
channels/UCCHrTE-Z_GRWAUpnf1FVeGw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCCHrTE-Z_GRWAUpnf1FVeGw
+ youtube https://www.youtube.com/channel/UCCHrTE-Z_GRWAUpnf1FVeGw
channels/UCEyDPrWKqwWORC6TFTo4a-w.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCEyDPrWKqwWORC6TFTo4a-w
+ youtube https://www.youtube.com/channel/UCEyDPrWKqwWORC6TFTo4a-w
channels/UCFjM4SzH8zAvsC0azlStgaw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCFjM4SzH8zAvsC0azlStgaw
+ youtube https://www.youtube.com/channel/UCFjM4SzH8zAvsC0azlStgaw
channels/UCFzph9x-n9FR52BI94Zfgww.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCFzph9x-n9FR52BI94Zfgww
+ youtube https://www.youtube.com/channel/UCFzph9x-n9FR52BI94Zfgww
channels/UCGjd2P9By_xh0-UrGW3SaZw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCGjd2P9By_xh0-UrGW3SaZw
+ youtube https://www.youtube.com/channel/UCGjd2P9By_xh0-UrGW3SaZw
channels/UCJ35n3ueAN0cWvQqKptu-Zg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCJ35n3ueAN0cWvQqKptu-Zg
+ youtube https://www.youtube.com/channel/UCJ35n3ueAN0cWvQqKptu-Zg
channels/UCJhjE7wbdYAae1G25m0tHAA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCJhjE7wbdYAae1G25m0tHAA
+ youtube https://www.youtube.com/channel/UCJhjE7wbdYAae1G25m0tHAA
channels/UCKvKjZ3l9azWz4F49q2R3tQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCKvKjZ3l9azWz4F49q2R3tQ
+ youtube https://www.youtube.com/channel/UCKvKjZ3l9azWz4F49q2R3tQ
channels/UCLNgu_OupwoeESgtab33CCw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCLNgu_OupwoeESgtab33CCw
+ youtube https://www.youtube.com/channel/UCLNgu_OupwoeESgtab33CCw
channels/UCMv1mrz-j0iTVmHCFzMkZ_g.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCMv1mrz-j0iTVmHCFzMkZ_g
+ youtube https://www.youtube.com/channel/UCMv1mrz-j0iTVmHCFzMkZ_g
channels/UCNlfGuzOAKM1sycPuM_QTHg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCNlfGuzOAKM1sycPuM_QTHg
+ youtube https://www.youtube.com/channel/UCNlfGuzOAKM1sycPuM_QTHg
channels/UCOVcAiUMS7RZ6RVUcrwAYXA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCOVcAiUMS7RZ6RVUcrwAYXA
+ youtube https://www.youtube.com/channel/UCOVcAiUMS7RZ6RVUcrwAYXA
channels/UCSFB7Xy5Fa1pVVKP_CajIrw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCSFB7Xy5Fa1pVVKP_CajIrw
+ youtube https://www.youtube.com/channel/UCSFB7Xy5Fa1pVVKP_CajIrw
channels/UCSJ4gkVC6NrvII8umztf0Ow.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow
+ youtube https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow
channels/UCSJbGtTlrDami-tDGPUV9-w.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
+ youtube https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
channels/UCUc8mpd7aQROHAb-KxdoGww.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCUc8mpd7aQROHAb-KxdoGww
+ youtube https://www.youtube.com/channel/UCUc8mpd7aQROHAb-KxdoGww
channels/UCVX_4LoUm4mdZBPdpMJkkSQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCVX_4LoUm4mdZBPdpMJkkSQ
+ youtube https://www.youtube.com/channel/UCVX_4LoUm4mdZBPdpMJkkSQ
channels/UCXbXfisDHV_gDjawCKTyTIw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCXbXfisDHV_gDjawCKTyTIw
+ youtube https://www.youtube.com/channel/UCXbXfisDHV_gDjawCKTyTIw
channels/UCZR3-lM6Z-n5_UGHlwx_Rpw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCZR3-lM6Z-n5_UGHlwx_Rpw
+ youtube https://www.youtube.com/channel/UCZR3-lM6Z-n5_UGHlwx_Rpw
channels/UCaG0IHN1RMOZ4-U3wDXAkwA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCaG0IHN1RMOZ4-U3wDXAkwA
+ youtube https://www.youtube.com/channel/UCaG0IHN1RMOZ4-U3wDXAkwA
channels/UCb1ANUIW7arUUDI-Mwz65rw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCb1ANUIW7arUUDI-Mwz65rw
+ youtube https://www.youtube.com/channel/UCb1ANUIW7arUUDI-Mwz65rw
channels/UCbprhISv-0ReKPPyhf7-Dtw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCbprhISv-0ReKPPyhf7-Dtw
+ youtube https://www.youtube.com/channel/UCbprhISv-0ReKPPyhf7-Dtw
channels/UCdRNCCz2FDwE7svh7sDuc2Q.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCdRNCCz2FDwE7svh7sDuc2Q
+ youtube https://www.youtube.com/channel/UCdRNCCz2FDwE7svh7sDuc2Q
channels/UCdsNEJzi7vGVL0k1YDe2znA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCdsNEJzi7vGVL0k1YDe2znA
+ youtube https://www.youtube.com/channel/UCdsNEJzi7vGVL0k1YDe2znA
channels/UCeTVoczn9NOZA9blls3YgUg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCeTVoczn9NOZA9blls3YgUg
+ youtube https://www.youtube.com/channel/UCeTVoczn9NOZA9blls3YgUg
channels/UCetYFjkhf7S7LwiuJxeC28g.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCetYFjkhf7S7LwiuJxeC28g
+ youtube https://www.youtube.com/channel/UCetYFjkhf7S7LwiuJxeC28g
channels/UChIv2ovrTHbZDDIaLFR9P-Q.scroll
Changed around line 1
- url https://www.youtube.com/channel/UChIv2ovrTHbZDDIaLFR9P-Q
+ youtube https://www.youtube.com/channel/UChIv2ovrTHbZDDIaLFR9P-Q
channels/UCjkLYVF8Up8zt9ZQNLpR_TQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCjkLYVF8Up8zt9ZQNLpR_TQ
+ youtube https://www.youtube.com/channel/UCjkLYVF8Up8zt9ZQNLpR_TQ
channels/UCjzHeG1KWoonmf9d5KBvSiw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCjzHeG1KWoonmf9d5KBvSiw
+ youtube https://www.youtube.com/channel/UCjzHeG1KWoonmf9d5KBvSiw
channels/UCkFeoNSqYTa7trn75WM9tsg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCkFeoNSqYTa7trn75WM9tsg
+ youtube https://www.youtube.com/channel/UCkFeoNSqYTa7trn75WM9tsg
channels/UClBrT0ADeJnemAyp2EbzVFw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UClBrT0ADeJnemAyp2EbzVFw
+ youtube https://www.youtube.com/channel/UClBrT0ADeJnemAyp2EbzVFw
channels/UCmGU7IuCWuFRhM8WXvOEM4A.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCmGU7IuCWuFRhM8WXvOEM4A
+ youtube https://www.youtube.com/channel/UCmGU7IuCWuFRhM8WXvOEM4A
channels/UCmYuOrhYCw5K02OTuXTKGcA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCmYuOrhYCw5K02OTuXTKGcA
+ youtube https://www.youtube.com/channel/UCmYuOrhYCw5K02OTuXTKGcA
channels/UCmla4OjsAqsyAbjS5XYqfPg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCmla4OjsAqsyAbjS5XYqfPg
+ youtube https://www.youtube.com/channel/UCmla4OjsAqsyAbjS5XYqfPg
channels/UCnLjr0czO5zPsJYubbrvHCw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCnLjr0czO5zPsJYubbrvHCw
+ youtube https://www.youtube.com/channel/UCnLjr0czO5zPsJYubbrvHCw
channels/UCnejwhgQB5D_H7envJJgbXQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCnejwhgQB5D_H7envJJgbXQ
+ youtube https://www.youtube.com/channel/UCnejwhgQB5D_H7envJJgbXQ
channels/UCoOu4D7foJWfKvcDLxqrF2Q.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCoOu4D7foJWfKvcDLxqrF2Q
+ youtube https://www.youtube.com/channel/UCoOu4D7foJWfKvcDLxqrF2Q
channels/UCpDqi4cjYZ0UZYr_1Odhavg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCpDqi4cjYZ0UZYr_1Odhavg
+ youtube https://www.youtube.com/channel/UCpDqi4cjYZ0UZYr_1Odhavg
channels/UCqrILQNl5Ed9Dz6CGMyvMTQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCqrILQNl5Ed9Dz6CGMyvMTQ
+ youtube https://www.youtube.com/channel/UCqrILQNl5Ed9Dz6CGMyvMTQ
channels/UCsBjURrPoezykLs9EqgamOA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA
+ youtube https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA
channels/UCuJMRZh0c4jaQsE7IYpAqUA.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCuJMRZh0c4jaQsE7IYpAqUA
+ youtube https://www.youtube.com/channel/UCuJMRZh0c4jaQsE7IYpAqUA
channels/UCuPkgKp2-9zMuVIr-eAFjyw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCuPkgKp2-9zMuVIr-eAFjyw
+ youtube https://www.youtube.com/channel/UCuPkgKp2-9zMuVIr-eAFjyw
channels/UCwobzUc3z-0PrFpoRxNszXQ.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCwobzUc3z-0PrFpoRxNszXQ
+ youtube https://www.youtube.com/channel/UCwobzUc3z-0PrFpoRxNszXQ
channels/UCwqusr8YDwM-3mEYTDeJHzw.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCwqusr8YDwM-3mEYTDeJHzw
+ youtube https://www.youtube.com/channel/UCwqusr8YDwM-3mEYTDeJHzw
channels/UCy6A4u_9X_FyN3DZMLtwjUg.scroll
Changed around line 1
- url https://www.youtube.com/channel/UCy6A4u_9X_FyN3DZMLtwjUg
+ youtube https://www.youtube.com/channel/UCy6A4u_9X_FyN3DZMLtwjUg
channels/aesignage.scroll
Changed around line 1
- url https://www.youtube.com/@aesignage
+ youtube https://www.youtube.com/@aesignage
channels/airlinerslive.scroll
Changed around line 1
- url https://www.youtube.com/@airlinerslive
+ youtube https://www.youtube.com/@airlinerslive
channels/alistarot.scroll
Changed around line 1
- url https://www.youtube.com/@alistarot
+ youtube https://www.youtube.com/@alistarot
channels/alpinelodgingtelluride.scroll
Changed around line 1
- url https://www.youtube.com/@alpinelodgingtelluride
+ youtube https://www.youtube.com/@alpinelodgingtelluride
channels/ambientcinematics.scroll
Changed around line 1
- url https://www.youtube.com/@AmbientCinematics
+ youtube https://www.youtube.com/@AmbientCinematics
channels/austinstarot.scroll
Changed around line 1
- url https://www.youtube.com/@austinstarot
+ youtube https://www.youtube.com/@austinstarot
channels/bigbadbench.scroll
Changed around line 1
- url https://www.youtube.com/@BigBadBench
+ youtube https://www.youtube.com/@BigBadBench
channels/birderking.scroll
Changed around line 1
- url https://www.youtube.com/@birderking
+ youtube https://www.youtube.com/@birderking
channels/bitcoinliveyt.scroll
Changed around line 1
- url https://www.youtube.com/@bitcoinliveyt
+ youtube https://www.youtube.com/@bitcoinliveyt
channels/bitcoinunleashedwithov.scroll
Changed around line 1
- url https://www.youtube.com/@bitcoinunleashedwithov
+ youtube https://www.youtube.com/@bitcoinunleashedwithov
channels/breckyunits.scroll
Changed around line 1
- url https://www.youtube.com/@breckyunits
+ youtube https://www.youtube.com/@breckyunits
channels/brisbanelivestream.scroll
Changed around line 1
- url https://www.youtube.com/@brisbanelivestream
+ youtube https://www.youtube.com/@brisbanelivestream
channels/buenasnochesfarcaster.scroll
Changed around line 1
- url https://www.youtube.com/@BuenasNochesFarcaster
+ youtube https://www.youtube.com/@BuenasNochesFarcaster
channels/cafemusicbgmchannel.scroll
Changed around line 1
- url https://www.youtube.com/@cafemusicbgmchannel
+ youtube https://www.youtube.com/@cafemusicbgmchannel
channels/caothicamhoa.scroll
Changed around line 1
- url https://www.youtube.com/@caothicamhoa
+ youtube https://www.youtube.com/@caothicamhoa
channels/chartprime.scroll
Changed around line 1
- url https://www.youtube.com/@chartprime
+ youtube https://www.youtube.com/@chartprime
channels/chocolatesundaes.scroll
Changed around line 1
- url https://www.youtube.com/@ChocolateSundaes
+ youtube https://www.youtube.com/@ChocolateSundaes
channels/chrisgo.scroll
Changed around line 1
- url https://www.youtube.com/@chrisgo
+ youtube https://www.youtube.com/@chrisgo
channels/cmgriffing.scroll
Changed around line 1
- url https://www.youtube.com/@cmgriffing
+ youtube https://www.youtube.com/@cmgriffing
channels/cookinghawaiianstyletv.scroll
Changed around line 1
- url https://www.youtube.com/@cookinghawaiianstyletv
+ youtube https://www.youtube.com/@cookinghawaiianstyletv
channels/crypto_wenmoon.scroll
Changed around line 1
- url https://www.youtube.com/@Crypto_WenMoon
+ youtube https://www.youtube.com/@Crypto_WenMoon
channels/cryptochimp8606.scroll
Changed around line 1
- url https://www.youtube.com/@cryptochimp8606
+ youtube https://www.youtube.com/@cryptochimp8606
channels/cryptomiki.scroll
Changed around line 1
- url https://www.youtube.com/@cryptomiki
+ youtube https://www.youtube.com/@cryptomiki
channels/davidconnelly.scroll
Changed around line 1
- url https://www.youtube.com/@davidconnelly
+ youtube https://www.youtube.com/@davidconnelly
channels/dawufi.scroll
Changed around line 1
- url https://www.youtube.com/@dawufi
+ youtube https://www.youtube.com/@dawufi
channels/dumdummakegame.scroll
Changed around line 1
- url https://www.youtube.com/@DumDumMakeGame
+ youtube https://www.youtube.com/@DumDumMakeGame
channels/dustybc.scroll
Changed around line 1
- url https://www.youtube.com/@dustybc
+ youtube https://www.youtube.com/@dustybc
channels/dylsteck.scroll
Changed around line 1
- url https://www.youtube.com/@dylsteck
+ youtube https://www.youtube.com/@dylsteck
channels/earthcam.scroll
Changed around line 1
- url https://www.youtube.com/@earthcam
+ youtube https://www.youtube.com/@earthcam
channels/earthtv.scroll
Changed around line 1
- url https://www.youtube.com/@earthtv
+ youtube https://www.youtube.com/@earthtv
channels/eatreadloveinc.scroll
Changed around line 1
- url https://www.youtube.com/@eatreadloveinc
+ youtube https://www.youtube.com/@eatreadloveinc
channels/exploreafrica.scroll
Changed around line 1
- url https://www.youtube.com/@exploreafrica
+ youtube https://www.youtube.com/@exploreafrica
channels/explorebears.scroll
Changed around line 1
- url https://www.youtube.com/@explorebears
+ youtube https://www.youtube.com/@explorebears
channels/explorelivenaturecams.scroll
Changed around line 1
- url https://www.youtube.com/@explorelivenaturecams
+ youtube https://www.youtube.com/@explorelivenaturecams
channels/exploreoceans.scroll
Changed around line 1
- url https://www.youtube.com/@exploreoceans
+ youtube https://www.youtube.com/@exploreoceans
channels/faceprep.scroll
Changed around line 1
- url https://www.youtube.com/@faceprep
+ youtube https://www.youtube.com/@faceprep
channels/farcasterxyz.scroll
Changed around line 1
- url https://www.youtube.com/@farcasterxyz
+ youtube https://www.youtube.com/@farcasterxyz
channels/flightfocus365.scroll
Changed around line 1
- url https://www.youtube.com/@flightfocus365
+ youtube https://www.youtube.com/@flightfocus365
channels/forexcryptolive.scroll
Changed around line 1
- url https://www.youtube.com/@forexcryptolive
+ youtube https://www.youtube.com/@forexcryptolive
channels/forexlia.scroll
Changed around line 1
- url https://www.youtube.com/@forexlia
+ youtube https://www.youtube.com/@forexlia
channels/ghostninja.scroll
Changed around line 1
- url https://www.youtube.com/@ghostninja
+ youtube https://www.youtube.com/@ghostninja
channels/gmfarcaster.scroll
Changed around line 1
- url https://www.youtube.com/@GMFarcaster
+ youtube https://www.youtube.com/@GMFarcaster
channels/happyhappygal.scroll
Changed around line 1
- url https://www.youtube.com/@happyhappygal
+ youtube https://www.youtube.com/@happyhappygal
channels/hollywoodflch78.scroll
Changed around line 1
- url https://www.youtube.com/@hollywoodflch78
+ youtube https://www.youtube.com/@hollywoodflch78
channels/homewebserver.scroll
Changed around line 1
- url https://www.youtube.com/@HomeWebServer
+ youtube https://www.youtube.com/@HomeWebServer
channels/jaydyer.scroll
Changed around line 1
- url https://www.youtube.com/@jaydyer
+ youtube https://www.youtube.com/@jaydyer
channels/joshuaweissman.scroll
Changed around line 1
- url https://www.youtube.com/@joshuaweissman
+ youtube https://www.youtube.com/@joshuaweissman
channels/kabukistarship.scroll
Changed around line 1
- url https://www.youtube.com/@KabukiStarship
+ youtube https://www.youtube.com/@KabukiStarship
channels/lieblingsrezepte5955.scroll
Changed around line 1
- url https://www.youtube.com/@lieblingsrezepte5955
+ youtube https://www.youtube.com/@lieblingsrezepte5955
channels/livebookmap.scroll
Changed around line 1
- url https://www.youtube.com/@livebookmap
+ youtube https://www.youtube.com/@livebookmap
channels/lolnetwork.scroll
Changed around line 1
- url https://www.youtube.com/@LOLNetwork
+ youtube https://www.youtube.com/@LOLNetwork
channels/losfomos.scroll
Changed around line 1
- url https://www.youtube.com/@LosFomos
+ youtube https://www.youtube.com/@LosFomos
channels/magnimindacademy.scroll
Changed around line 1
- url https://www.youtube.com/@MagnimindAcademy
+ youtube https://www.youtube.com/@MagnimindAcademy
channels/marekrogalski.scroll
Changed around line 1
- url https://www.youtube.com/@marekrogalski
+ youtube https://www.youtube.com/@marekrogalski
channels/mariadeseo3191.scroll
Changed around line 1
- url https://www.youtube.com/@mariadeseo3191
+ youtube https://www.youtube.com/@mariadeseo3191
channels/marticlues.scroll
Changed around line 1
- url https://www.youtube.com/@marticlues
+ youtube https://www.youtube.com/@marticlues
channels/menwiththepot.scroll
Changed around line 1
- url https://www.youtube.com/@menwiththepot
+ youtube https://www.youtube.com/@menwiththepot
channels/minnowpondtarot.scroll
Changed around line 1
- url https://www.youtube.com/@minnowpondtarot
+ youtube https://www.youtube.com/@minnowpondtarot
channels/mrnigelng.scroll
Changed around line 1
- url https://www.youtube.com/@mrnigelng
+ youtube https://www.youtube.com/@mrnigelng
channels/muoi_vlog.scroll
Changed around line 1
- url https://www.youtube.com/@muoi_vlog
+ youtube https://www.youtube.com/@muoi_vlog
channels/namibiacam.scroll
Changed around line 1
- url https://www.youtube.com/@namibiacam
+ youtube https://www.youtube.com/@namibiacam
channels/nasaspaceflight.scroll
Changed around line 1
- url https://www.youtube.com/@nasaspaceflight
+ youtube https://www.youtube.com/@nasaspaceflight
channels/nature-live.scroll
Changed around line 1
- url https://www.youtube.com/@nature-live
+ youtube https://www.youtube.com/@nature-live
channels/netfoundation.scroll
Changed around line 1
- url https://www.youtube.com/@NETFoundation
+ youtube https://www.youtube.com/@NETFoundation
channels/nickdigiovanni.scroll
Changed around line 1
- url https://www.youtube.com/@nickdigiovanni
+ youtube https://www.youtube.com/@nickdigiovanni
channels/okbangershow.scroll
Changed around line 1
- url https://www.youtube.com/@okbangershow
+ youtube https://www.youtube.com/@okbangershow
channels/omglivetv1.scroll
Changed around line 1
- url https://www.youtube.com/@omglivetv1
+ youtube https://www.youtube.com/@omglivetv1
channels/packapuncher.scroll
Changed around line 1
- url https://www.youtube.com/@packapuncher
+ youtube https://www.youtube.com/@packapuncher
channels/piratesoftware.scroll
Changed around line 1
- url https://www.youtube.com/@PirateSoftware
+ youtube https://www.youtube.com/@PirateSoftware
channels/programmer-network.scroll
Changed around line 1
- url https://www.youtube.com/@programmer-network
+ youtube https://www.youtube.com/@programmer-network
channels/rainsoundnatural2612.scroll
Changed around line 1
- url https://www.youtube.com/@rainsoundnatural2612
+ youtube https://www.youtube.com/@rainsoundnatural2612
channels/rawstartup.scroll
Changed around line 1
- url https://www.youtube.com/@RawStartup
+ youtube https://www.youtube.com/@RawStartup
channels/redsquirrelstudios.scroll
Changed around line 1
- url https://www.youtube.com/@redsquirrelstudios
+ youtube https://www.youtube.com/@redsquirrelstudios
channels/relaxjazzcafe1990.scroll
Changed around line 1
- url https://www.youtube.com/@relaxjazzcafe1990
+ youtube https://www.youtube.com/@relaxjazzcafe1990
channels/rinaadventurealltime.scroll
Changed around line 1
- url https://www.youtube.com/@rinaadventurealltime
+ youtube https://www.youtube.com/@rinaadventurealltime
channels/robingaming88.scroll
Changed around line 1
- url https://www.youtube.com/@robingaming88
+ youtube https://www.youtube.com/@robingaming88
channels/seejamaica.scroll
Changed around line 1
- url https://www.youtube.com/@seejamaica
+ youtube https://www.youtube.com/@seejamaica
channels/shopwithme_tetevlogs.scroll
Changed around line 1
- url https://www.youtube.com/@shopwithme_tetevlogs
+ youtube https://www.youtube.com/@shopwithme_tetevlogs
channels/shufflegamer.scroll
Changed around line 1
- url https://www.youtube.com/@shufflegamer
+ youtube https://www.youtube.com/@shufflegamer
channels/smoothjazzmusicbgm..scroll
Changed around line 1
- url https://www.youtube.com/@smoothjazzmusicbgm.
+ youtube https://www.youtube.com/@smoothjazzmusicbgm.
channels/solentships.scroll
Changed around line 1
- url https://www.youtube.com/@solentships
+ youtube https://www.youtube.com/@solentships
channels/soulfulrevolution.scroll
Changed around line 1
- url https://www.youtube.com/@soulfulrevolution
+ youtube https://www.youtube.com/@soulfulrevolution
channels/streamtimelive.scroll
Changed around line 1
- url https://www.youtube.com/@streamtimelive
+ youtube https://www.youtube.com/@streamtimelive
channels/swan_bitcoin.scroll
Changed around line 1
- url https://www.youtube.com/@swan_bitcoin
+ youtube https://www.youtube.com/@swan_bitcoin
channels/sypherpk.scroll
Changed around line 1
- url https://www.youtube.com/@sypherpk
+ youtube https://www.youtube.com/@sypherpk
channels/t3dotgg.scroll
Changed around line 1
+ ../channels.parsers
+
+ id t3dotgg
+ youtube https://www.youtube.com/@t3dotgg
+ status live
+ channelid UCbRP3c757lWg9M-U7TyEkXA
+ channeltitle Theo - t3․gg
+ jams code
+ neweststream ASbY7CJAOAo
+ chat true
+ streamtime 2024-12-01T21:17:10.352Z
+ twitter https://x.com/theo
+ homepage https://t3.gg
+ github https://github.com/t3dotgg
+ twitch https://www.twitch.tv/theo
channels/tametheark.scroll
Changed around line 1
- url https://www.youtube.com/@tametheark
+ youtube https://www.youtube.com/@tametheark
channels/teleportcamera.scroll
Changed around line 1
- url https://www.youtube.com/@teleportcamera
+ youtube https://www.youtube.com/@teleportcamera
channels/theprimetimeagen.scroll
Changed around line 1
- url https://www.youtube.com/@ThePrimeTimeagen
+ youtube https://www.youtube.com/@ThePrimeTimeagen
channels/therealsamuiwebcam.scroll
Changed around line 1
- url https://www.youtube.com/@therealsamuiwebcam
+ youtube https://www.youtube.com/@therealsamuiwebcam
channels/tieuvandailylife156.scroll
Changed around line 1
- url https://www.youtube.com/@tieuvandailylife156
+ youtube https://www.youtube.com/@tieuvandailylife156
channels/tranquiljazzvibes-24.scroll
Changed around line 1
- url https://www.youtube.com/@tranquiljazzvibes-24
+ youtube https://www.youtube.com/@tranquiljazzvibes-24
channels/tvltrzcianka1.scroll
Changed around line 1
- url https://www.youtube.com/@tvltrzcianka1
+ youtube https://www.youtube.com/@tvltrzcianka1
channels/typicalgamer.scroll
Changed around line 1
- url https://www.youtube.com/@typicalgamer
+ youtube https://www.youtube.com/@typicalgamer
channels/useip.scroll
Changed around line 1
- url https://www.youtube.com/@useip
+ youtube https://www.youtube.com/@useip
channels/velvetbb.scroll
Changed around line 1
- url https://www.youtube.com/@velvetbb
+ youtube https://www.youtube.com/@velvetbb
channels/virtualrailfan.scroll
Changed around line 1
- url https://www.youtube.com/@virtualrailfan
+ youtube https://www.youtube.com/@virtualrailfan
channels/webcamgreece.scroll
Changed around line 1
- url https://www.youtube.com/@webcamgreece
+ youtube https://www.youtube.com/@webcamgreece
channels/webcamsydney.scroll
Changed around line 1
- url https://www.youtube.com/@webcamsydney
+ youtube https://www.youtube.com/@webcamsydney
channels/wolfofbaystreet.scroll
Changed around line 1
- url https://www.youtube.com/@wolfofbaystreet
+ youtube https://www.youtube.com/@wolfofbaystreet
channels/xrpgen.scroll
Changed around line 1
- url https://www.youtube.com/@xrpgen
+ youtube https://www.youtube.com/@xrpgen
togger.js
Changed around line 440: class Togger {
- url: (link) =>
- ``,
youtube.mjs
Changed around line 290: class YouTubeFeed {
- url https://www.youtube.com/@${channelHandle}
+ youtube https://www.youtube.com/@${channelHandle}
ffff:94.204.14.96
ffff:94.204.14.96
1 month ago
updated channels/birderking.scroll
channels/birderking.scroll
Changed around line 2
- status live
+ status removed
Breck Yunits
Breck Yunits
1 month ago
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/cmgriffing.scroll
channels/cmgriffing.scroll
Changed around line 10: jams code
+ twitter https://x.com/cmgriffing
+ github https://github.com/cmgriffing/git-machine
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 322: class Togger {
- if (this.currentChannel.status === "removed") return this.nextChannel();
+ //if (this.currentChannel.status === "removed") return this.nextChannel();
- if (this.currentChannel.status === "removed") return this.previousChannel();
+ //if (this.currentChannel.status === "removed") return this.previousChannel();
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated togger.js
togger.js
Changed around line 1
- let staticNoise = document.querySelector(".staticNoise")
- let powerScreen = document.querySelector(".powerScreen")
- const lodash = _
+ let staticNoise = document.querySelector(".staticNoise");
+ let powerScreen = document.querySelector(".powerScreen");
+ const lodash = _;
- const defaultJam = "all"
+ const defaultJam = "all";
- [platform, channeltitle.replace(/\s+/g, "")].join(".")
+ [platform, channeltitle.replace(/\s+/g, "")].join(".");
- this.isRemoteVisible = true // Add this line near the top
+ this.isRemoteVisible = true; // Add this line near the top
Changed around line 18: class Togger {
- )
- this.jamNames.sort()
- const params = new URLSearchParams(window.location.search)
+ );
+ this.jamNames.sort();
+ const params = new URLSearchParams(window.location.search);
- defaultJam
+ defaultJam;
- if (startJam === "coding")
- startJam = "code"
+ if (startJam === "coding") startJam = "code";
- this.jamIndexes = {}
+ this.jamIndexes = {};
- this.jamIndexes[name] = 0
- })
+ this.jamIndexes[name] = 0;
+ });
- this.loadStreams(startJam)
- if (params.get("shuffle")) this.shuffle()
- this.currentIndex = this.getInitialIndex()
+ this.loadStreams(startJam);
+ if (params.get("shuffle")) this.shuffle();
+ this.currentIndex = this.getInitialIndex();
- this.jamIndexes[this.jamName] = this.currentIndex
+ this.jamIndexes[this.jamName] = this.currentIndex;
- this.isPoweredOn = true
- this.isMuted = true
- this.bindKeyboardControls()
- this.createChatOverlay()
+ this.isPoweredOn = true;
+ this.isMuted = true;
+ this.bindKeyboardControls();
+ this.createChatOverlay();
- const overlay = document.createElement("div")
- overlay.className = "chat-overlay"
+ const overlay = document.createElement("div");
+ overlay.className = "chat-overlay";
Changed around line 63: class Togger {
- `
+ `;
- const header = document.createElement("div")
+ const header = document.createElement("div");
Changed around line 76: class Togger {
- `
- header.textContent = "Live Chat"
+ `;
+ header.textContent = "Live Chat";
- const closeButton = document.createElement("button")
+ const closeButton = document.createElement("button");
Changed around line 91: class Togger {
- `
- closeButton.textContent = "×"
- closeButton.addEventListener("click", () => this.toggleChat())
+ `;
+ closeButton.textContent = "×";
+ closeButton.addEventListener("click", () => this.toggleChat());
- const chatFrame = document.createElement("iframe")
+ const chatFrame = document.createElement("iframe");
- `
+ `;
- header.appendChild(closeButton)
- overlay.appendChild(header)
- overlay.appendChild(chatFrame)
- document.body.appendChild(overlay)
+ header.appendChild(closeButton);
+ overlay.appendChild(header);
+ overlay.appendChild(chatFrame);
+ document.body.appendChild(overlay);
- this.chatOverlay = overlay
- this.chatFrame = chatFrame
- this.addRemoteControl()
+ this.chatOverlay = overlay;
+ this.chatFrame = chatFrame;
+ this.addRemoteControl();
- this.isChatVisible = !this.isChatVisible
- const indicator = document.querySelector(".indicator")
+ this.isChatVisible = !this.isChatVisible;
+ const indicator = document.querySelector(".indicator");
- this.chatOverlay.style.display = "block"
- this.updateChatUrl()
- indicator.style.right = "420px" // 400px chat width + 20px original padding
+ this.chatOverlay.style.display = "block";
+ this.updateChatUrl();
+ indicator.style.right = "420px"; // 400px chat width + 20px original padding
- this.chatOverlay.style.display = "none"
- indicator.style.right = "20px"
+ this.chatOverlay.style.display = "none";
+ indicator.style.right = "20px";
- this.resizePlayer()
- this.showIndicator(this.isChatVisible ? "Chat: ON" : "Chat: OFF")
+ this.resizePlayer();
+ this.showIndicator(this.isChatVisible ? "Chat: ON" : "Chat: OFF");
Changed around line 136: class Togger {
- window.location.hostname
+ window.location.hostname;
- this.isRemoteVisible = !this.isRemoteVisible
- const remote = document.querySelector(".remote-control")
+ this.isRemoteVisible = !this.isRemoteVisible;
+ const remote = document.querySelector(".remote-control");
- remote.style.display = this.isRemoteVisible ? "block" : "none"
+ remote.style.display = this.isRemoteVisible ? "block" : "none";
- this.showIndicator(this.isRemoteVisible ? "Remote: ON" : "Remote: OFF")
+ this.showIndicator(this.isRemoteVisible ? "Remote: ON" : "Remote: OFF");
- const params = new URLSearchParams(window.location.search)
- const customVideoId = params.get("v")
- if (!customVideoId) return ""
+ const params = new URLSearchParams(window.location.search);
+ const customVideoId = params.get("v");
+ if (!customVideoId) return "";
Changed around line 162: class Togger {
- })
+ });
- _channels
+ _channels;
- if (this._channels) return this._channels
- this._channels = sorted.slice()
+ if (this._channels) return this._channels;
+ this._channels = sorted.slice();
- channel.jams += " all"
- })
- this.maybeAddCustomChannel()
- return this._channels
+ channel.jams += " all";
+ });
+ this.maybeAddCustomChannel();
+ return this._channels;
- return this.jamNames.indexOf(this.jamName)
+ return this.jamNames.indexOf(this.jamName);
- this.jamIndexes[this.jamName] = this.currentIndex
+ this.jamIndexes[this.jamName] = this.currentIndex;
- const { jamNames, jamIndex } = this
- const jamName = jamNames[(jamIndex + 1) % jamNames.length]
- this.loadStreams(jamName)
+ const { jamNames, jamIndex } = this;
+ const jamName = jamNames[(jamIndex + 1) % jamNames.length];
+ this.loadStreams(jamName);
- this.currentIndex = this.jamIndexes[jamName]
- this.playStream()
+ this.currentIndex = this.jamIndexes[jamName];
+ this.playStream();
- this.jamIndexes[this.jamName] = this.currentIndex
+ this.jamIndexes[this.jamName] = this.currentIndex;
- const { jamNames, jamIndex } = this
+ const { jamNames, jamIndex } = this;
- jamNames[
- (jamIndex - 1 + jamNames.length) % jamNames.length
- ]
- this.loadStreams(jamName)
+ jamNames[(jamIndex - 1 + jamNames.length) % jamNames.length];
+ this.loadStreams(jamName);
- this.currentIndex = this.jamIndexes[jamName]
- this.playStream()
+ this.currentIndex = this.jamIndexes[jamName];
+ this.playStream();
- const { jamNames } = this
- if (!jamNames.includes(jamName)) jamName = defaultJam
- this.jamName = jamName
- return this.channels.filter((c) => c.jams?.includes(jamName))
+ const { jamNames } = this;
+ if (!jamNames.includes(jamName)) jamName = defaultJam;
+ this.jamName = jamName;
+ return this.channels.filter((c) => c.jams?.includes(jamName));
- let streams = this.getJam(jamName)
+ let streams = this.getJam(jamName);
- const channeltitle = item.channeltitle
- const platform = "youtube"
+ const channeltitle = item.channeltitle;
+ const platform = "youtube";
- }
- })
+ };
+ });
- )
+ );
- this.streams = lodash.sortBy(this.streams, "status")
+ this.streams = lodash.sortBy(this.streams, "status");
- )
+ );
- this.streams = streams
+ this.streams = streams;
- const params = new URLSearchParams(window.location.search)
- const deepLink = params.get("channel") || params.get("c")
- if (!deepLink) return 0
+ const params = new URLSearchParams(window.location.search);
+ const deepLink = params.get("channel") || params.get("c");
+ if (!deepLink) return 0;
- const hit = this.streams.findIndex((stream) => stream.deepLink === deepLink)
- return hit > -1 ? hit : 0
+ const hit = this.streams.findIndex(
+ (stream) => stream.deepLink === deepLink,
+ );
+ return hit > -1 ? hit : 0;
- this.player = player
+ this.player = player;
- setTimeout(() => this.showVolumeIndicator(), 1000)
+ setTimeout(() => this.showVolumeIndicator(), 1000);
- window.addEventListener("resize", () => this.resizePlayer(), true)
+ window.addEventListener("resize", () => this.resizePlayer(), true);
- this.streams = lodash.shuffle(this.streams)
+ this.streams = lodash.shuffle(this.streams);
- this.previousChannel()
- break
+ this.previousChannel();
+ break;
- this.nextChannel()
- break
+ this.nextChannel();
+ break;
- this.nextJam()
- break
+ this.nextJam();
+ break;
- this.previousJam()
- break
+ this.previousJam();
+ break;
- )
- break
+ );
+ break;
- this.toggleMute()
- break
+ this.toggleMute();
+ break;
- this.togglePower()
- break
+ this.togglePower();
+ break;
- this.toggleChat()
- break
+ this.toggleChat();
+ break;
- this.decreaseVolume()
- break
+ this.decreaseVolume();
+ break;
- this.increaseVolume()
- break
+ this.increaseVolume();
+ break;
- this.toggleRemote()
- break
+ this.toggleRemote();
+ break;
- this.shuffle()
- this.nextChannel()
- break
+ this.shuffle();
+ this.nextChannel();
+ break;
- })
+ });
- return this.streams[this.currentIndex]
+ return this.streams[this.currentIndex];
- this.currentIndex = (this.currentIndex + 1) % this.streams.length
- if (this.currentChannel.status === "removed") return this.nextChannel()
- this.playStream()
+ this.currentIndex = (this.currentIndex + 1) % this.streams.length;
+ if (this.currentChannel.status === "removed") return this.nextChannel();
+ this.playStream();
- (this.currentIndex - 1 + this.streams.length) % this.streams.length
- if (this.currentChannel.status === "removed") return this.previousChannel()
- this.playStream()
+ (this.currentIndex - 1 + this.streams.length) % this.streams.length;
+ if (this.currentChannel.status === "removed") return this.previousChannel();
+ this.playStream();
- volume = 100
+ volume = 100;
- const { volume, isMuted } = this
- this.showIndicator(isMuted ? "MUTED" : `Volume: ${volume}`)
+ const { volume, isMuted } = this;
+ this.showIndicator(isMuted ? "MUTED" : `Volume: ${volume}`);
- const indicator = document.querySelector(".indicator")
- indicator.textContent = message
- indicator.style.display = "block"
+ const indicator = document.querySelector(".indicator");
+ indicator.textContent = message;
+ indicator.style.display = "block";
- if (this.indicatorTimeout) clearTimeout(this.indicatorTimeout)
+ if (this.indicatorTimeout) clearTimeout(this.indicatorTimeout);
- indicator.style.display = "none"
- }, 3000)
+ indicator.style.display = "none";
+ }, 3000);
- let delta = 20
- if (this.volume === 0) delta = 1
- if (this.volume === 1) delta = 4
- if (this.volume === 5) delta = 5
- if (this.volume === 10) delta = 10
- this.volume = Math.min(100, this.volume + delta)
- this.player.setVolume(this.volume)
- this.showVolumeIndicator()
+ let delta = 20;
+ if (this.volume === 0) delta = 1;
+ if (this.volume === 1) delta = 4;
+ if (this.volume === 5) delta = 5;
+ if (this.volume === 10) delta = 10;
+ this.volume = Math.min(100, this.volume + delta);
+ this.player.setVolume(this.volume);
+ this.showVolumeIndicator();
- let delta = 20
- if (this.volume === 20) delta = 10
- if (this.volume === 10) delta = 5
- if (this.volume === 5) delta = 4
- this.volume = Math.min(100, Math.max(0, this.volume - delta))
- this.player.setVolume(this.volume)
- this.showVolumeIndicator()
+ let delta = 20;
+ if (this.volume === 20) delta = 10;
+ if (this.volume === 10) delta = 5;
+ if (this.volume === 5) delta = 4;
+ this.volume = Math.min(100, Math.max(0, this.volume - delta));
+ this.player.setVolume(this.volume);
+ this.showVolumeIndicator();
- this.isMuted = false
- this.player.unMute()
+ this.isMuted = false;
+ this.player.unMute();
- this.isMuted = true
- this.player.mute()
+ this.isMuted = true;
+ this.player.mute();
- if (this.isMuted) this.unmute()
- else this.mute()
- this.showVolumeIndicator()
+ if (this.isMuted) this.unmute();
+ else this.mute();
+ this.showVolumeIndicator();
- if (this.isPoweredOn) this.powerOff()
- else this.powerOn()
+ if (this.isPoweredOn) this.powerOff();
+ else this.powerOn();
- if (!this.isPoweredOn) return
- this.didLoad = false
+ if (!this.isPoweredOn) return;
+ this.didLoad = false;
- const current = this.currentChannel
- this.updateChannelTitle()
+ const current = this.currentChannel;
+ this.updateChannelTitle();
- this.player.mute()
- this.player.loadVideoById(current.streamLink)
- this.player.setVolume(this.volume)
- this.player.setPlaybackRate(1)
- this.updateChatUrl()
+ this.player.mute();
+ this.player.loadVideoById(current.streamLink);
+ this.player.setVolume(this.volume);
+ this.player.setPlaybackRate(1);
+ this.updateChatUrl();
- this.updateUrl()
+ this.updateUrl();
- this.startUpdatingUrl = true
+ this.startUpdatingUrl = true;
- const params = new URLSearchParams(window.location.search)
+ const params = new URLSearchParams(window.location.search);
- params.delete("c")
- params.delete("p")
- params.set("channel", this.currentChannel.deepLink)
- params.set("jam", this.jamName)
+ params.delete("c");
+ params.delete("p");
+ params.set("channel", this.currentChannel.deepLink);
+ params.set("jam", this.jamName);
- window.history.replaceState({}, "", `?${params.toString()}`)
+ window.history.replaceState({}, "", `?${params.toString()}`);
- const current = this.streams[this.currentIndex]
- let liveIndicator = "↺"
+ const current = this.streams[this.currentIndex];
+ let liveIndicator = "↺";
- : '- OFF-AIR'
+ : '- OFF-AIR';
- const url = `https://www.youtube.com/watch?v=${current.neweststream}`
- const title = [this.jamName, current.channeltitle].join(".")
+ const url = `https://www.youtube.com/watch?v=${current.neweststream}`;
+ const title = [this.jamName, current.channeltitle].join(".");
Changed around line 450: class Togger {
- }
+ };
- .join(" ")
+ .join(" ");
- `
- this.showChannel()
+ `;
+ this.showChannel();
- const indicator = document.querySelector(".channelName")
- indicator.style.opacity = "1"
+ const indicator = document.querySelector(".channelName");
+ indicator.style.opacity = "1";
- if (this.channelTimeout) clearTimeout(this.channelTimeout)
+ if (this.channelTimeout) clearTimeout(this.channelTimeout);
- indicator.style.opacity = "0"
- }, 5000)
+ indicator.style.opacity = "0";
+ }, 5000);
- let p = document.querySelector("#player")
- p.style.top = -window.innerHeight * 0.5 + "px"
+ let p = document.querySelector("#player");
+ p.style.top = -window.innerHeight * 0.5 + "px";
- : window.innerWidth
+ : window.innerWidth;
- "px"
+ "px";
- )
+ );
- this.isPoweredOn = true
- if (powerScreen) powerScreen.style.display = "none"
- this.playStream()
+ this.isPoweredOn = true;
+ if (powerScreen) powerScreen.style.display = "none";
+ this.playStream();
- this.isPoweredOn = false
- if (powerScreen) powerScreen.style.display = "block"
- this.player.stopVideo()
- staticNoise.style.opacity = 1
+ this.isPoweredOn = false;
+ if (powerScreen) powerScreen.style.display = "block";
+ this.player.stopVideo();
+ staticNoise.style.opacity = 1;
- const current = this.streams[this.currentIndex]
+ const current = this.streams[this.currentIndex];
- return this.player.playerInfo.videoData.isLive
+ return this.player.playerInfo.videoData.isLive;
- const now = new Date()
- const totalMinutes = now.getUTCHours() * 60 + now.getUTCMinutes()
- const totalSeconds = totalMinutes * 60 + now.getUTCSeconds()
+ const now = new Date();
+ const totalMinutes = now.getUTCHours() * 60 + now.getUTCMinutes();
+ const totalSeconds = totalMinutes * 60 + now.getUTCSeconds();
- return totalSeconds % duration
+ return totalSeconds % duration;
- return totalSeconds
+ return totalSeconds;
- if (!this.isPoweredOn) return
+ if (!this.isPoweredOn) return;
- staticNoise.style.opacity = 1
+ staticNoise.style.opacity = 1;
Changed around line 544: class Togger {
- const videoData = this.player.getVideoData()
- const isLive = this.checkIfLive()
- if (this.didLoad || isLive) staticNoise.style.opacity = 0
+ const videoData = this.player.getVideoData();
+ const isLive = this.checkIfLive();
+ if (this.didLoad || isLive) staticNoise.style.opacity = 0;
- const duration = this.player.getDuration()
- const seekPosition = this.getTimeBasedSeekPosition(duration)
- this.player.seekTo(seekPosition, true)
+ const duration = this.player.getDuration();
+ const seekPosition = this.getTimeBasedSeekPosition(duration);
+ this.player.seekTo(seekPosition, true);
- this.player.unMute()
+ this.player.unMute();
- this.didLoad = true
+ this.didLoad = true;
- this.reportStatus("off")
+ this.reportStatus("off");
- this.reportStatus("live")
+ this.reportStatus("live");
- this.updateChannelTitle(isLive)
+ this.updateChannelTitle(isLive);
Changed around line 578: class Togger {
- this.currentChannel.status = value
- const filename = `channels/${this.currentChannel.id}.scroll`
+ this.currentChannel.status = value;
+ const filename = `channels/${this.currentChannel.id}.scroll`;
Changed around line 588: class Togger {
- )
+ );
- throw new Error(`HTTP error! status: ${response.status}`)
+ throw new Error(`HTTP error! status: ${response.status}`);
- console.error("Error reporting channel offline:", error)
+ console.error("Error reporting channel offline:", error);
- this.playStream() // Start playing as soon as the player is ready
- document.querySelector(".mute").focus()
+ this.playStream(); // Start playing as soon as the player is ready
+ document.querySelector(".mute").focus();
- const existingRemote = document.querySelector(".remote-control")
+ const existingRemote = document.querySelector(".remote-control");
- existingRemote.remove()
+ existingRemote.remove();
- const remote = document.createElement("div")
- remote.className = "remote-control"
- remote.style.display = this.isRemoteVisible ? "block" : "none"
+ const remote = document.createElement("div");
+ remote.className = "remote-control";
+ remote.style.display = this.isRemoteVisible ? "block" : "none";
- const dragHandle = document.createElement("div")
- dragHandle.className = "drag-handle"
- remote.appendChild(dragHandle)
+ const dragHandle = document.createElement("div");
+ dragHandle.className = "drag-handle";
+ remote.appendChild(dragHandle);
- const irEmitter = document.createElement("div")
- irEmitter.className = "ir-emitter"
- remote.appendChild(irEmitter)
+ const irEmitter = document.createElement("div");
+ irEmitter.className = "ir-emitter";
+ remote.appendChild(irEmitter);
- const button = document.createElement("button")
- const classes = []
- if (options.isMute) classes.push("mute")
- button.className = classes.join(" ")
- button.textContent = text
+ const button = document.createElement("button");
+ const classes = [];
+ if (options.isMute) classes.push("mute");
+ button.className = classes.join(" ");
+ button.textContent = text;
- button.style.transform = "scale(0.95)"
- setTimeout(() => (button.style.transform = ""), 100)
- document.dispatchEvent(new KeyboardEvent("keydown", { key }))
- })
+ button.style.transform = "scale(0.95)";
+ setTimeout(() => (button.style.transform = ""), 100);
+ document.dispatchEvent(new KeyboardEvent("keydown", { key }));
+ });
- return button
+ return button;
- const row = document.createElement("div")
- row.className = "button-row"
- buttons.forEach((button) => row.appendChild(button))
- return row
+ const row = document.createElement("div");
+ row.className = "button-row";
+ buttons.forEach((button) => row.appendChild(button));
+ return row;
- ])
- remote.appendChild(muteRow)
-
- const channelRow = createButtonRow([
- createButton("CH-", "ArrowLeft"),
- createButton("CH+", "ArrowRight"),
- ])
- remote.appendChild(channelRow)
+ ]);
+ remote.appendChild(muteRow);
- ])
- remote.appendChild(jamRow)
+ ]);
+ remote.appendChild(jamRow);
+
+ const channelRow = createButtonRow([
+ createButton("CH-", "ArrowLeft"),
+ createButton("CH+", "ArrowRight"),
+ ]);
+ remote.appendChild(channelRow);
- ])
- remote.appendChild(volumeControlRow)
+ ]);
+ remote.appendChild(volumeControlRow);
- const chatRow = createButtonRow([createButton("CHAT", "c")])
- remote.appendChild(chatRow)
+ const chatRow = createButtonRow([createButton("CHAT", "c")]);
+ remote.appendChild(chatRow);
- document.body.appendChild(remote)
+ document.body.appendChild(remote);
- let isDragging = false
- let currentX, currentY, initialX, initialY
+ let isDragging = false;
+ let currentX, currentY, initialX, initialY;
- yOffset = 0
+ yOffset = 0;
- initialX = e.touches[0].clientX - xOffset
- initialY = e.touches[0].clientY - yOffset
+ initialX = e.touches[0].clientX - xOffset;
+ initialY = e.touches[0].clientY - yOffset;
- initialX = e.clientX - xOffset
- initialY = e.clientY - yOffset
+ initialX = e.clientX - xOffset;
+ initialY = e.clientY - yOffset;
- isDragging = true
+ isDragging = true;
- initialX = currentX
- initialY = currentY
- isDragging = false
+ initialX = currentX;
+ initialY = currentY;
+ isDragging = false;
- e.preventDefault()
+ e.preventDefault();
- currentX = e.touches[0].clientX - initialX
- currentY = e.touches[0].clientY - initialY
+ currentX = e.touches[0].clientX - initialX;
+ currentY = e.touches[0].clientY - initialY;
- currentX = e.clientX - initialX
- currentY = e.clientY - initialY
+ currentX = e.clientX - initialX;
+ currentY = e.clientY - initialY;
- xOffset = currentX
- yOffset = currentY
- remote.style.transform = `translate(${xOffset}px, ${yOffset}px)`
+ xOffset = currentX;
+ yOffset = currentY;
+ remote.style.transform = `translate(${xOffset}px, ${yOffset}px)`;
- remote.addEventListener("touchstart", dragStart, false)
- remote.addEventListener("touchend", dragEnd, false)
- remote.addEventListener("touchmove", drag, false)
- remote.addEventListener("mousedown", dragStart, false)
- document.addEventListener("mouseup", dragEnd, false)
- document.addEventListener("mousemove", drag, false)
+ remote.addEventListener("touchstart", dragStart, false);
+ remote.addEventListener("touchend", dragEnd, false);
+ remote.addEventListener("touchmove", drag, false);
+ remote.addEventListener("mousedown", dragStart, false);
+ document.addEventListener("mouseup", dragEnd, false);
+ document.addEventListener("mousemove", drag, false);
- const togger = new Togger()
+ const togger = new Togger();
Changed around line 752: This event fires if an error occurs in the player. The API will pass an event ob
- 150 – This error is the same as 101. It's just a 101 error in disguise!`)
- console.error(event)
+ 150 – This error is the same as 101. It's just a 101 error in disguise!`);
+ console.error(event);
- togger.reportStatus("removed")
+ togger.reportStatus("removed");
- })
+ });
- togger.setPlayer(player)
- togger.resizePlayer()
- togger.bindToResize()
- window.togger = togger
+ togger.setPlayer(player);
+ togger.resizePlayer();
+ togger.bindToResize();
+ window.togger = togger;
- var scriptUrl = "https://www.youtube.com/iframe_api"
- var tag = document.createElement("script")
- tag.src = scriptUrl
- var firstScriptTag = document.getElementsByTagName("script")[0]
- firstScriptTag.parentNode.insertBefore(tag, firstScriptTag)
+ var scriptUrl = "https://www.youtube.com/iframe_api";
+ var tag = document.createElement("script");
+ tag.src = scriptUrl;
+ var firstScriptTag = document.getElementsByTagName("script")[0];
+ firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/ghostninja.scroll
channels/ghostninja.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated 404.scroll
404.scroll
Changed around line 1
- if (path) window.location.href = `/?p=${path}`
+ if (path) window.location.href = `/?jam=${path}`
Breck Yunits
Breck Yunits
1 month ago
channels.parsers
Changed around line 36: streamtimeParser
- description What is their Warpcast name?
+ description What is their Warpcast url?
+ float sortIndex 1.6
+ githubParser
+ extends abstractStringMeasureParser
+ description What is their Github url?
- description What is their Twitter name?
+ description What is their Twitter url?
channels/breckyunits.scroll
Changed around line 12: viewCount 11
- twitter https://twitter.com/breckyunits
+ twitter https://twitter.com/breckyunits
+ github https://github.com/breck7
channels/theprimetimeagen.scroll
Changed around line 13: viewerCount 1501
- twitch https://www.twitch.tv/theprimeagen
+ twitch https://www.twitch.tv/theprimeagen
+ github https://github.com/ThePrimeagen
github.png
togger.js
Changed around line 449: class Togger {
+ github: (link) =>
+ ``,
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/theprimetimeagen.scroll
channels/theprimetimeagen.scroll
Changed around line 12: likeCount 983
+ twitter https://x.com/ThePrimeagen
+ twitch https://www.twitch.tv/theprimeagen
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/theprimetimeagen.scroll
channels/theprimetimeagen.scroll
Changed around line 2
- status off
+ status live
- neweststream ELEJqqhKb3s
+ neweststream 57u2NtltzlM
Breck Yunits
Breck Yunits
1 month ago
index.scroll
Changed around line 1
- title Togger - It's not TV, it's Togger.
+ title Togger - Jam Together
landing.html
Changed around line 3
- Togger - It's not TV, it's Togger
+ Togger - Jam Together
package.json
Changed around line 1
- "description": "> It's not TV, it's Togger.",
+ "description": "Jam Together",
readme.md
Changed around line 1
- > It's not TV, it's Togger.
+ > Jam Together
Changed around line 40: Contributions, issues, and feature requests are welcome!
- Made possible by https://warpcast.com/phil, https://warpcast.com/benersing, and
- https://warpcast.com/christin.
+ Made possible by https://warpcast.com/phil, https://warpcast.com/benersing, and
+ https://warpcast.com/christin.
togger.js
Changed around line 655: class Togger {
- createButton("NET-", "ArrowDown"),
- createButton("NET+", "ArrowUp"),
+ createButton("JAM-", "ArrowDown"),
+ createButton("JAM+", "ArrowUp"),
1
1
1 month ago
updated channels/typicalgamer.scroll
addchannel.mjs
Changed around line 32: https://www.youtube.com/watch?v=Z62OLrzE_tw fortnite
- const [url, networks] = line.split(" ")
- yt.createChannelFile(url, networks)
+ const [url, jams] = line.split(" ")
+ yt.createChannelFile(url, jams)
channels.parsers
Changed around line 22: statusParser
- networksParser
+ jamsParser
- description Which networks does this belong to?
+ description Which jams does this belong to?
channels/UC0e3QhIYukixgh5VVpKHH9Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UC0e3QhIYukixgh5VVpKHH9Q
- networks code
+ jams code
channels/UC14ap4T608Zz_Mz4eezhIqw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC14ap4T608Zz_Mz4eezhIqw
- networks ambience
+ jams ambience
channels/UC1fLEeYICmo3O9cUsqIi7HA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HA
- networks code
+ jams code
channels/UC29ju8bIPH5as8OGnQzwJyA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA
- networks code
+ jams code
channels/UC2D6eRvCeMtcF5OGHf1-trw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw
- networks code
+ jams code
channels/UC3EsPQp04deLlxQxc2b2__g.scroll
Changed around line 5: url https://www.youtube.com/channel/UC3EsPQp04deLlxQxc2b2__g
- networks ambience
+ jams ambience
channels/UC46wWUso9H5KPQcoL9iE3Ug.scroll
Changed around line 5: url https://www.youtube.com/channel/UC46wWUso9H5KPQcoL9iE3Ug
- networks code
+ jams code
channels/UC4JX40jDee_tINbkjycV4Sg.scroll
Changed around line 5: url https://www.youtube.com/channel/UC4JX40jDee_tINbkjycV4Sg
- networks code
+ jams code
channels/UC4L-dSrzbPoZcr1Av5GvwKw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC4L-dSrzbPoZcr1Av5GvwKw
- networks ambience
+ jams ambience
channels/UC5Sl4VbJELXi9SCaWbTdXfA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC5Sl4VbJELXi9SCaWbTdXfA
- networks ambience
+ jams ambience
channels/UC6Q2ZkwzOjbeMEhLJNpZKaA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC6Q2ZkwzOjbeMEhLJNpZKaA
- networks ambience
+ jams ambience
channels/UC8butISFwT-Wl7EV0hUK0BQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
- networks code
+ jams code
channels/UC8gbWbcNNyb5-NIXvFklkOA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC8gbWbcNNyb5-NIXvFklkOA
- networks science
+ jams science
channels/UC9-l6tK1cID43cvFE0tDQtA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9-l6tK1cID43cvFE0tDQtA
- networks ambience
+ jams ambience
channels/UC9OM-qeiYIPtAkBe9veG5uw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9OM-qeiYIPtAkBe9veG5uw
- networks science
+ jams science
channels/UC9Yp2yz6-pwhQuPlIDV_mjA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9Yp2yz6-pwhQuPlIDV_mjA
- networks code
+ jams code
channels/UCCHrTE-Z_GRWAUpnf1FVeGw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCCHrTE-Z_GRWAUpnf1FVeGw
- networks science
+ jams science
channels/UCEyDPrWKqwWORC6TFTo4a-w.scroll
Changed around line 5: url https://www.youtube.com/channel/UCEyDPrWKqwWORC6TFTo4a-w
- networks ambience
+ jams ambience
channels/UCFjM4SzH8zAvsC0azlStgaw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCFjM4SzH8zAvsC0azlStgaw
- networks ambience
+ jams ambience
channels/UCFzph9x-n9FR52BI94Zfgww.scroll
Changed around line 5: url https://www.youtube.com/channel/UCFzph9x-n9FR52BI94Zfgww
- networks science
+ jams science
channels/UCGjd2P9By_xh0-UrGW3SaZw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCGjd2P9By_xh0-UrGW3SaZw
- networks ambience
+ jams ambience
channels/UCJ35n3ueAN0cWvQqKptu-Zg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCJ35n3ueAN0cWvQqKptu-Zg
- networks ambience
+ jams ambience
channels/UCJhjE7wbdYAae1G25m0tHAA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCJhjE7wbdYAae1G25m0tHAA
- networks ambience
+ jams ambience
channels/UCKvKjZ3l9azWz4F49q2R3tQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCKvKjZ3l9azWz4F49q2R3tQ
- networks ambience
+ jams ambience
channels/UCLNgu_OupwoeESgtab33CCw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCLNgu_OupwoeESgtab33CCw
- networks code
+ jams code
channels/UCMv1mrz-j0iTVmHCFzMkZ_g.scroll
Changed around line 5: url https://www.youtube.com/channel/UCMv1mrz-j0iTVmHCFzMkZ_g
- networks science
+ jams science
channels/UCNlfGuzOAKM1sycPuM_QTHg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCNlfGuzOAKM1sycPuM_QTHg
- networks ambience
+ jams ambience
channels/UCOVcAiUMS7RZ6RVUcrwAYXA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCOVcAiUMS7RZ6RVUcrwAYXA
- networks ambience
+ jams ambience
channels/UCSFB7Xy5Fa1pVVKP_CajIrw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSFB7Xy5Fa1pVVKP_CajIrw
- networks ambience
+ jams ambience
channels/UCSJ4gkVC6NrvII8umztf0Ow.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow
- networks ambience
+ jams ambience
channels/UCSJbGtTlrDami-tDGPUV9-w.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
- networks code
+ jams code
channels/UCUc8mpd7aQROHAb-KxdoGww.scroll
Changed around line 5: url https://www.youtube.com/channel/UCUc8mpd7aQROHAb-KxdoGww
- networks ambience
+ jams ambience
channels/UCVX_4LoUm4mdZBPdpMJkkSQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCVX_4LoUm4mdZBPdpMJkkSQ
- networks ambience
+ jams ambience
channels/UCXbXfisDHV_gDjawCKTyTIw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCXbXfisDHV_gDjawCKTyTIw
- networks ambience
+ jams ambience
channels/UCZR3-lM6Z-n5_UGHlwx_Rpw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCZR3-lM6Z-n5_UGHlwx_Rpw
- networks ambience
+ jams ambience
channels/UCaG0IHN1RMOZ4-U3wDXAkwA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCaG0IHN1RMOZ4-U3wDXAkwA
- networks science
+ jams science
channels/UCb1ANUIW7arUUDI-Mwz65rw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCb1ANUIW7arUUDI-Mwz65rw
- networks ambience
+ jams ambience
channels/UCbprhISv-0ReKPPyhf7-Dtw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCbprhISv-0ReKPPyhf7-Dtw
- networks science
+ jams science
channels/UCdRNCCz2FDwE7svh7sDuc2Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UCdRNCCz2FDwE7svh7sDuc2Q
- networks science
+ jams science
channels/UCdsNEJzi7vGVL0k1YDe2znA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCdsNEJzi7vGVL0k1YDe2znA
- networks ambience
+ jams ambience
channels/UCeTVoczn9NOZA9blls3YgUg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCeTVoczn9NOZA9blls3YgUg
- networks science
+ jams science
channels/UCetYFjkhf7S7LwiuJxeC28g.scroll
Changed around line 5: url https://www.youtube.com/channel/UCetYFjkhf7S7LwiuJxeC28g
- networks science
+ jams science
channels/UChIv2ovrTHbZDDIaLFR9P-Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UChIv2ovrTHbZDDIaLFR9P-Q
- networks ambience
+ jams ambience
channels/UCjkLYVF8Up8zt9ZQNLpR_TQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCjkLYVF8Up8zt9ZQNLpR_TQ
- networks science
+ jams science
channels/UCjzHeG1KWoonmf9d5KBvSiw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCjzHeG1KWoonmf9d5KBvSiw
- networks ambience
+ jams ambience
channels/UCkFeoNSqYTa7trn75WM9tsg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCkFeoNSqYTa7trn75WM9tsg
- networks science
+ jams science
channels/UClBrT0ADeJnemAyp2EbzVFw.scroll
Changed around line 5: url https://www.youtube.com/channel/UClBrT0ADeJnemAyp2EbzVFw
- networks ambience
+ jams ambience
channels/UCmGU7IuCWuFRhM8WXvOEM4A.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmGU7IuCWuFRhM8WXvOEM4A
- networks ambience
+ jams ambience
channels/UCmYuOrhYCw5K02OTuXTKGcA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmYuOrhYCw5K02OTuXTKGcA
- networks science
+ jams science
channels/UCmla4OjsAqsyAbjS5XYqfPg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmla4OjsAqsyAbjS5XYqfPg
- networks ambience
+ jams ambience
channels/UCnLjr0czO5zPsJYubbrvHCw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCnLjr0czO5zPsJYubbrvHCw
- networks ambience
+ jams ambience
channels/UCnejwhgQB5D_H7envJJgbXQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCnejwhgQB5D_H7envJJgbXQ
- networks science
+ jams science
channels/UCoOu4D7foJWfKvcDLxqrF2Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UCoOu4D7foJWfKvcDLxqrF2Q
- networks science
+ jams science
channels/UCpDqi4cjYZ0UZYr_1Odhavg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCpDqi4cjYZ0UZYr_1Odhavg
- networks ambience
+ jams ambience
channels/UCqrILQNl5Ed9Dz6CGMyvMTQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCqrILQNl5Ed9Dz6CGMyvMTQ
- networks code
+ jams code
channels/UCsBjURrPoezykLs9EqgamOA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA
- networks code
+ jams code
channels/UCuJMRZh0c4jaQsE7IYpAqUA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCuJMRZh0c4jaQsE7IYpAqUA
- networks science
+ jams science
channels/UCuPkgKp2-9zMuVIr-eAFjyw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCuPkgKp2-9zMuVIr-eAFjyw
- networks science
+ jams science
channels/UCwobzUc3z-0PrFpoRxNszXQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCwobzUc3z-0PrFpoRxNszXQ
- networks ambience
+ jams ambience
channels/UCwqusr8YDwM-3mEYTDeJHzw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCwqusr8YDwM-3mEYTDeJHzw
- networks science
+ jams science
channels/UCy6A4u_9X_FyN3DZMLtwjUg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCy6A4u_9X_FyN3DZMLtwjUg
- networks ambience
+ jams ambience
channels/aesignage.scroll
Changed around line 5: url https://www.youtube.com/@aesignage
- networks worldcams
+ jams worldcams
channels/airlinerslive.scroll
Changed around line 5: url https://www.youtube.com/@airlinerslive
- networks worldcams
+ jams worldcams
channels/alistarot.scroll
Changed around line 5: url https://www.youtube.com/@alistarot
- networks horoscopes
+ jams horoscopes
channels/alpinelodgingtelluride.scroll
Changed around line 5: url https://www.youtube.com/@alpinelodgingtelluride
- networks worldcams
+ jams worldcams
channels/ambientcinematics.scroll
Changed around line 5: url https://www.youtube.com/@AmbientCinematics
- networks ambience
+ jams ambience
channels/austinstarot.scroll
Changed around line 5: url https://www.youtube.com/@austinstarot
- networks horoscopes
+ jams horoscopes
channels/bigbadbench.scroll
Changed around line 5: url https://www.youtube.com/@BigBadBench
- networks code
+ jams code
channels/birderking.scroll
Changed around line 5: url https://www.youtube.com/@birderking
- networks nature
+ jams nature
channels/bitcoinliveyt.scroll
Changed around line 5: url https://www.youtube.com/@bitcoinliveyt
- networks crypto
+ jams crypto
channels/bitcoinunleashedwithov.scroll
Changed around line 5: url https://www.youtube.com/@bitcoinunleashedwithov
- networks crypto
+ jams crypto
channels/breckyunits.scroll
Changed around line 6: twitch https://www.twitch.tv/scrolltalk
- networks warpcast code
+ jams warpcast code
channels/brisbanelivestream.scroll
Changed around line 5: url https://www.youtube.com/@brisbanelivestream
- networks worldcams
+ jams worldcams
channels/buenasnochesfarcaster.scroll
Changed around line 5: url https://www.youtube.com/@BuenasNochesFarcaster
- networks warpcast
+ jams warpcast
channels/cafemusicbgmchannel.scroll
Changed around line 5: url https://www.youtube.com/@cafemusicbgmchannel
- networks ambience
+ jams ambience
channels/caothicamhoa.scroll
Changed around line 5: url https://www.youtube.com/@caothicamhoa
- networks sports
+ jams sports
channels/chartprime.scroll
Changed around line 5: url https://www.youtube.com/@chartprime
- networks crypto
+ jams crypto
channels/chocolatesundaes.scroll
Changed around line 1
- id lolnetwork
+ id chocolatesundaes
- networks standup
+ jams standup
channels/chrisgo.scroll
Changed around line 5: url https://www.youtube.com/@chrisgo
- networks warpcast
+ jams warpcast
channels/cmgriffing.scroll
Changed around line 6: twitch https://www.twitch.tv/cmgriffing
- networks code
+ jams code
channels/cookinghawaiianstyletv.scroll
Changed around line 5: url https://www.youtube.com/@cookinghawaiianstyletv
- networks cooking
+ jams cooking
channels/crypto_wenmoon.scroll
Changed around line 5: url https://www.youtube.com/@Crypto_WenMoon
- networks warpcast
+ jams warpcast
channels/cryptochimp8606.scroll
Changed around line 5: url https://www.youtube.com/@cryptochimp8606
- networks crypto
+ jams crypto
channels/cryptomiki.scroll
Changed around line 5: url https://www.youtube.com/@cryptomiki
- networks crypto
+ jams crypto
channels/davidconnelly.scroll
Changed around line 5: url https://www.youtube.com/@davidconnelly
- networks code
+ jams code
channels/dawufi.scroll
Changed around line 5: url https://www.youtube.com/@dawufi
- networks warpcast
+ jams warpcast
channels/dumdummakegame.scroll
Changed around line 5: url https://www.youtube.com/@DumDumMakeGame
- networks code
+ jams code
channels/dustybc.scroll
Changed around line 5: url https://www.youtube.com/@dustybc
- networks crypto
+ jams crypto
channels/dylsteck.scroll
Changed around line 5: url https://www.youtube.com/@dylsteck
- networks warpcast
+ jams warpcast
channels/earthcam.scroll
Changed around line 5: url https://www.youtube.com/@earthcam
- networks worldcams
+ jams worldcams
channels/earthtv.scroll
Changed around line 5: url https://www.youtube.com/@earthtv
- networks worldcams
+ jams worldcams
channels/eatreadloveinc.scroll
Changed around line 5: url https://www.youtube.com/@eatreadloveinc
- networks horoscopes
+ jams horoscopes
channels/exploreafrica.scroll
Changed around line 5: url https://www.youtube.com/@exploreafrica
- networks nature
+ jams nature
channels/explorebears.scroll
Changed around line 5: url https://www.youtube.com/@explorebears
- networks nature
+ jams nature
channels/explorelivenaturecams.scroll
Changed around line 5: url https://www.youtube.com/@explorelivenaturecams
- networks nature
+ jams nature
channels/exploreoceans.scroll
Changed around line 5: url https://www.youtube.com/@exploreoceans
- networks nature
+ jams nature
channels/faceprep.scroll
Changed around line 5: url https://www.youtube.com/@faceprep
- networks code
+ jams code
channels/farcasterxyz.scroll
Changed around line 5: url https://www.youtube.com/@farcasterxyz
- networks warpcast
+ jams warpcast
channels/flightfocus365.scroll
Changed around line 5: url https://www.youtube.com/@flightfocus365
- networks worldcams
+ jams worldcams
channels/forexcryptolive.scroll
Changed around line 5: url https://www.youtube.com/@forexcryptolive
- networks crypto
+ jams crypto
channels/forexlia.scroll
Changed around line 5: url https://www.youtube.com/@forexlia
- networks crypto
+ jams crypto
channels/ghostninja.scroll
Changed around line 5: url https://www.youtube.com/@ghostninja
- networks fortnite
+ jams fortnite
channels/gmfarcaster.scroll
Changed around line 5: url https://www.youtube.com/@GMFarcaster
- networks warpcast
+ jams warpcast
channels/happyhappygal.scroll
Changed around line 5: url https://www.youtube.com/@happyhappygal
- networks fortnite
+ jams fortnite
channels/hollywoodflch78.scroll
Changed around line 5: url https://www.youtube.com/@hollywoodflch78
- networks worldcams
+ jams worldcams
channels/homewebserver.scroll
Changed around line 5: url https://www.youtube.com/@HomeWebServer
- networks code
+ jams code
channels/jaydyer.scroll
Changed around line 5: url https://www.youtube.com/@jaydyer
- networks crypto
+ jams crypto
channels/joshuaweissman.scroll
Changed around line 5: url https://www.youtube.com/@joshuaweissman
- networks cooking
+ jams cooking
channels/kabukistarship.scroll
Changed around line 5: url https://www.youtube.com/@KabukiStarship
- networks code
+ jams code
channels/lieblingsrezepte5955.scroll
Changed around line 5: url https://www.youtube.com/@lieblingsrezepte5955
- networks cooking
+ jams cooking
channels/livebookmap.scroll
Changed around line 5: url https://www.youtube.com/@livebookmap
- networks crypto
+ jams crypto
channels/lolnetwork.scroll
Changed around line 5: url https://www.youtube.com/@LOLNetwork
- networks standup
+ jams standup
channels/losfomos.scroll
Changed around line 5: url https://www.youtube.com/@LosFomos
- networks warpcast
+ jams warpcast
channels/magnimindacademy.scroll
Changed around line 5: url https://www.youtube.com/@MagnimindAcademy
- networks code
+ jams code
channels/marekrogalski.scroll
Changed around line 5: url https://www.youtube.com/@marekrogalski
- networks code
+ jams code
channels/mariadeseo3191.scroll
Changed around line 5: url https://www.youtube.com/@mariadeseo3191
- networks worldcams
+ jams worldcams
channels/marticlues.scroll
Changed around line 5: url https://www.youtube.com/@marticlues
- networks crypto
+ jams crypto
channels/menwiththepot.scroll
Changed around line 5: url https://www.youtube.com/@menwiththepot
- networks cooking
+ jams cooking
channels/minnowpondtarot.scroll
Changed around line 5: url https://www.youtube.com/@minnowpondtarot
- networks horoscopes
+ jams horoscopes
channels/mrnigelng.scroll
Changed around line 5: url https://www.youtube.com/@mrnigelng
- networks cooking
+ jams cooking
channels/muoi_vlog.scroll
Changed around line 5: url https://www.youtube.com/@muoi_vlog
- networks sports
+ jams sports
channels/namibiacam.scroll
Changed around line 5: url https://www.youtube.com/@namibiacam
- networks nature
+ jams nature
channels/nasaspaceflight.scroll
Changed around line 5: url https://www.youtube.com/@nasaspaceflight
- networks worldcams
+ jams worldcams
channels/nature-live.scroll
Changed around line 5: url https://www.youtube.com/@nature-live
- networks nature
+ jams nature
channels/netfoundation.scroll
Changed around line 5: url https://www.youtube.com/@NETFoundation
- networks code
+ jams code
channels/nickdigiovanni.scroll
Changed around line 5: url https://www.youtube.com/@nickdigiovanni
- networks cooking
+ jams cooking
channels/okbangershow.scroll
Changed around line 5: url https://www.youtube.com/@okbangershow
- networks warpcast
+ jams warpcast
channels/omglivetv1.scroll
Changed around line 5: url https://www.youtube.com/@omglivetv1
- networks worldcams
+ jams worldcams
channels/packapuncher.scroll
Changed around line 5: url https://www.youtube.com/@packapuncher
- networks fortnite
+ jams fortnite
channels/piratesoftware.scroll
Changed around line 5: url https://www.youtube.com/@PirateSoftware
- networks code
+ jams code
channels/programmer-network.scroll
Changed around line 5: url https://www.youtube.com/@programmer-network
- networks code
+ jams code
channels/rainsoundnatural2612.scroll
Changed around line 5: url https://www.youtube.com/@rainsoundnatural2612
- networks ambience
+ jams ambience
channels/rawstartup.scroll
Changed around line 5: url https://www.youtube.com/@RawStartup
- networks code
+ jams code
channels/redsquirrelstudios.scroll
Changed around line 5: url https://www.youtube.com/@redsquirrelstudios
- networks nature
+ jams nature
channels/relaxjazzcafe1990.scroll
Changed around line 5: url https://www.youtube.com/@relaxjazzcafe1990
- networks ambience
+ jams ambience
channels/rinaadventurealltime.scroll
Changed around line 5: url https://www.youtube.com/@rinaadventurealltime
- networks cooking
+ jams cooking
channels/robingaming88.scroll
Changed around line 5: url https://www.youtube.com/@robingaming88
- networks code
+ jams code
channels/seejamaica.scroll
Changed around line 5: url https://www.youtube.com/@seejamaica
- networks worldcams
+ jams worldcams
channels/shopwithme_tetevlogs.scroll
Changed around line 5: url https://www.youtube.com/@shopwithme_tetevlogs
- networks cooking
+ jams cooking
channels/shufflegamer.scroll
Changed around line 5: url https://www.youtube.com/@shufflegamer
- networks fortnite
+ jams fortnite
channels/smoothjazzmusicbgm..scroll
Changed around line 5: url https://www.youtube.com/@smoothjazzmusicbgm.
- networks ambience
+ jams ambience
channels/solentships.scroll
Changed around line 5: url https://www.youtube.com/@solentships
- networks worldcams
+ jams worldcams
channels/soulfulrevolution.scroll
Changed around line 5: url https://www.youtube.com/@soulfulrevolution
- networks horoscopes
+ jams horoscopes
channels/streamtimelive.scroll
Changed around line 5: url https://www.youtube.com/@streamtimelive
- networks worldcams
+ jams worldcams
channels/swan_bitcoin.scroll
Changed around line 5: url https://www.youtube.com/@swan_bitcoin
- networks crypto
+ jams crypto
channels/sypherpk.scroll
Changed around line 5: url https://www.youtube.com/@sypherpk
- networks fortnite
+ jams fortnite
channels/tametheark.scroll
Changed around line 5: url https://www.youtube.com/@tametheark
- networks crypto
+ jams crypto
channels/teleportcamera.scroll
Changed around line 5: url https://www.youtube.com/@teleportcamera
- networks worldcams
+ jams worldcams
channels/theprimetimeagen.scroll
Changed around line 5: url https://www.youtube.com/@ThePrimeTimeagen
- networks code
+ jams code
channels/therealsamuiwebcam.scroll
Changed around line 5: url https://www.youtube.com/@therealsamuiwebcam
- networks worldcams
+ jams worldcams
channels/tieuvandailylife156.scroll
Changed around line 5: url https://www.youtube.com/@tieuvandailylife156
- networks cooking
+ jams cooking
channels/tranquiljazzvibes-24.scroll
Changed around line 5: url https://www.youtube.com/@tranquiljazzvibes-24
- networks ambience
+ jams ambience
channels/tvltrzcianka1.scroll
Changed around line 5: url https://www.youtube.com/@tvltrzcianka1
- networks worldcams
+ jams worldcams
channels/typicalgamer.scroll
Changed around line 2
- status live
+ status off
- networks fortnite
+ jams fortnite
channels/useip.scroll
Changed around line 5: url https://www.youtube.com/@useip
- networks worldcams
+ jams worldcams
channels/velvetbb.scroll
Changed around line 5: url https://www.youtube.com/@velvetbb
- networks fortnite
+ jams fortnite
channels/virtualrailfan.scroll
Changed around line 5: url https://www.youtube.com/@virtualrailfan
- networks worldcams
+ jams worldcams
channels/webcamgreece.scroll
Changed around line 5: url https://www.youtube.com/@webcamgreece
- networks worldcams
+ jams worldcams
channels/webcamsydney.scroll
Changed around line 5: url https://www.youtube.com/@webcamsydney
- networks worldcams
+ jams worldcams
channels/wolfofbaystreet.scroll
Changed around line 5: url https://www.youtube.com/@wolfofbaystreet
- networks warpcast
+ jams warpcast
channels/xrpgen.scroll
Changed around line 5: url https://www.youtube.com/@xrpgen
- networks crypto
+ jams crypto
todo.scroll
Changed around line 2
- [x] Hand written networks are the best
+ [x] Hand written jams are the best
- [x] 10x better networks
+ [x] 10x better jams
- [] 10 more networks
+ [] 10 more jams
togger.js
Changed around line 2: let staticNoise = document.querySelector(".staticNoise")
- const defaultNetwork = "all"
+ const defaultJam = "all"
Changed around line 11: class Togger {
- this.networkNames = Array.from(
+ this.jamNames = Array.from(
- .map((c) => c.networks)
+ .map((c) => c.jams)
- this.networkNames.sort()
+ this.jamNames.sort()
- let startNetwork =
+ let startJam =
+ params.get("jam") ||
- defaultNetwork
+ defaultJam
- if (startNetwork === "coding")
- startNetwork = "code"
+ if (startJam === "coding")
+ startJam = "code"
- // Track indexes per network
- this.networkIndexes = {}
- this.networkNames.forEach((name) => {
- this.networkIndexes[name] = 0
+ // Track indexes per jam
+ this.jamIndexes = {}
+ this.jamNames.forEach((name) => {
+ this.jamIndexes[name] = 0
- this.loadStreams(startNetwork)
+ this.loadStreams(startJam)
- // Store initial index for current network
- this.networkIndexes[this.networkName] = this.currentIndex
+ // Store initial index for current jam
+ this.jamIndexes[this.jamName] = this.currentIndex
Changed around line 161: class Togger {
- networks: "custom",
+ jams: "custom",
Changed around line 172: class Togger {
- channel.networks += " all"
+ channel.jams += " all"
- get networkIndex() {
- return this.networkNames.indexOf(this.networkName)
+ get jamIndex() {
+ return this.jamNames.indexOf(this.jamName)
- nextNetwork() {
- // Save current index for current network
- this.networkIndexes[this.networkName] = this.currentIndex
+ nextJam() {
+ // Save current index for current jam
+ this.jamIndexes[this.jamName] = this.currentIndex
- const { networkNames, networkIndex } = this
- const networkName = networkNames[(networkIndex + 1) % networkNames.length]
- this.loadStreams(networkName)
+ const { jamNames, jamIndex } = this
+ const jamName = jamNames[(jamIndex + 1) % jamNames.length]
+ this.loadStreams(jamName)
- // Restore saved index for new network
- this.currentIndex = this.networkIndexes[networkName]
+ // Restore saved index for new jam
+ this.currentIndex = this.jamIndexes[jamName]
- previousNetwork() {
- // Save current index for current network
- this.networkIndexes[this.networkName] = this.currentIndex
+ previousJam() {
+ // Save current index for current jam
+ this.jamIndexes[this.jamName] = this.currentIndex
- const { networkNames, networkIndex } = this
- const networkName =
- networkNames[
- (networkIndex - 1 + networkNames.length) % networkNames.length
+ const { jamNames, jamIndex } = this
+ const jamName =
+ jamNames[
+ (jamIndex - 1 + jamNames.length) % jamNames.length
- this.loadStreams(networkName)
+ this.loadStreams(jamName)
- // Restore saved index for new network
- this.currentIndex = this.networkIndexes[networkName]
+ // Restore saved index for new jam
+ this.currentIndex = this.jamIndexes[jamName]
- getNetwork(networkName) {
- const { networkNames } = this
- if (!networkNames.includes(networkName)) networkName = defaultNetwork
- this.networkName = networkName
- return this.channels.filter((c) => c.networks?.includes(networkName))
+ getJam(jamName) {
+ const { jamNames } = this
+ if (!jamNames.includes(jamName)) jamName = defaultJam
+ this.jamName = jamName
+ return this.channels.filter((c) => c.jams?.includes(jamName))
- loadStreams(networkName) {
- let streams = this.getNetwork(networkName)
+ loadStreams(jamName) {
+ let streams = this.getJam(jamName)
Changed around line 239: class Togger {
- if (networkName === "all")
+ if (jamName === "all")
Changed around line 280: class Togger {
- this.nextNetwork()
+ this.nextJam()
- this.previousNetwork()
+ this.previousJam()
Changed around line 424: class Togger {
- params.set("network", this.networkName)
+ params.set("jam", this.jamName)
Changed around line 439: class Togger {
- const title = [this.networkName, current.channeltitle].join(".")
+ const title = [this.jamName, current.channeltitle].join(".")
Changed around line 654: class Togger {
- const networkRow = createButtonRow([
+ const jamRow = createButtonRow([
- remote.appendChild(networkRow)
+ remote.appendChild(jamRow)
update.mjs
Changed around line 5: import { YouTubeFeed } from "./youtube.mjs"
- // Generate initial networks
- async function generateInitialNetworks() {
- await yt.generateNetwork("live -bot -lofi", "general")
- await yt.generateNetwork("live ambient music", "ambience")
- await yt.generateNetwork("live -bot science", "science")
+ // Generate initial jams
+ async function generateInitialJams() {
+ await yt.generateJam("live -bot -lofi", "general")
+ await yt.generateJam("live ambient music", "ambience")
+ await yt.generateJam("live -bot science", "science")
- // Process existing network files
- async function processNetworkFiles() {
+ // Process existing jam files
+ async function processJamFiles() {
- const networkDir = path.join(__dirname, "networks")
- const files = await readdir(networkDir)
+ const jamDir = path.join(__dirname, "jams")
+ const files = await readdir(jamDir)
- const filePath = path.join(networkDir, file)
+ const filePath = path.join(jamDir, file)
- // Get network name from filename (remove .scroll extension)
- const networkName = path.basename(file, ".scroll")
+ // Get jam name from filename (remove .scroll extension)
+ const jamName = path.basename(file, ".scroll")
- await yt.channelsToNetwork(lines, networkName)
+ await yt.channelsToJam(lines, jamName)
- console.error("Error processing network files:", error)
+ console.error("Error processing jam files:", error)
Changed around line 42: async function processNetworkFiles() {
- await generateInitialNetworks()
- await processNetworkFiles()
- console.log("Successfully processed all networks")
+ await generateInitialJams()
+ await processJamFiles()
+ console.log("Successfully processed all jams")
youtube.mjs
Changed around line 216: class YouTubeFeed {
- async channelsToNetwork(channels, name) {
+ async channelsToJam(channels, name) {
- await this.saveNetwork(streams, name)
+ await this.saveJam(streams, name)
- async saveNetwork(streams, name) {
- const filepath = path.join(
- __dirname,
- "networksCache",
- name + "Network.json",
- )
+ async saveJam(streams, name) {
+ const filepath = path.join(__dirname, "jamsCache", name + "Jam.json")
- async generateNetwork(query, name) {
+ async generateJam(query, name) {
- await this.saveNetwork(streams, name)
+ await this.saveJam(streams, name)
- async createChannelFile(videoUrl, networks = "youtube") {
+ async createChannelFile(videoUrl, jams = "youtube") {
Changed around line 294: url https://www.youtube.com/@${channelHandle}
- networks ${networks}
+ jams ${jams}
ffff:172.88.218.9
ffff:172.88.218.9
1 month ago
updated channels/happyhappygal.scroll
channels/happyhappygal.scroll
Changed around line 2
- status live
+ status removed
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 337: class Togger {
- this.showIndicator(isMuted ? "MUTED" : `Volume: ${volume}%`)
+ this.showIndicator(isMuted ? "MUTED" : `Volume: ${volume}`)
Changed around line 354: class Togger {
- let delta = 10
- if (this.volume < 10) delta = 5
+ let delta = 20
+ if (this.volume === 0) delta = 1
+ if (this.volume === 1) delta = 4
+ if (this.volume === 5) delta = 5
+ if (this.volume === 10) delta = 10
- let delta = 10
- if (this.volume <= 10) delta = 5
+ let delta = 20
+ if (this.volume === 20) delta = 10
+ if (this.volume === 10) delta = 5
+ if (this.volume === 5) delta = 4
ffff:154.57.223.188
ffff:154.57.223.188
1 month ago
updated channels/mrnigelng.scroll
channels/mrnigelng.scroll
Changed around line 2
- status live
+ status off
ffff:154.57.223.188
ffff:154.57.223.188
1 month ago
updated channels/shufflegamer.scroll
channels/shufflegamer.scroll
Changed around line 2
- status live
+ status off
ffff:154.57.223.188
ffff:154.57.223.188
1 month ago
updated channels/sypherpk.scroll
channels/sypherpk.scroll
Changed around line 2
- status live
+ status removed
ffff:154.57.223.188
ffff:154.57.223.188
1 month ago
updated channels/packapuncher.scroll
channels/packapuncher.scroll
Changed around line 2
- status live
+ status off
ffff:159.2.168.193
ffff:159.2.168.193
1 month ago
updated channels/lieblingsrezepte5955.scroll
channels/lieblingsrezepte5955.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/velvetbb.scroll
channels/velvetbb.scroll
Changed around line 2
- status live
+ status off
Breck Yunits
Breck Yunits
1 month ago
channels/ghostninja.scroll
Changed around line 1
+ ../channels.parsers
+
+ id ghostninja
+ url https://www.youtube.com/@ghostninja
+ status live
+ channelid UCbkMvtBNkpIbHqQdKHJSb5A
+ channeltitle GhostNinja
+ networks fortnite
+ neweststream UmPD6Moqulg
+ chat true
+ streamtime 2024-12-01T06:30:59.251Z
channels/happyhappygal.scroll
Changed around line 1
+ ../channels.parsers
+
+ id happyhappygal
+ url https://www.youtube.com/@happyhappygal
+ status live
+ channelid UCRUihMQDLQYwKnDlEc7_I4Q
+ channeltitle Happy Happy Gal
+ networks fortnite
+ neweststream _DvwMctBprc
+ chat true
+ streamtime 2024-12-01T06:30:59.100Z
channels/packapuncher.scroll
Changed around line 1
+ ../channels.parsers
+
+ id packapuncher
+ url https://www.youtube.com/@packapuncher
+ status live
+ channelid UCGLcmUt6Y7YEWdiehVg9QBg
+ channeltitle Pack A Puncher
+ networks fortnite
+ neweststream Z62OLrzE_tw
+ chat true
+ streamtime 2024-12-01T06:30:59.166Z
channels/shufflegamer.scroll
Changed around line 1
+ ../channels.parsers
+
+ id shufflegamer
+ url https://www.youtube.com/@shufflegamer
+ status live
+ channelid UCI2hA8WukW-Q90aabtm3Hbw
+ channeltitle ShuffleGamer
+ networks fortnite
+ neweststream 3Qtuh1uWldA
+ chat true
+ streamtime 2024-12-01T06:30:59.165Z
channels/sypherpk.scroll
Changed around line 1
+ ../channels.parsers
+
+ id sypherpk
+ url https://www.youtube.com/@sypherpk
+ status live
+ channelid UC_q5WZtFp36adwqhKpZzxwQ
+ channeltitle SypherPK
+ networks fortnite
+ neweststream YNQrxMbU0-s
+ chat true
+ streamtime 2024-12-01T06:30:59.073Z
channels/typicalgamer.scroll
Changed around line 1
+ ../channels.parsers
+
+ id typicalgamer
+ url https://www.youtube.com/@typicalgamer
+ status live
+ channelid UC2wKfjlioOCLP4xQMOWNcgg
+ channeltitle Typical Gamer
+ networks fortnite
+ neweststream FanNoQg06w0
+ chat true
+ streamtime 2024-12-01T06:30:59.255Z
channels/velvetbb.scroll
Changed around line 1
+ ../channels.parsers
+
+ id velvetbb
+ url https://www.youtube.com/@velvetbb
+ status live
+ channelid UC92oqKK_DRqMj5BqqGheeRQ
+ channeltitle Velvet
+ networks fortnite
+ neweststream FKuxzJbWPVg
+ chat true
+ streamtime 2024-12-01T06:30:59.066Z
Breck Yunits
Breck Yunits
1 month ago
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=xY6_wqhRaos cooking
- https://www.youtube.com/watch?v=3eVIAQNB6Tw cooking
- https://www.youtube.com/watch?v=4hV2qN1Tv68 cooking
- https://www.youtube.com/watch?v=cUsUt22PFwo cooking
- https://www.youtube.com/watch?v=SlXIk08_yTs cooking
- https://www.youtube.com/watch?v=n3Ty7hHcl-c cooking
- https://www.youtube.com/watch?v=O7xSkdyEzzU cooking
- https://www.youtube.com/watch?v=1nDscSiGrBE cooking`
+ const data = `https://www.youtube.com/watch?v=YNQrxMbU0-s fortnite
+ https://www.youtube.com/watch?v=FanNoQg06w0 fortnite
+ https://www.youtube.com/watch?v=_DvwMctBprc fortnite
+ https://www.youtube.com/watch?v=wc9On7mGACk fortnite
+ https://www.youtube.com/watch?v=As89fqmIuoA fortnite
+ https://www.youtube.com/watch?v=UmPD6Moqulg fortnite
+ https://www.youtube.com/watch?v=3Qtuh1uWldA fortnite
+ https://www.youtube.com/watch?v=Z62OLrzE_tw fortnite
+ https://www.youtube.com/watch?v=FKuxzJbWPVg fortnite`
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/muoi_vlog.scroll
channels/muoi_vlog.scroll
Changed around line 2
- status off
+ status removed
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/cookinghawaiianstyletv.scroll
channels/cookinghawaiianstyletv.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/joshuaweissman.scroll
channels/joshuaweissman.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/menwiththepot.scroll
channels/menwiththepot.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/nickdigiovanni.scroll
channels/nickdigiovanni.scroll
Changed around line 2
- status live
+ status off
Breck Yunits
Breck Yunits
1 month ago
channels/mrnigelng.scroll
Changed around line 1
+ ../channels.parsers
+
+ id mrnigelng
+ url https://www.youtube.com/@mrnigelng
+ status live
+ channelid UCVjlpEjEY9GpksqbEesJnNA
+ channeltitle mrnigelng
+ networks cooking
+ neweststream klswUYFEKRY
+ chat true
+ streamtime 2024-12-01T06:22:18.446Z
Breck Yunits
Breck Yunits
1 month ago
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=j0tSX670u24 horoscopes
- https://www.youtube.com/watch?v=jJA6kyLBUPM horoscopes
- https://www.youtube.com/watch?v=kD7w3Aa_zy4 horoscopes
- https://www.youtube.com/watch?v=YqTJouFhDjg horoscopes
- https://www.youtube.com/watch?v=IeV1tqnZw5A horoscopes`
+ const data = `https://www.youtube.com/watch?v=xY6_wqhRaos cooking
+ https://www.youtube.com/watch?v=3eVIAQNB6Tw cooking
+ https://www.youtube.com/watch?v=4hV2qN1Tv68 cooking
+ https://www.youtube.com/watch?v=cUsUt22PFwo cooking
+ https://www.youtube.com/watch?v=SlXIk08_yTs cooking
+ https://www.youtube.com/watch?v=n3Ty7hHcl-c cooking
+ https://www.youtube.com/watch?v=O7xSkdyEzzU cooking
+ https://www.youtube.com/watch?v=1nDscSiGrBE cooking`
channels/cookinghawaiianstyletv.scroll
Changed around line 1
+ ../channels.parsers
+
+ id cookinghawaiianstyletv
+ url https://www.youtube.com/@cookinghawaiianstyletv
+ status live
+ channelid UCY9Dyvty-DwhjedUyAgRNyA
+ channeltitle Cooking Hawaiian Style
+ networks cooking
+ neweststream 1nDscSiGrBE
+ chat true
+ streamtime 2024-12-01T06:21:25.240Z
channels/joshuaweissman.scroll
Changed around line 1
+ ../channels.parsers
+
+ id joshuaweissman
+ url https://www.youtube.com/@joshuaweissman
+ status live
+ channelid UChBEbMKI1eCcejTtmI32UEw
+ channeltitle Joshua Weissman
+ networks cooking
+ neweststream O7xSkdyEzzU
+ chat true
+ streamtime 2024-12-01T06:21:25.181Z
channels/lieblingsrezepte5955.scroll
Changed around line 1
+ ../channels.parsers
+
+ id lieblingsrezepte5955
+ url https://www.youtube.com/@lieblingsrezepte5955
+ status live
+ channelid UC5ztoPnFKpN4stOhpj0RXAA
+ channeltitle Lieblingsrezepte
+ networks cooking
+ neweststream 3eVIAQNB6Tw
+ chat true
+ streamtime 2024-12-01T06:21:25.188Z
channels/menwiththepot.scroll
Changed around line 1
+ ../channels.parsers
+
+ id menwiththepot
+ url https://www.youtube.com/@menwiththepot
+ status live
+ channelid UCfxzr4iHJ1ZFq7KT8bwfiBw
+ channeltitle Men With The Pot
+ networks cooking
+ neweststream xY6_wqhRaos
+ chat true
+ streamtime 2024-12-01T06:21:25.230Z
channels/nickdigiovanni.scroll
Changed around line 1
+ ../channels.parsers
+
+ id nickdigiovanni
+ url https://www.youtube.com/@nickdigiovanni
+ status live
+ channelid UCMyOj6fhvKFMjxUCp3b_3gA
+ channeltitle Nick DiGiovanni
+ networks cooking
+ neweststream SlXIk08_yTs
+ chat true
+ streamtime 2024-12-01T06:21:25.194Z
channels/rinaadventurealltime.scroll
Changed around line 1
+ ../channels.parsers
+
+ id rinaadventurealltime
+ url https://www.youtube.com/@rinaadventurealltime
+ status live
+ channelid UCZVCZRmvllLWhJ1_EbSgWgg
+ channeltitle Rina Adventure All Time
+ networks cooking
+ neweststream cUsUt22PFwo
+ chat true
+ streamtime 2024-12-01T06:21:25.307Z
channels/shopwithme_tetevlogs.scroll
Changed around line 1
+ ../channels.parsers
+
+ id shopwithme_tetevlogs
+ url https://www.youtube.com/@shopwithme_tetevlogs
+ status live
+ channelid UC3uFNxqJ_vahRpV-w2L1h4g
+ channeltitle TETE 🤍
+ networks cooking
+ neweststream n3Ty7hHcl-c
+ chat true
+ streamtime 2024-12-01T06:21:25.226Z
channels/tieuvandailylife156.scroll
Changed around line 1
+ ../channels.parsers
+
+ id tieuvandailylife156
+ url https://www.youtube.com/@tieuvandailylife156
+ status live
+ channelid UCeo4Ss6YvLS2J3CS0kzNKEw
+ channeltitle Tiểu Vân Daily Life
+ networks cooking
+ neweststream 4hV2qN1Tv68
+ chat true
+ streamtime 2024-12-01T06:21:25.290Z
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/alistarot.scroll
channels/alistarot.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/austinstarot.scroll
channels/austinstarot.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/eatreadloveinc.scroll
channels/eatreadloveinc.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/minnowpondtarot.scroll
channels/minnowpondtarot.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/soulfulrevolution.scroll
channels/soulfulrevolution.scroll
Changed around line 2
- status live
+ status off
Breck Yunits
Breck Yunits
1 month ago
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=3AX-OQwhbq4 coding`
+ const data = `https://www.youtube.com/watch?v=j0tSX670u24 horoscopes
+ https://www.youtube.com/watch?v=jJA6kyLBUPM horoscopes
+ https://www.youtube.com/watch?v=kD7w3Aa_zy4 horoscopes
+ https://www.youtube.com/watch?v=YqTJouFhDjg horoscopes
+ https://www.youtube.com/watch?v=IeV1tqnZw5A horoscopes`
channels/alistarot.scroll
Changed around line 1
+ ../channels.parsers
+
+ id alistarot
+ url https://www.youtube.com/@alistarot
+ status live
+ channelid UCGS9evApv_T-ZZbSmHi4oBA
+ channeltitle ALI's Tarot
+ networks horoscopes
+ neweststream j0tSX670u24
+ chat true
+ streamtime 2024-12-01T06:12:10.134Z
channels/austinstarot.scroll
Changed around line 1
+ ../channels.parsers
+
+ id austinstarot
+ url https://www.youtube.com/@austinstarot
+ status live
+ channelid UCwpD0BNEeJwC7dQW4M-ZMVw
+ channeltitle Austin's Tarot
+ networks horoscopes
+ neweststream IeV1tqnZw5A
+ chat true
+ streamtime 2024-12-01T06:12:10.181Z
channels/eatreadloveinc.scroll
Changed around line 1
+ ../channels.parsers
+
+ id eatreadloveinc
+ url https://www.youtube.com/@eatreadloveinc
+ status live
+ channelid UCeSaweWbmQzk6y-SkzU-lFg
+ channeltitle EAT READ LOVE INC
+ networks horoscopes
+ neweststream jJA6kyLBUPM
+ chat true
+ streamtime 2024-12-01T06:12:10.178Z
channels/minnowpondtarot.scroll
Changed around line 1
+ ../channels.parsers
+
+ id minnowpondtarot
+ url https://www.youtube.com/@minnowpondtarot
+ status live
+ channelid UCqh4ve8brfZVRyzlFNqDiOA
+ channeltitle Minnow Pond Tarot
+ networks horoscopes
+ neweststream kD7w3Aa_zy4
+ chat true
+ streamtime 2024-12-01T06:12:10.207Z
channels/soulfulrevolution.scroll
Changed around line 1
+ ../channels.parsers
+
+ id soulfulrevolution
+ url https://www.youtube.com/@soulfulrevolution
+ status live
+ channelid UCUrkOmXvcHOX4A1ratGe5Wg
+ channeltitle Soulful Revolution
+ networks horoscopes
+ neweststream YqTJouFhDjg
+ chat true
+ streamtime 2024-12-01T06:12:10.198Z
ffff:203.211.110.1
ffff:203.211.110.1
1 month ago
updated channels/omglivetv1.scroll
channels/omglivetv1.scroll
Changed around line 2
- status live
+ status removed
ffff:203.211.110.1
ffff:203.211.110.1
1 month ago
updated channels/caothicamhoa.scroll
channels/caothicamhoa.scroll
Changed around line 2
- status live
+ status removed
Breck Yunits
Breck Yunits
1 month ago
style.css
Changed around line 9: body {
- font-size: 13px;
+ font-size: 17px;
Breck Yunits
Breck Yunits
1 month ago
channels/UC0e3QhIYukixgh5VVpKHH9Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UC0e3QhIYukixgh5VVpKHH9Q
- networks coding
+ networks code
channels/UC1fLEeYICmo3O9cUsqIi7HA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HA
- networks coding
+ networks code
channels/UC29ju8bIPH5as8OGnQzwJyA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA
- networks coding
+ networks code
channels/UC2D6eRvCeMtcF5OGHf1-trw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw
- networks coding
+ networks code
channels/UC46wWUso9H5KPQcoL9iE3Ug.scroll
Changed around line 5: url https://www.youtube.com/channel/UC46wWUso9H5KPQcoL9iE3Ug
- networks coding
+ networks code
channels/UC4JX40jDee_tINbkjycV4Sg.scroll
Changed around line 5: url https://www.youtube.com/channel/UC4JX40jDee_tINbkjycV4Sg
- networks coding
+ networks code
channels/UC8butISFwT-Wl7EV0hUK0BQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
- networks coding
+ networks code
channels/UC9Yp2yz6-pwhQuPlIDV_mjA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9Yp2yz6-pwhQuPlIDV_mjA
- networks coding
+ networks code
channels/UCLNgu_OupwoeESgtab33CCw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCLNgu_OupwoeESgtab33CCw
- networks coding
+ networks code
channels/UCSJbGtTlrDami-tDGPUV9-w.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
- networks coding
+ networks code
channels/UCqrILQNl5Ed9Dz6CGMyvMTQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCqrILQNl5Ed9Dz6CGMyvMTQ
- networks coding
+ networks code
channels/UCsBjURrPoezykLs9EqgamOA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA
- networks coding
+ networks code
channels/bigbadbench.scroll
Changed around line 5: url https://www.youtube.com/@BigBadBench
- networks coding
+ networks code
channels/breckyunits.scroll
Changed around line 6: twitch https://www.twitch.tv/scrolltalk
- networks warpcast coding
+ networks warpcast code
channels/cmgriffing.scroll
Changed around line 6: twitch https://www.twitch.tv/cmgriffing
- networks coding
+ networks code
channels/davidconnelly.scroll
Changed around line 5: url https://www.youtube.com/@davidconnelly
- networks coding
+ networks code
channels/dumdummakegame.scroll
Changed around line 5: url https://www.youtube.com/@DumDumMakeGame
- networks coding
+ networks code
channels/faceprep.scroll
Changed around line 5: url https://www.youtube.com/@faceprep
- networks coding
+ networks code
channels/homewebserver.scroll
Changed around line 5: url https://www.youtube.com/@HomeWebServer
- networks coding
+ networks code
channels/kabukistarship.scroll
Changed around line 5: url https://www.youtube.com/@KabukiStarship
- networks coding
+ networks code
channels/magnimindacademy.scroll
Changed around line 5: url https://www.youtube.com/@MagnimindAcademy
- networks coding
+ networks code
channels/marekrogalski.scroll
Changed around line 5: url https://www.youtube.com/@marekrogalski
- networks coding
+ networks code
channels/netfoundation.scroll
Changed around line 5: url https://www.youtube.com/@NETFoundation
- networks coding
+ networks code
channels/piratesoftware.scroll
Changed around line 5: url https://www.youtube.com/@PirateSoftware
- networks coding
+ networks code
channels/programmer-network.scroll
Changed around line 5: url https://www.youtube.com/@programmer-network
- networks coding
+ networks code
channels/rawstartup.scroll
Changed around line 5: url https://www.youtube.com/@RawStartup
- networks coding
+ networks code
channels/robingaming88.scroll
Changed around line 5: url https://www.youtube.com/@robingaming88
- networks coding
+ networks code
channels/theprimetimeagen.scroll
Changed around line 5: url https://www.youtube.com/@ThePrimeTimeagen
- networks coding
+ networks code
togger.js
Changed around line 21: class Togger {
- const startNetwork =
+ let startNetwork =
+ if (startNetwork === "coding")
+ startNetwork = "code"
+
ffff:185.213.83.20
ffff:185.213.83.20
1 month ago
updated channels/smoothjazzmusicbgm..scroll
channels/smoothjazzmusicbgm..scroll
Changed around line 2
- status live
+ status off
ffff:71.38.85.219
ffff:71.38.85.219
1 month ago
updated channels/muoi_vlog.scroll
channels/muoi_vlog.scroll
Changed around line 2
- status live
+ status off
Breck Yunits
Breck Yunits
1 month ago
channels.parsers
Changed around line 6: urlParser
+ twitchParser
+ extends abstractUrlMeasureParser
+ description What is the Twitch channel, if any?
+ float sortIndex 1.15
Changed around line 36: streamtimeParser
- description What is the Warpcast name?
+ description What is their Warpcast name?
+ float sortIndex 1.6
+ twitterParser
+ extends abstractStringMeasureParser
+ description What is their Twitter name?
channels/breckyunits.scroll
Changed around line 2
+ twitch https://www.twitch.tv/scrolltalk
Changed around line 12: viewCount 11
+ twitter https://twitter.com/breckyunits
style.css
Changed around line 76: body {
+ .channelName img {
+ height: 34px;
+ vertical-align: middle;
+ }
+
Changed around line 95: body {
- @media only screen and (min-width: 800px) {
- html,
- body {
- font-size: 17px;
- }
- }
-
- a.warpcast {
- position: absolute;
- right: -75px;
- top: -8px;
- display: inline-block;
- background-color: #5d3e9e;
- color: white;
- padding: 8px 12px;
- border-radius: 12px;
- font-weight: bold;
- font-family: Arial;
- }
-
twitch.png
twitter.png
warpcast.png
youtube.svg
Changed around line 1
+
+
+
+
+
+
+
+
+
+
+
+
1
1
1 month ago
updated channels/rainsoundnatural2612.scroll
channels/rainsoundnatural2612.scroll
Changed around line 2
- status live
+ status off
1
1
1 month ago
updated channels/cmgriffing.scroll
channels/cmgriffing.scroll
Changed around line 2
- status live
+ twitch https://www.twitch.tv/cmgriffing
+ status off
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/forexcryptolive.scroll
channels/forexcryptolive.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/forexlia.scroll
channels/forexlia.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/swan_bitcoin.scroll
channels/swan_bitcoin.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/marticlues.scroll
channels/marticlues.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/tametheark.scroll
channels/tametheark.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/xrpgen.scroll
channels/xrpgen.scroll
Changed around line 2
- status live
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/dustybc.scroll
channels/dustybc.scroll
Changed around line 2
- status off
+ status removed
ffff:107.115.227.129
ffff:107.115.227.129
1 month ago
updated channels/jaydyer.scroll
channels/jaydyer.scroll
Changed around line 2
- status off
+ status removed
Breck Yunits
Breck Yunits
1 month ago
index.scroll
Changed around line 8: jsonScript sorted.json
-
-
-
+
+
+
landing.html
Changed around line 46
-
+
landingStyles.css
Changed around line 143: p {
- .channel-name {
+ .channelName {
style.css
Changed around line 13: body {
- .static-noise {
+ .staticNoise {
Changed around line 31: body {
- .power-screen {
+ .powerScreen {
Changed around line 44: body {
- .channel-name {
+ .channelName {
Changed around line 63: body {
- .channel-name {
+ .channelName {
- display: none;
- .channel-name a {
+ .channelName a {
+ .channelName:hover {
+ opacity: 1 !important;
+ }
togger.js
Changed around line 1
- let staticNoise = document.querySelector(".static-noise")
- let powerScreen = document.querySelector(".power-screen")
+ let staticNoise = document.querySelector(".staticNoise")
+ let powerScreen = document.querySelector(".powerScreen")
Changed around line 436: class Togger {
- document.querySelector(".channel-name").innerHTML = `
+ document.querySelector(".channelName").innerHTML = `
Changed around line 447: class Togger {
- const indicator = document.querySelector(".channel-name")
- indicator.style.display = "block"
+ const indicator = document.querySelector(".channelName")
+ indicator.style.opacity = "1"
- indicator.style.display = "none"
+ indicator.style.opacity = "0"
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/breckyunits.scroll
channels/breckyunits.scroll
Changed around line 2
- status live
+ status off
Breck Yunits
Breck Yunits
1 month ago
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=MtoVJEyCUbA ambience
- https://www.youtube.com/watch?v=evTQIgdh1iw ambience
- https://www.youtube.com/watch?v=USrXhhLP5nw sports
- https://www.youtube.com/watch?v=3dDBGYfQy54 sports
- https://www.youtube.com/watch?v=YbLZXAeXRbQ sports
- https://www.youtube.com/watch?v=x8TAFQauVrU ambience
- https://www.youtube.com/watch?v=pMqVjYfO_E4 ambience
- https://www.youtube.com/watch?v=DuVZmuzisJo ambience
- https://www.youtube.com/watch?v=nYqUJX5XDWA worldcams
- https://www.youtube.com/watch?v=_a4WQ4UXZVk nature
- https://www.youtube.com/watch?v=F0pZ9F3QkC0 crypto
- https://www.youtube.com/watch?v=m_Fd0ojolJ4 crypto
- https://www.youtube.com/watch?v=GoQVqhwOK4g crypto
- https://www.youtube.com/watch?v=XW0dldugiAA crypto
- https://www.youtube.com/watch?v=fFrLWCCUY68 crypto
- https://www.youtube.com/watch?v=k6L3z81iVI8 crypto
- https://www.youtube.com/watch?v=0KNifW3bFuc crypto
- https://www.youtube.com/watch?v=Ov6oGuwIfAk crypto
- https://www.youtube.com/watch?v=mxfRlpuGZ0M crypto
- https://www.youtube.com/watch?v=yw_n1WW_tw0 crypto
- https://www.youtube.com/watch?v=mIyiKKo4B5Q crypto
- https://www.youtube.com/watch?v=V57sMSH_DJQ crypto
- https://www.youtube.com/watch?v=--45Ma5vkMo crypto
- https://www.youtube.com/watch?v=S-iXjKgEvbM crypto
- https://www.youtube.com/watch?v=RcwWum0ae84 crypto
- https://www.youtube.com/watch?v=TPaaes94bUY crypto`
+ const data = `https://www.youtube.com/watch?v=3AX-OQwhbq4 coding`
channels/cmgriffing.scroll
Changed around line 1
+ ../channels.parsers
+
+ id cmgriffing
+ url https://www.youtube.com/@cmgriffing
+ status live
+ channelid UCOVg6EFk0ZCeqzZka9u4nZw
+ channeltitle cmgriffing
+ networks coding
+ neweststream 3AX-OQwhbq4
+ chat true
+ streamtime 2024-12-01T01:40:40.179Z
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/breckyunits.scroll
channels/breckyunits.scroll
Changed around line 2
- status off
+ status live
- neweststream oMb5HQ-RqxE
+ neweststream Lupsdqjib48
ffff:68.146.20.155
ffff:68.146.20.155
1 month ago
updated channels/jaydyer.scroll
channels/jaydyer.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/dustybc.scroll
channels/dustybc.scroll
Changed around line 2
- status live
+ status off
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/theprimetimeagen.scroll
channels/theprimetimeagen.scroll
Changed around line 2
- status live
+ status off
1
1
1 month ago
updated channels/redsquirrelstudios.scroll
addchannel.mjs
Changed around line 49: https://www.youtube.com/watch?v=RcwWum0ae84 crypto
- const [url, collections] = line.split(" ")
- yt.createChannelFile(url, collections)
+ const [url, networks] = line.split(" ")
+ yt.createChannelFile(url, networks)
channels.parsers
Changed around line 18: statusParser
- collectionsParser
+ networksParser
- description Which collections does this belong to?
+ description Which networks does this belong to?
channels/UC0e3QhIYukixgh5VVpKHH9Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UC0e3QhIYukixgh5VVpKHH9Q
- collections coding
+ networks coding
channels/UC14ap4T608Zz_Mz4eezhIqw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC14ap4T608Zz_Mz4eezhIqw
- collections ambience
+ networks ambience
channels/UC1fLEeYICmo3O9cUsqIi7HA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HA
- collections coding
+ networks coding
channels/UC29ju8bIPH5as8OGnQzwJyA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyA
- collections coding
+ networks coding
channels/UC2D6eRvCeMtcF5OGHf1-trw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC2D6eRvCeMtcF5OGHf1-trw
- collections coding
+ networks coding
channels/UC3EsPQp04deLlxQxc2b2__g.scroll
Changed around line 5: url https://www.youtube.com/channel/UC3EsPQp04deLlxQxc2b2__g
- collections ambience
+ networks ambience
channels/UC46wWUso9H5KPQcoL9iE3Ug.scroll
Changed around line 5: url https://www.youtube.com/channel/UC46wWUso9H5KPQcoL9iE3Ug
- collections coding
+ networks coding
channels/UC4JX40jDee_tINbkjycV4Sg.scroll
Changed around line 5: url https://www.youtube.com/channel/UC4JX40jDee_tINbkjycV4Sg
- collections coding
+ networks coding
channels/UC4L-dSrzbPoZcr1Av5GvwKw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC4L-dSrzbPoZcr1Av5GvwKw
- collections ambience
+ networks ambience
channels/UC5Sl4VbJELXi9SCaWbTdXfA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC5Sl4VbJELXi9SCaWbTdXfA
- collections ambience
+ networks ambience
channels/UC6Q2ZkwzOjbeMEhLJNpZKaA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC6Q2ZkwzOjbeMEhLJNpZKaA
- collections ambience
+ networks ambience
channels/UC8butISFwT-Wl7EV0hUK0BQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UC8butISFwT-Wl7EV0hUK0BQ
- collections coding
+ networks coding
channels/UC8gbWbcNNyb5-NIXvFklkOA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC8gbWbcNNyb5-NIXvFklkOA
- collections science
+ networks science
channels/UC9-l6tK1cID43cvFE0tDQtA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9-l6tK1cID43cvFE0tDQtA
- collections ambience
+ networks ambience
channels/UC9OM-qeiYIPtAkBe9veG5uw.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9OM-qeiYIPtAkBe9veG5uw
- collections science
+ networks science
channels/UC9Yp2yz6-pwhQuPlIDV_mjA.scroll
Changed around line 5: url https://www.youtube.com/channel/UC9Yp2yz6-pwhQuPlIDV_mjA
- collections coding
+ networks coding
channels/UCCHrTE-Z_GRWAUpnf1FVeGw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCCHrTE-Z_GRWAUpnf1FVeGw
- collections science
+ networks science
channels/UCEyDPrWKqwWORC6TFTo4a-w.scroll
Changed around line 5: url https://www.youtube.com/channel/UCEyDPrWKqwWORC6TFTo4a-w
- collections ambience
+ networks ambience
channels/UCFjM4SzH8zAvsC0azlStgaw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCFjM4SzH8zAvsC0azlStgaw
- collections ambience
+ networks ambience
channels/UCFzph9x-n9FR52BI94Zfgww.scroll
Changed around line 5: url https://www.youtube.com/channel/UCFzph9x-n9FR52BI94Zfgww
- collections science
+ networks science
channels/UCGjd2P9By_xh0-UrGW3SaZw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCGjd2P9By_xh0-UrGW3SaZw
- collections ambience
+ networks ambience
channels/UCJ35n3ueAN0cWvQqKptu-Zg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCJ35n3ueAN0cWvQqKptu-Zg
- collections ambience
+ networks ambience
channels/UCJhjE7wbdYAae1G25m0tHAA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCJhjE7wbdYAae1G25m0tHAA
- collections ambience
+ networks ambience
channels/UCKvKjZ3l9azWz4F49q2R3tQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCKvKjZ3l9azWz4F49q2R3tQ
- collections ambience
+ networks ambience
channels/UCLNgu_OupwoeESgtab33CCw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCLNgu_OupwoeESgtab33CCw
- collections coding
+ networks coding
channels/UCMv1mrz-j0iTVmHCFzMkZ_g.scroll
Changed around line 5: url https://www.youtube.com/channel/UCMv1mrz-j0iTVmHCFzMkZ_g
- collections science
+ networks science
channels/UCNlfGuzOAKM1sycPuM_QTHg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCNlfGuzOAKM1sycPuM_QTHg
- collections ambience
+ networks ambience
channels/UCOVcAiUMS7RZ6RVUcrwAYXA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCOVcAiUMS7RZ6RVUcrwAYXA
- collections ambience
+ networks ambience
channels/UCSFB7Xy5Fa1pVVKP_CajIrw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSFB7Xy5Fa1pVVKP_CajIrw
- collections ambience
+ networks ambience
channels/UCSJ4gkVC6NrvII8umztf0Ow.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow
- collections ambience
+ networks ambience
channels/UCSJbGtTlrDami-tDGPUV9-w.scroll
Changed around line 5: url https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
- collections coding
+ networks coding
channels/UCUc8mpd7aQROHAb-KxdoGww.scroll
Changed around line 5: url https://www.youtube.com/channel/UCUc8mpd7aQROHAb-KxdoGww
- collections ambience
+ networks ambience
channels/UCVX_4LoUm4mdZBPdpMJkkSQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCVX_4LoUm4mdZBPdpMJkkSQ
- collections ambience
+ networks ambience
channels/UCXbXfisDHV_gDjawCKTyTIw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCXbXfisDHV_gDjawCKTyTIw
- collections ambience
+ networks ambience
channels/UCZR3-lM6Z-n5_UGHlwx_Rpw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCZR3-lM6Z-n5_UGHlwx_Rpw
- collections ambience
+ networks ambience
channels/UCaG0IHN1RMOZ4-U3wDXAkwA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCaG0IHN1RMOZ4-U3wDXAkwA
- collections science
+ networks science
channels/UCb1ANUIW7arUUDI-Mwz65rw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCb1ANUIW7arUUDI-Mwz65rw
- collections ambience
+ networks ambience
channels/UCbprhISv-0ReKPPyhf7-Dtw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCbprhISv-0ReKPPyhf7-Dtw
- collections science
+ networks science
channels/UCdRNCCz2FDwE7svh7sDuc2Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UCdRNCCz2FDwE7svh7sDuc2Q
- collections science
+ networks science
channels/UCdsNEJzi7vGVL0k1YDe2znA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCdsNEJzi7vGVL0k1YDe2znA
- collections ambience
+ networks ambience
channels/UCeTVoczn9NOZA9blls3YgUg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCeTVoczn9NOZA9blls3YgUg
- collections science
+ networks science
channels/UCetYFjkhf7S7LwiuJxeC28g.scroll
Changed around line 5: url https://www.youtube.com/channel/UCetYFjkhf7S7LwiuJxeC28g
- collections science
+ networks science
channels/UChIv2ovrTHbZDDIaLFR9P-Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UChIv2ovrTHbZDDIaLFR9P-Q
- collections ambience
+ networks ambience
channels/UCjkLYVF8Up8zt9ZQNLpR_TQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCjkLYVF8Up8zt9ZQNLpR_TQ
- collections science
+ networks science
channels/UCjzHeG1KWoonmf9d5KBvSiw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCjzHeG1KWoonmf9d5KBvSiw
- collections ambience
+ networks ambience
channels/UCkFeoNSqYTa7trn75WM9tsg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCkFeoNSqYTa7trn75WM9tsg
- collections science
+ networks science
channels/UClBrT0ADeJnemAyp2EbzVFw.scroll
Changed around line 5: url https://www.youtube.com/channel/UClBrT0ADeJnemAyp2EbzVFw
- collections ambience
+ networks ambience
channels/UCmGU7IuCWuFRhM8WXvOEM4A.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmGU7IuCWuFRhM8WXvOEM4A
- collections ambience
+ networks ambience
channels/UCmYuOrhYCw5K02OTuXTKGcA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmYuOrhYCw5K02OTuXTKGcA
- collections science
+ networks science
channels/UCmla4OjsAqsyAbjS5XYqfPg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCmla4OjsAqsyAbjS5XYqfPg
- collections ambience
+ networks ambience
channels/UCnLjr0czO5zPsJYubbrvHCw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCnLjr0czO5zPsJYubbrvHCw
- collections ambience
+ networks ambience
channels/UCnejwhgQB5D_H7envJJgbXQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCnejwhgQB5D_H7envJJgbXQ
- collections science
+ networks science
channels/UCoOu4D7foJWfKvcDLxqrF2Q.scroll
Changed around line 5: url https://www.youtube.com/channel/UCoOu4D7foJWfKvcDLxqrF2Q
- collections science
+ networks science
channels/UCpDqi4cjYZ0UZYr_1Odhavg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCpDqi4cjYZ0UZYr_1Odhavg
- collections ambience
+ networks ambience
channels/UCqrILQNl5Ed9Dz6CGMyvMTQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCqrILQNl5Ed9Dz6CGMyvMTQ
- collections coding
+ networks coding
channels/UCsBjURrPoezykLs9EqgamOA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA
- collections coding
+ networks coding
channels/UCuJMRZh0c4jaQsE7IYpAqUA.scroll
Changed around line 5: url https://www.youtube.com/channel/UCuJMRZh0c4jaQsE7IYpAqUA
- collections science
+ networks science
channels/UCuPkgKp2-9zMuVIr-eAFjyw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCuPkgKp2-9zMuVIr-eAFjyw
- collections science
+ networks science
channels/UCwobzUc3z-0PrFpoRxNszXQ.scroll
Changed around line 5: url https://www.youtube.com/channel/UCwobzUc3z-0PrFpoRxNszXQ
- collections ambience
+ networks ambience
channels/UCwqusr8YDwM-3mEYTDeJHzw.scroll
Changed around line 5: url https://www.youtube.com/channel/UCwqusr8YDwM-3mEYTDeJHzw
- collections science
+ networks science
channels/UCy6A4u_9X_FyN3DZMLtwjUg.scroll
Changed around line 5: url https://www.youtube.com/channel/UCy6A4u_9X_FyN3DZMLtwjUg
- collections ambience
+ networks ambience
channels/aesignage.scroll
Changed around line 5: url https://www.youtube.com/@aesignage
- collections worldcams
+ networks worldcams
channels/airlinerslive.scroll
Changed around line 5: url https://www.youtube.com/@airlinerslive
- collections worldcams
+ networks worldcams
channels/alpinelodgingtelluride.scroll
Changed around line 5: url https://www.youtube.com/@alpinelodgingtelluride
- collections worldcams
+ networks worldcams
channels/ambientcinematics.scroll
Changed around line 5: url https://www.youtube.com/@AmbientCinematics
- collections ambience
+ networks ambience
channels/bigbadbench.scroll
Changed around line 5: url https://www.youtube.com/@BigBadBench
- collections coding
+ networks coding
channels/birderking.scroll
Changed around line 5: url https://www.youtube.com/@birderking
- collections nature
+ networks nature
channels/bitcoinliveyt.scroll
Changed around line 5: url https://www.youtube.com/@bitcoinliveyt
- collections crypto
+ networks crypto
channels/bitcoinunleashedwithov.scroll
Changed around line 5: url https://www.youtube.com/@bitcoinunleashedwithov
- collections crypto
+ networks crypto
channels/breckyunits.scroll
Changed around line 5: url https://www.youtube.com/@breckyunits
- collections warpcast coding
+ networks warpcast coding
channels/brisbanelivestream.scroll
Changed around line 5: url https://www.youtube.com/@brisbanelivestream
- collections worldcams
+ networks worldcams
channels/buenasnochesfarcaster.scroll
Changed around line 5: url https://www.youtube.com/@BuenasNochesFarcaster
- collections warpcast
+ networks warpcast
channels/cafemusicbgmchannel.scroll
Changed around line 5: url https://www.youtube.com/@cafemusicbgmchannel
- collections ambience
+ networks ambience
channels/caothicamhoa.scroll
Changed around line 5: url https://www.youtube.com/@caothicamhoa
- collections sports
+ networks sports
channels/chartprime.scroll
Changed around line 5: url https://www.youtube.com/@chartprime
- collections crypto
+ networks crypto
channels/chocolatesundaes.scroll
Changed around line 5: url https://www.youtube.com/@ChocolateSundaes
- collections standup
+ networks standup
channels/chrisgo.scroll
Changed around line 5: url https://www.youtube.com/@chrisgo
- collections warpcast
+ networks warpcast
channels/crypto_wenmoon.scroll
Changed around line 5: url https://www.youtube.com/@Crypto_WenMoon
- collections warpcast
+ networks warpcast
channels/cryptochimp8606.scroll
Changed around line 5: url https://www.youtube.com/@cryptochimp8606
- collections crypto
+ networks crypto
channels/cryptomiki.scroll
Changed around line 5: url https://www.youtube.com/@cryptomiki
- collections crypto
+ networks crypto
channels/davidconnelly.scroll
Changed around line 5: url https://www.youtube.com/@davidconnelly
- collections coding
+ networks coding
channels/dawufi.scroll
Changed around line 5: url https://www.youtube.com/@dawufi
- collections warpcast
+ networks warpcast
channels/dumdummakegame.scroll
Changed around line 5: url https://www.youtube.com/@DumDumMakeGame
- collections coding
+ networks coding
channels/dustybc.scroll
Changed around line 5: url https://www.youtube.com/@dustybc
- collections crypto
+ networks crypto
channels/dylsteck.scroll
Changed around line 5: url https://www.youtube.com/@dylsteck
- collections warpcast
+ networks warpcast
channels/earthcam.scroll
Changed around line 5: url https://www.youtube.com/@earthcam
- collections worldcams
+ networks worldcams
channels/earthtv.scroll
Changed around line 5: url https://www.youtube.com/@earthtv
- collections worldcams
+ networks worldcams
channels/exploreafrica.scroll
Changed around line 5: url https://www.youtube.com/@exploreafrica
- collections nature
+ networks nature
channels/explorebears.scroll
Changed around line 5: url https://www.youtube.com/@explorebears
- collections nature
+ networks nature
channels/explorelivenaturecams.scroll
Changed around line 5: url https://www.youtube.com/@explorelivenaturecams
- collections nature
+ networks nature
channels/exploreoceans.scroll
Changed around line 5: url https://www.youtube.com/@exploreoceans
- collections nature
+ networks nature
channels/faceprep.scroll
Changed around line 5: url https://www.youtube.com/@faceprep
- collections coding
+ networks coding
channels/farcasterxyz.scroll
Changed around line 5: url https://www.youtube.com/@farcasterxyz
- collections warpcast
+ networks warpcast
channels/flightfocus365.scroll
Changed around line 5: url https://www.youtube.com/@flightfocus365
- collections worldcams
+ networks worldcams
channels/forexcryptolive.scroll
Changed around line 5: url https://www.youtube.com/@forexcryptolive
- collections crypto
+ networks crypto
channels/forexlia.scroll
Changed around line 5: url https://www.youtube.com/@forexlia
- collections crypto
+ networks crypto
channels/gmfarcaster.scroll
Changed around line 5: url https://www.youtube.com/@GMFarcaster
- collections warpcast
+ networks warpcast
channels/hollywoodflch78.scroll
Changed around line 5: url https://www.youtube.com/@hollywoodflch78
- collections worldcams
+ networks worldcams
channels/homewebserver.scroll
Changed around line 5: url https://www.youtube.com/@HomeWebServer
- collections coding
+ networks coding
channels/jaydyer.scroll
Changed around line 5: url https://www.youtube.com/@jaydyer
- collections crypto
+ networks crypto
channels/kabukistarship.scroll
Changed around line 5: url https://www.youtube.com/@KabukiStarship
- collections coding
+ networks coding
channels/livebookmap.scroll
Changed around line 5: url https://www.youtube.com/@livebookmap
- collections crypto
+ networks crypto
channels/lolnetwork.scroll
Changed around line 5: url https://www.youtube.com/@LOLNetwork
- collections standup
+ networks standup
channels/losfomos.scroll
Changed around line 5: url https://www.youtube.com/@LosFomos
- collections warpcast
+ networks warpcast
channels/magnimindacademy.scroll
Changed around line 5: url https://www.youtube.com/@MagnimindAcademy
- collections coding
+ networks coding
channels/marekrogalski.scroll
Changed around line 5: url https://www.youtube.com/@marekrogalski
- collections coding
+ networks coding
channels/mariadeseo3191.scroll
Changed around line 5: url https://www.youtube.com/@mariadeseo3191
- collections worldcams
+ networks worldcams
channels/marticlues.scroll
Changed around line 5: url https://www.youtube.com/@marticlues
- collections crypto
+ networks crypto
channels/muoi_vlog.scroll
Changed around line 5: url https://www.youtube.com/@muoi_vlog
- collections sports
+ networks sports
channels/namibiacam.scroll
Changed around line 5: url https://www.youtube.com/@namibiacam
- collections nature
+ networks nature
channels/nasaspaceflight.scroll
Changed around line 5: url https://www.youtube.com/@nasaspaceflight
- collections worldcams
+ networks worldcams
channels/nature-live.scroll
Changed around line 5: url https://www.youtube.com/@nature-live
- collections nature
+ networks nature
channels/netfoundation.scroll
Changed around line 5: url https://www.youtube.com/@NETFoundation
- collections coding
+ networks coding
channels/okbangershow.scroll
Changed around line 5: url https://www.youtube.com/@okbangershow
- collections warpcast
+ networks warpcast
channels/omglivetv1.scroll
Changed around line 5: url https://www.youtube.com/@omglivetv1
- collections worldcams
+ networks worldcams
channels/piratesoftware.scroll
Changed around line 5: url https://www.youtube.com/@PirateSoftware
- collections coding
+ networks coding
channels/programmer-network.scroll
Changed around line 5: url https://www.youtube.com/@programmer-network
- collections coding
+ networks coding
channels/rainsoundnatural2612.scroll
Changed around line 5: url https://www.youtube.com/@rainsoundnatural2612
- collections ambience
+ networks ambience
channels/rawstartup.scroll
Changed around line 5: url https://www.youtube.com/@RawStartup
- collections coding
+ networks coding
channels/redsquirrelstudios.scroll
Changed around line 2
- status live
+ status removed
- collections nature
+ networks nature
channels/relaxjazzcafe1990.scroll
Changed around line 5: url https://www.youtube.com/@relaxjazzcafe1990
- collections ambience
+ networks ambience
channels/robingaming88.scroll
Changed around line 5: url https://www.youtube.com/@robingaming88
- collections coding
+ networks coding
channels/seejamaica.scroll
Changed around line 5: url https://www.youtube.com/@seejamaica
- collections worldcams
+ networks worldcams
channels/smoothjazzmusicbgm..scroll
Changed around line 5: url https://www.youtube.com/@smoothjazzmusicbgm.
- collections ambience
+ networks ambience
channels/solentships.scroll
Changed around line 5: url https://www.youtube.com/@solentships
- collections worldcams
+ networks worldcams
channels/streamtimelive.scroll
Changed around line 5: url https://www.youtube.com/@streamtimelive
- collections worldcams
+ networks worldcams
channels/swan_bitcoin.scroll
Changed around line 5: url https://www.youtube.com/@swan_bitcoin
- collections crypto
+ networks crypto
channels/tametheark.scroll
Changed around line 5: url https://www.youtube.com/@tametheark
- collections crypto
+ networks crypto
channels/teleportcamera.scroll
Changed around line 5: url https://www.youtube.com/@teleportcamera
- collections worldcams
+ networks worldcams
channels/theprimetimeagen.scroll
Changed around line 5: url https://www.youtube.com/@ThePrimeTimeagen
- collections coding
+ networks coding
channels/therealsamuiwebcam.scroll
Changed around line 5: url https://www.youtube.com/@therealsamuiwebcam
- collections worldcams
+ networks worldcams
channels/tranquiljazzvibes-24.scroll
Changed around line 5: url https://www.youtube.com/@tranquiljazzvibes-24
- collections ambience
+ networks ambience
channels/tvltrzcianka1.scroll
Changed around line 5: url https://www.youtube.com/@tvltrzcianka1
- collections worldcams
+ networks worldcams
channels/useip.scroll
Changed around line 5: url https://www.youtube.com/@useip
- collections worldcams
+ networks worldcams
channels/virtualrailfan.scroll
Changed around line 5: url https://www.youtube.com/@virtualrailfan
- collections worldcams
+ networks worldcams
channels/webcamgreece.scroll
Changed around line 5: url https://www.youtube.com/@webcamgreece
- collections worldcams
+ networks worldcams
channels/webcamsydney.scroll
Changed around line 5: url https://www.youtube.com/@webcamsydney
- collections worldcams
+ networks worldcams
channels/wolfofbaystreet.scroll
Changed around line 5: url https://www.youtube.com/@wolfofbaystreet
- collections warpcast
+ networks warpcast
channels/xrpgen.scroll
Changed around line 5: url https://www.youtube.com/@xrpgen
- collections crypto
+ networks crypto
todo.scroll
Changed around line 2
- [x] Hand written collections are the best
+ [x] Hand written networks are the best
- [x] 10x better collections
+ [x] 10x better networks
- [] 10 more collections
+ [] 10 more networks
- [] cohesive style.
- [] probably frosted glass, futuristic.
- [] easily themeable
+ [x] cohesive style.
+ [x] probably frosted glass, futuristic.
+ [x] easily themeable
Changed around line 28
- [] chat
+ [x] chat
togger.js
Changed around line 2: let staticNoise = document.querySelector(".static-noise")
- const defaultCollection = "all"
+ const defaultNetwork = "all"
Changed around line 14: class Togger {
- this.collectionNames = Array.from(
+ this.networkNames = Array.from(
- .map((c) => c.collections)
+ .map((c) => c.networks)
- this.collectionNames.sort()
+ this.networkNames.sort()
- const startCollection =
+ const startNetwork =
+ params.get("network") ||
- defaultCollection
+ defaultNetwork
- // Track indexes per collection
- this.collectionIndexes = {}
- this.collectionNames.forEach((name) => {
- this.collectionIndexes[name] = 0
+ // Track indexes per network
+ this.networkIndexes = {}
+ this.networkNames.forEach((name) => {
+ this.networkIndexes[name] = 0
- this.loadStreams(startCollection)
+ this.loadStreams(startNetwork)
- // Store initial index for current collection
- this.collectionIndexes[this.collectionName] = this.currentIndex
+ // Store initial index for current network
+ this.networkIndexes[this.networkName] = this.currentIndex
Changed around line 160: class Togger {
- collections: "custom",
+ networks: "custom",
Changed around line 171: class Togger {
- channel.collections += " all"
+ channel.networks += " all"
- get collectionIndex() {
- return this.collectionNames.indexOf(this.collectionName)
+ get networkIndex() {
+ return this.networkNames.indexOf(this.networkName)
- nextCollection() {
- // Save current index for current collection
- this.collectionIndexes[this.collectionName] = this.currentIndex
+ nextNetwork() {
+ // Save current index for current network
+ this.networkIndexes[this.networkName] = this.currentIndex
- const { collectionNames, collectionIndex } = this
- const collectionName =
- collectionNames[(collectionIndex + 1) % collectionNames.length]
- this.loadStreams(collectionName)
+ const { networkNames, networkIndex } = this
+ const networkName =
+ networkNames[(networkIndex + 1) % networkNames.length]
+ this.loadStreams(networkName)
- // Restore saved index for new collection
- this.currentIndex = this.collectionIndexes[collectionName]
+ // Restore saved index for new network
+ this.currentIndex = this.networkIndexes[networkName]
- previousCollection() {
- // Save current index for current collection
- this.collectionIndexes[this.collectionName] = this.currentIndex
+ previousNetwork() {
+ // Save current index for current network
+ this.networkIndexes[this.networkName] = this.currentIndex
- const { collectionNames, collectionIndex } = this
- const collectionName =
- collectionNames[
- (collectionIndex - 1 + collectionNames.length) % collectionNames.length
+ const { networkNames, networkIndex } = this
+ const networkName =
+ networkNames[
+ (networkIndex - 1 + networkNames.length) % networkNames.length
- this.loadStreams(collectionName)
+ this.loadStreams(networkName)
- // Restore saved index for new collection
- this.currentIndex = this.collectionIndexes[collectionName]
+ // Restore saved index for new network
+ this.currentIndex = this.networkIndexes[networkName]
- getCollection(collectionName) {
- const { collectionNames } = this
- if (!collectionNames.includes(collectionName))
- collectionName = defaultCollection
- this.collectionName = collectionName
- return this.channels.filter((c) => c.collections?.includes(collectionName))
+ getNetwork(networkName) {
+ const { networkNames } = this
+ if (!networkNames.includes(networkName))
+ networkName = defaultNetwork
+ this.networkName = networkName
+ return this.channels.filter((c) => c.networks?.includes(networkName))
- loadStreams(collectionName) {
- let streams = this.getCollection(collectionName)
+ loadStreams(networkName) {
+ let streams = this.getNetwork(networkName)
Changed around line 240: class Togger {
- if (collectionName === "all")
+ if (networkName === "all")
Changed around line 281: class Togger {
- this.nextCollection()
+ this.nextNetwork()
- this.previousCollection()
+ this.previousNetwork()
Changed around line 420: class Togger {
- params.set("collection", this.collectionName)
+ params.set("network", this.networkName)
Changed around line 435: class Togger {
- const title = [this.collectionName, current.channeltitle].join(".")
+ const title = [this.networkName, current.channeltitle].join(".")
Changed around line 636: class Togger {
- const volumeRow = createButtonRow([
- createButton("COL-", "ArrowDown"),
- createButton("COL+", "ArrowUp"),
+ const networkRow = createButtonRow([
+ createButton("NET-", "ArrowDown"),
+ createButton("NET+", "ArrowUp"),
- remote.appendChild(volumeRow)
+ remote.appendChild(networkRow)
update.mjs
Changed around line 5: import { YouTubeFeed } from "./youtube.mjs"
- // Generate initial collections
- async function generateInitialCollections() {
- await yt.generateCollection("live -bot -lofi", "general")
- await yt.generateCollection("live ambient music", "ambience")
- await yt.generateCollection("live -bot science", "science")
+ // Generate initial networks
+ async function generateInitialNetworks() {
+ await yt.generateNetwork("live -bot -lofi", "general")
+ await yt.generateNetwork("live ambient music", "ambience")
+ await yt.generateNetwork("live -bot science", "science")
- // Process existing collection files
- async function processCollectionFiles() {
+ // Process existing network files
+ async function processNetworkFiles() {
- const collectionDir = path.join(__dirname, "collections")
- const files = await readdir(collectionDir)
+ const networkDir = path.join(__dirname, "networks")
+ const files = await readdir(networkDir)
- const filePath = path.join(collectionDir, file)
+ const filePath = path.join(networkDir, file)
- // Get collection name from filename (remove .scroll extension)
- const collectionName = path.basename(file, ".scroll")
+ // Get network name from filename (remove .scroll extension)
+ const networkName = path.basename(file, ".scroll")
- await yt.channelsToCollection(lines, collectionName)
+ await yt.channelsToNetwork(lines, networkName)
- console.error("Error processing collection files:", error)
+ console.error("Error processing network files:", error)
Changed around line 42: async function processCollectionFiles() {
- await generateInitialCollections()
- await processCollectionFiles()
- console.log("Successfully processed all collections")
+ await generateInitialNetworks()
+ await processNetworkFiles()
+ console.log("Successfully processed all networks")
youtube.mjs
Changed around line 216: class YouTubeFeed {
- async channelsToCollection(channels, name) {
+ async channelsToNetwork(channels, name) {
- await this.saveCollection(streams, name)
+ await this.saveNetwork(streams, name)
- async saveCollection(streams, name) {
+ async saveNetwork(streams, name) {
- "collectionsCache",
- name + "Collection.json",
+ "networksCache",
+ name + "Network.json",
- async generateCollection(query, name) {
+ async generateNetwork(query, name) {
- await this.saveCollection(streams, name)
+ await this.saveNetwork(streams, name)
- async createChannelFile(videoUrl, collections = "youtube") {
+ async createChannelFile(videoUrl, networks = "youtube") {
Changed around line 298: url https://www.youtube.com/@${channelHandle}
- collections ${collections}
+ networks ${networks}
Breck Yunits
Breck Yunits
1 month ago
channels/bitcoinliveyt.scroll
Changed around line 1
+ ../channels.parsers
+
+ id bitcoinliveyt
+ url https://www.youtube.com/@bitcoinliveyt
+ status live
+ channelid UCObE3J0qQ0DzcouV1w4DlGg
+ channeltitle Bitcoin LIVE
+ collections crypto
+ neweststream GoQVqhwOK4g
+ chat true
+ streamtime 2024-12-01T00:23:24.191Z
channels/bitcoinunleashedwithov.scroll
Changed around line 1
+ ../channels.parsers
+
+ id bitcoinunleashedwithov
+ url https://www.youtube.com/@bitcoinunleashedwithov
+ status live
+ channelid UCz7UPg4UiIy_o6NNnmqhGnw
+ channeltitle Bitcoin Unleashed with Oliver Velez
+ collections crypto
+ neweststream V57sMSH_DJQ
+ chat true
+ streamtime 2024-12-01T00:23:24.191Z
channels/cafemusicbgmchannel.scroll
Changed around line 1
+ ../channels.parsers
+
+ id cafemusicbgmchannel
+ url https://www.youtube.com/@cafemusicbgmchannel
+ status live
+ channelid UCJhjE7wbdYAae1G25m0tHAA
+ channeltitle Cafe Music BGM channel
+ collections ambience
+ neweststream DuVZmuzisJo
+ chat true
+ streamtime 2024-12-01T00:23:24.279Z
channels/caothicamhoa.scroll
Changed around line 1
+ ../channels.parsers
+
+ id caothicamhoa
+ url https://www.youtube.com/@caothicamhoa
+ status live
+ channelid UCR7oT-IK597WWXXyVWANIGQ
+ channeltitle CAO THI CẮM HOA
+ collections sports
+ neweststream YbLZXAeXRbQ
+ chat true
+ streamtime 2024-12-01T00:23:24.193Z
channels/chartprime.scroll
Changed around line 1
+ ../channels.parsers
+
+ id chartprime
+ url https://www.youtube.com/@chartprime
+ status live
+ channelid UCyG2T5QGRzJjQVVAr1o4qmw
+ channeltitle ChartPrime
+ collections crypto
+ neweststream k6L3z81iVI8
+ chat true
+ streamtime 2024-12-01T00:23:24.191Z
channels/cryptochimp8606.scroll
Changed around line 1
+ ../channels.parsers
+
+ id cryptochimp8606
+ url https://www.youtube.com/@cryptochimp8606
+ status live
+ channelid UCbDeYWkAAVH371dWHyXM4BA
+ channeltitle Crypto Chimp
+ collections crypto
+ neweststream RcwWum0ae84
+ chat true
+ streamtime 2024-12-01T00:23:24.191Z
channels/cryptomiki.scroll
Changed around line 1
+ ../channels.parsers
+
+ id cryptomiki
+ url https://www.youtube.com/@cryptomiki
+ status live
+ channelid UC_i68tipo4IpVBsS_x6eDMQ
+ channeltitle Crypto Miki
+ collections crypto
+ neweststream Ov6oGuwIfAk
+ chat true
+ streamtime 2024-12-01T00:23:24.192Z
channels/dustybc.scroll
Changed around line 1
+ ../channels.parsers
+
+ id dustybc
+ url https://www.youtube.com/@dustybc
+ status live
+ channelid UCJxiyziwbma-0t5dCW-1OGw
+ channeltitle DustyBC Crypto News
+ collections crypto
+ neweststream F0pZ9F3QkC0
+ chat true
+ streamtime 2024-12-01T00:23:24.258Z
channels/forexcryptolive.scroll
Changed around line 1
+ ../channels.parsers
+
+ id forexcryptolive
+ url https://www.youtube.com/@forexcryptolive
+ status live
+ channelid UC1t1Y2T2jZKnVSsE4D5jQPw
+ channeltitle Forex & Crypto Live
+ collections crypto
+ neweststream S-iXjKgEvbM
+ chat true
+ streamtime 2024-12-01T00:23:24.288Z
channels/forexlia.scroll
Changed around line 1
+ ../channels.parsers
+
+ id forexlia
+ url https://www.youtube.com/@forexlia
+ status live
+ channelid UC53vvfdlTgtACVRbusR1u7Q
+ channeltitle ForexLia
+ collections crypto
+ neweststream fFrLWCCUY68
+ chat true
+ streamtime 2024-12-01T00:23:24.269Z
channels/jaydyer.scroll
Changed around line 1
+ ../channels.parsers
+
+ id jaydyer
+ url https://www.youtube.com/@jaydyer
+ status live
+ channelid UCnt7Iy8GlmdPwy_Tzyx93bA
+ channeltitle Jay Dyer
+ collections crypto
+ neweststream m_Fd0ojolJ4
+ chat true
+ streamtime 2024-12-01T00:23:24.193Z
channels/livebookmap.scroll
Changed around line 1
+ ../channels.parsers
+
+ id livebookmap
+ url https://www.youtube.com/@livebookmap
+ status live
+ channelid UChtOYh9r2n6KDVik05r5JWw
+ channeltitle Live Bookmap
+ collections crypto
+ neweststream mxfRlpuGZ0M
+ chat true
+ streamtime 2024-12-01T00:23:24.180Z
channels/marticlues.scroll
Changed around line 1
+ ../channels.parsers
+
+ id marticlues
+ url https://www.youtube.com/@marticlues
+ status live
+ channelid UCdCKIKi0fgXLuuLVkctmKhg
+ channeltitle Marticlues
+ collections crypto
+ neweststream --45Ma5vkMo
+ chat true
+ streamtime 2024-12-01T00:23:24.192Z
channels/muoi_vlog.scroll
Changed around line 1
+ ../channels.parsers
+
+ id muoi_vlog
+ url https://www.youtube.com/@muoi_vlog
+ status live
+ channelid UCwr6BV06xwB0WzfgFhmyaXA
+ channeltitle Nhịp Sống Phương Nam
+ collections sports
+ neweststream 3dDBGYfQy54
+ chat true
+ streamtime 2024-12-01T00:23:24.260Z
channels/rainsoundnatural2612.scroll
Changed around line 1
+ ../channels.parsers
+
+ id rainsoundnatural2612
+ url https://www.youtube.com/@rainsoundnatural2612
+ status live
+ channelid UCU262Yzz-G0ns8SxDH0j5EA
+ channeltitle Rain Sound Natural
+ collections ambience
+ neweststream x8TAFQauVrU
+ chat true
+ streamtime 2024-12-01T00:23:24.280Z
channels/redsquirrelstudios.scroll
Changed around line 1
+ ../channels.parsers
+
+ id redsquirrelstudios
+ url https://www.youtube.com/@redsquirrelstudios
+ status live
+ channelid UC-DqJ54Dx0a5SzANKdTKwPg
+ channeltitle Red Squirrel Studios
+ collections nature
+ neweststream _a4WQ4UXZVk
+ chat true
+ streamtime 2024-12-01T00:23:24.191Z
channels/relaxjazzcafe1990.scroll
Changed around line 1
+ ../channels.parsers
+
+ id relaxjazzcafe1990
+ url https://www.youtube.com/@relaxjazzcafe1990
+ status live
+ channelid UCZR3-lM6Z-n5_UGHlwx_Rpw
+ channeltitle Relax Jazz Cafe
+ collections ambience
+ neweststream evTQIgdh1iw
+ chat true
+ streamtime 2024-12-01T00:23:24.278Z
channels/smoothjazzmusicbgm..scroll
Changed around line 1
+ ../channels.parsers
+
+ id smoothjazzmusicbgm.
+ url https://www.youtube.com/@smoothjazzmusicbgm.
+ status live
+ channelid UCZpGWKnO56t67JmCfBLwoYA
+ channeltitle Smooth Jazz BGM
+ collections ambience
+ neweststream MtoVJEyCUbA
+ chat true
+ streamtime 2024-12-01T00:23:24.189Z
channels/swan_bitcoin.scroll
Changed around line 1
+ ../channels.parsers
+
+ id swan_bitcoin
+ url https://www.youtube.com/@swan_bitcoin
+ status live
+ channelid UCl4takhOQtiyprismCPsa2Q
+ channeltitle Swan Bitcoin
+ collections crypto
+ neweststream 0KNifW3bFuc
+ chat true
+ streamtime 2024-12-01T00:23:24.194Z
channels/tametheark.scroll
Changed around line 1
+ ../channels.parsers
+
+ id tametheark
+ url https://www.youtube.com/@tametheark
+ status live
+ channelid UCMH_Sp6qccVo5r58K7Hpmcg
+ channeltitle tametheark
+ collections crypto
+ neweststream yw_n1WW_tw0
+ chat true
+ streamtime 2024-12-01T00:23:24.253Z
channels/xrpgen.scroll
Changed around line 1
+ ../channels.parsers
+
+ id xrpgen
+ url https://www.youtube.com/@xrpgen
+ status live
+ channelid UCsasPMe7Jaa8RM4B_j8Qhxg
+ channeltitle Forex Education Live
+ collections crypto
+ neweststream mIyiKKo4B5Q
+ chat true
+ streamtime 2024-12-01T00:23:24.269Z
1
1
1 month ago
updated channels/tranquiljazzvibes-24.scroll
channels/tranquiljazzvibes-24.scroll
Changed around line 1
+ ../channels.parsers
+
+ id tranquiljazzvibes-24
+ url https://www.youtube.com/@tranquiljazzvibes-24
+ status off
+ channelid UCbeAQtTOVUlpPEa3BvCXyPA
+ channeltitle Tranquil Jazz Vibes
+ collections ambience
+ neweststream pMqVjYfO_E4
+ chat true
+ streamtime 2024-12-01T00:23:24.193Z
1
1
1 month ago
updated channels/omglivetv1.scroll
channels/omglivetv1.scroll
Changed around line 2
- status off
+ status live
1
1
1 month ago
updated channels/omglivetv1.scroll
addchannel.mjs
Changed around line 21: const main = async () => {
- const data = `https://www.youtube.com/watch?v=w9yFVxLFAEg coding
- https://www.youtube.com/watch?v=XG9NN-yDlxQ coding
- https://www.youtube.com/watch?v=OO3O-aYwdAw coding`
+ const data = `https://www.youtube.com/watch?v=MtoVJEyCUbA ambience
+ https://www.youtube.com/watch?v=evTQIgdh1iw ambience
+ https://www.youtube.com/watch?v=USrXhhLP5nw sports
+ https://www.youtube.com/watch?v=3dDBGYfQy54 sports
+ https://www.youtube.com/watch?v=YbLZXAeXRbQ sports
+ https://www.youtube.com/watch?v=x8TAFQauVrU ambience
+ https://www.youtube.com/watch?v=pMqVjYfO_E4 ambience
+ https://www.youtube.com/watch?v=DuVZmuzisJo ambience
+ https://www.youtube.com/watch?v=nYqUJX5XDWA worldcams
+ https://www.youtube.com/watch?v=_a4WQ4UXZVk nature
+ https://www.youtube.com/watch?v=F0pZ9F3QkC0 crypto
+ https://www.youtube.com/watch?v=m_Fd0ojolJ4 crypto
+ https://www.youtube.com/watch?v=GoQVqhwOK4g crypto
+ https://www.youtube.com/watch?v=XW0dldugiAA crypto
+ https://www.youtube.com/watch?v=fFrLWCCUY68 crypto
+ https://www.youtube.com/watch?v=k6L3z81iVI8 crypto
+ https://www.youtube.com/watch?v=0KNifW3bFuc crypto
+ https://www.youtube.com/watch?v=Ov6oGuwIfAk crypto
+ https://www.youtube.com/watch?v=mxfRlpuGZ0M crypto
+ https://www.youtube.com/watch?v=yw_n1WW_tw0 crypto
+ https://www.youtube.com/watch?v=mIyiKKo4B5Q crypto
+ https://www.youtube.com/watch?v=V57sMSH_DJQ crypto
+ https://www.youtube.com/watch?v=--45Ma5vkMo crypto
+ https://www.youtube.com/watch?v=S-iXjKgEvbM crypto
+ https://www.youtube.com/watch?v=RcwWum0ae84 crypto
+ https://www.youtube.com/watch?v=TPaaes94bUY crypto`
channels/omglivetv1.scroll
Changed around line 2
- status live
+ status off
- neweststream AZUT3PU7sqs
- viewCount 255875
- likeCount 769
- viewerCount 51
+ neweststream nYqUJX5XDWA
- streamtime 2024-11-25T11:17:13.979Z
+ streamtime 2024-12-01T00:23:24.267Z
togger.js
Changed around line 22: class Togger {
+ this.collectionNames.sort()
youtube.mjs
Changed around line 291: class YouTubeFeed {
- const scrollContent = [
- `../channels.parsers`,
- ``,
- `id ${channelHandle}`,
- `url https://www.youtube.com/@${channelHandle}`,
- `channelid ${channelId}`,
- `channeltitle ${channelTitle}`,
- `status off`,
- `collections ${collections}`,
- `neweststream ${videoId}`,
- `streamtime ${new Date().toISOString()}`,
- ].join("\n")
+ const scrollContent = `../channels.parsers
+
+ id ${channelHandle}
+ url https://www.youtube.com/@${channelHandle}
+ status live
+ channelid ${channelId}
+ channeltitle ${channelTitle}
+ collections ${collections}
+ neweststream ${videoId}
+ chat true
+ streamtime ${new Date().toISOString()}
+ `
Breck Yunits
Breck Yunits
1 month ago
index.scroll
Changed around line 7: lodash.min.js
+
style.css
Changed around line 43: body {
- @keyframes textShadow {
- 0% {
- text-shadow:
- 0.4389924193300864px 0 1px rgba(0, 30, 255, 0.5),
- -0.4389924193300864px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 5% {
- text-shadow:
- 2.7928974010788217px 0 1px rgba(0, 30, 255, 0.5),
- -2.7928974010788217px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 10% {
- text-shadow:
- 0.02956275843481219px 0 1px rgba(0, 30, 255, 0.5),
- -0.02956275843481219px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 15% {
- text-shadow:
- 0.40218538552878136px 0 1px rgba(0, 30, 255, 0.5),
- -0.40218538552878136px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 20% {
- text-shadow:
- 3.4794037899852017px 0 1px rgba(0, 30, 255, 0.5),
- -3.4794037899852017px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 25% {
- text-shadow:
- 1.6125630401149584px 0 1px rgba(0, 30, 255, 0.5),
- -1.6125630401149584px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 30% {
- text-shadow:
- 0.7015590085143956px 0 1px rgba(0, 30, 255, 0.5),
- -0.7015590085143956px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 35% {
- text-shadow:
- 3.896914047650351px 0 1px rgba(0, 30, 255, 0.5),
- -3.896914047650351px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 40% {
- text-shadow:
- 3.870905614848819px 0 1px rgba(0, 30, 255, 0.5),
- -3.870905614848819px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 45% {
- text-shadow:
- 2.231056963361899px 0 1px rgba(0, 30, 255, 0.5),
- -2.231056963361899px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 50% {
- text-shadow:
- 0.08084290417898504px 0 1px rgba(0, 30, 255, 0.5),
- -0.08084290417898504px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 55% {
- text-shadow:
- 2.3758461067427543px 0 1px rgba(0, 30, 255, 0.5),
- -2.3758461067427543px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 60% {
- text-shadow:
- 2.202193051050636px 0 1px rgba(0, 30, 255, 0.5),
- -2.202193051050636px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 65% {
- text-shadow:
- 2.8638780614874975px 0 1px rgba(0, 30, 255, 0.5),
- -2.8638780614874975px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 70% {
- text-shadow:
- 0.48874025155497314px 0 1px rgba(0, 30, 255, 0.5),
- -0.48874025155497314px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 75% {
- text-shadow:
- 1.8948491305757957px 0 1px rgba(0, 30, 255, 0.5),
- -1.8948491305757957px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 80% {
- text-shadow:
- 0.0833037308038857px 0 1px rgba(0, 30, 255, 0.5),
- -0.0833037308038857px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 85% {
- text-shadow:
- 0.09769827255241735px 0 1px rgba(0, 30, 255, 0.5),
- -0.09769827255241735px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 90% {
- text-shadow:
- 3.443339761481782px 0 1px rgba(0, 30, 255, 0.5),
- -3.443339761481782px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 95% {
- text-shadow:
- 2.1841838852799786px 0 1px rgba(0, 30, 255, 0.5),
- -2.1841838852799786px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
-
- 100% {
- text-shadow:
- 2.6208764473832513px 0 1px rgba(0, 30, 255, 0.5),
- -2.6208764473832513px 0 1px rgba(255, 0, 80, 0.3),
- 0 0 3px;
- }
- }
-
- color: #00ff22;
+ color: white;
- animation: textShadow 1.9s infinite;
+ }
+
+ .indicator {
+ position: fixed;
+ top: 1rem;
+ right: 2rem;
+ display: none;
+ z-index: 1001; /* Ensure it's above chat */
+ transition: right 0.3s ease;
- top: 2rem;
+ top: 1rem;
+ display: none;
- color: #00ff22;
+ color: white;
Changed around line 88: body {
- @keyframes fadeout {
- 0% {
- opacity: 1;
- }
-
- 90% {
- opacity: 1;
- }
-
- 100% {
- opacity: 0;
- }
- }
-
Changed around line 112: a.warpcast {
- right: 1rem;
+ right: 2rem;
togger.js
Changed around line 43: class Togger {
- this.addVolumeIndicator()
Changed around line 132: class Togger {
- this.chatFrame.src = `https://www.youtube.com/live_chat?v=${this.currentChannel.streamLink}&embed_domain=` + window.location.hostname
+ this.chatFrame.src =
+ `https://www.youtube.com/live_chat?v=${this.currentChannel.streamLink}&embed_domain=` +
+ window.location.hostname
Changed around line 191: class Togger {
- this.showIndicator(collectionName)
- }
-
- showCollectionIndicator() {
- this.showIndicator(this.collectionName)
Changed around line 207: class Togger {
- this.showIndicator(collectionName)
Changed around line 257: class Togger {
- this.showIndicator(this.collectionName)
Changed around line 324: class Togger {
- this.showCollectionIndicator()
Changed around line 331: class Togger {
- this.showCollectionIndicator()
Changed around line 430: class Togger {
- : 'OFF-AIR'
+ : '- OFF-AIR'
+ const title = [this.collectionName, current.channeltitle].join(".")
- ${current.deepLink}
+ ${title}
+ this.showChannel()
+ }
+
+ showChannel() {
+ const indicator = document.querySelector(".channel-name")
+ indicator.style.display = "block"
+
+ if (this.channelTimeout) clearTimeout(this.channelTimeout)
+
+ // Hide the indicator after 3 seconds
+ this.channelTimeout = setTimeout(() => {
+ indicator.style.display = "none"
+ }, 5000)
Changed around line 582: class Togger {
- // Modify the addVolumeIndicator method
- addVolumeIndicator() {
- const volumeIndicator = document.createElement("div")
- volumeIndicator.className = "indicator"
- volumeIndicator.style.cssText = `
- position: fixed;
- top: 20px;
- right: 20px;
- background: rgba(0, 0, 0, 0.7);
- color: white;
- padding: 10px 20px;
- border-radius: 5px;
- display: none;
- z-index: 1001; /* Ensure it's above chat */
- transition: right 0.3s ease;
- `
- document.body.appendChild(volumeIndicator)
- }
-
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 109: class Togger {
+ this.addRemoteControl()
Changed around line 468: class Togger {
- this.addRemoteControl()
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 99: class Togger {
- background: white;
+ background: transparent;
Breck Yunits
Breck Yunits
1 month ago
channels/chocolatesundaes.scroll
Changed around line 1
+ ../channels.parsers
+
+ id lolnetwork
+ url https://www.youtube.com/@ChocolateSundaes
+ status live
+ channelid UCv8G-xZ_BBGufjbN6jbvLMQ
+ channeltitle Chocolate Sundaes
+ collections standup
+ neweststream 37-X4eYGOFY
+ viewCount 100000
+ likeCount 22000
+ streamtime 2024-11-25T11:17:13.980Z
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 132: class Togger {
- this.chatFrame.src = `https://www.youtube.com/live_chat?v=${this.currentChannel.streamLink}&embed_domain=localhost`
+ this.chatFrame.src = `https://www.youtube.com/live_chat?v=${this.currentChannel.streamLink}&embed_domain=` + window.location.hostname
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 12: const makeWarpCastLink = (link) =>
+ this.isRemoteVisible = true // Add this line near the top
+
Changed around line 111: class Togger {
- // Modify toggleChat to trigger player resize
+ // Update toggleChat to move indicator
+ const indicator = document.querySelector(".indicator")
+
+ indicator.style.right = "420px" // 400px chat width + 20px original padding
+ indicator.style.right = "20px"
- this.resizePlayer() // Resize player when toggling chat
+
+ this.resizePlayer()
Changed around line 136: class Togger {
+ // Add new toggle method for remote
+ toggleRemote() {
+ this.isRemoteVisible = !this.isRemoteVisible
+ const remote = document.querySelector(".remote-control")
+ if (remote) {
+ remote.style.display = this.isRemoteVisible ? "block" : "none"
+ }
+ this.showIndicator(this.isRemoteVisible ? "Remote: ON" : "Remote: OFF")
+ }
+
Changed around line 310: class Togger {
+ case "r":
+ this.toggleRemote()
+ break
Changed around line 576: class Togger {
+ // Modify the addVolumeIndicator method
- // Create volume indicator element
- position: fixed;
- top: 20px;
- right: 20px;
- background: rgba(0, 0, 0, 0.7);
- color: white;
- padding: 10px 20px;
- border-radius: 5px;
- display: none;
- z-index: 1000;
- `
+ position: fixed;
+ top: 20px;
+ right: 20px;
+ background: rgba(0, 0, 0, 0.7);
+ color: white;
+ padding: 10px 20px;
+ border-radius: 5px;
+ display: none;
+ z-index: 1001; /* Ensure it's above chat */
+ transition: right 0.3s ease;
+ `
Changed around line 603: class Togger {
+ remote.style.display = this.isRemoteVisible ? "block" : "none"
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 43: class Togger {
- this.addRemoteControl()
+ this.createChatOverlay()
+ }
+
+ // Replace the createChatOverlay method with this version
+ createChatOverlay() {
+ const overlay = document.createElement("div")
+ overlay.className = "chat-overlay"
+ overlay.style.cssText = `
+ position: fixed;
+ top: 0;
+ right: 0;
+ width: 400px;
+ height: 100vh;
+ background: rgba(0, 0, 0, 0.9);
+ z-index: 1000;
+ display: none;
+ border-left: 1px solid #333;
+ `
+
+ const header = document.createElement("div")
+ header.style.cssText = `
+ height: 40px;
+ background: #1a1a1a;
+ display: flex;
+ align-items: center;
+ padding: 0 16px;
+ color: white;
+ font-size: 14px;
+ font-family: "IBM Plex Mono", monospace;
+ border-bottom: 1px solid #333;
+ `
+ header.textContent = "Live Chat"
+
+ // Add close button
+ const closeButton = document.createElement("button")
+ closeButton.style.cssText = `
+ position: absolute;
+ right: 8px;
+ top: 8px;
+ background: none;
+ border: none;
+ color: #666;
+ font-size: 20px;
+ cursor: pointer;
+ padding: 4px 8px;
+ `
+ closeButton.textContent = "×"
+ closeButton.addEventListener("click", () => this.toggleChat())
+
+ const chatFrame = document.createElement("iframe")
+ chatFrame.style.cssText = `
+ width: 100%;
+ height: calc(100% - 40px);
+ border: none;
+ background: white;
+ `
+
+ header.appendChild(closeButton)
+ overlay.appendChild(header)
+ overlay.appendChild(chatFrame)
+ document.body.appendChild(overlay)
+
+ this.chatOverlay = overlay
+ this.chatFrame = chatFrame
+ }
+
+ // Modify toggleChat to trigger player resize
+ toggleChat() {
+ this.isChatVisible = !this.isChatVisible
+ if (this.isChatVisible) {
+ this.chatOverlay.style.display = "block"
+ this.updateChatUrl()
+ } else {
+ this.chatOverlay.style.display = "none"
+ }
+ this.resizePlayer() // Resize player when toggling chat
+ this.showIndicator(this.isChatVisible ? "Chat: ON" : "Chat: OFF")
+ }
+
+ // Update chat URL when changing channels
+ updateChatUrl() {
+ if (this.isChatVisible && this.currentChannel) {
+ this.chatFrame.src = `https://www.youtube.com/live_chat?v=${this.currentChannel.streamLink}&embed_domain=localhost`
+ }
Changed around line 284: class Togger {
+ case "c":
+ this.toggleChat()
+ break
Changed around line 317: class Togger {
- this.showCollectionIndicator()
+ this.showCollectionIndicator()
- this.showIndicator(
- isMuted
- ? "MUTED"
- : `Volume: ${volume}%`,
- )
+ this.showIndicator(isMuted ? "MUTED" : `Volume: ${volume}%`)
Changed around line 342: class Togger {
- if (this.volume < 10)
- delta = 5
+ if (this.volume < 10) delta = 5
Changed around line 350: class Togger {
- if (this.volume <= 10)
- delta = 5
+ if (this.volume <= 10) delta = 5
Changed around line 389: class Togger {
+ this.updateChatUrl()
Changed around line 429: class Togger {
+ // Update the resizePlayer method to account for chat
+
+ const availableWidth = this.isChatVisible
+ ? window.innerWidth - 400 // Subtract chat width when visible
+ : window.innerWidth
+
- (window.innerWidth -
- Math.min(window.innerHeight * 1.777, window.innerWidth)) /
+ (availableWidth - Math.min(window.innerHeight * 1.777, availableWidth)) /
+
- Math.min(window.innerHeight * 1.777, window.innerWidth),
+ Math.min(window.innerHeight * 1.777, availableWidth),
Changed around line 637: class Togger {
+ // Add chat button row
+ const chatRow = createButtonRow([createButton("CHAT", "c")])
+ remote.appendChild(chatRow)
+
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/theprimetimeagen.scroll
channels/theprimetimeagen.scroll
Changed around line 2
- status off
+ status live
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/theprimetimeagen.scroll
channels/theprimetimeagen.scroll
Changed around line 6: status off
- neweststream FMbxEz3xPIo
+ neweststream ELEJqqhKb3s
ffff:157.46.6.33
ffff:157.46.6.33
1 month ago
updated channels/UCeTVoczn9NOZA9blls3YgUg.scroll
channels/UCeTVoczn9NOZA9blls3YgUg.scroll
Changed around line 2
- status live
+ status removed
ffff:104.252.31.88
ffff:104.252.31.88
1 month ago
updated channels/alpinelodgingtelluride.scroll
channels/alpinelodgingtelluride.scroll
Changed around line 2
- status live
+ status removed
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/UCbprhISv-0ReKPPyhf7-Dtw.scroll
channels/UCbprhISv-0ReKPPyhf7-Dtw.scroll
Changed around line 2
- status live
+ status removed
ffff:72.234.190.31
ffff:72.234.190.31
1 month ago
updated channels/UC5Sl4VbJELXi9SCaWbTdXfA.scroll
channels/UC5Sl4VbJELXi9SCaWbTdXfA.scroll
Changed around line 2
- status live
+ status removed
Breck Yunits
Breck Yunits
1 month ago
todo.scroll
Changed around line 27
- [] real static
+ [] real staticnoise
togger.js
Changed around line 194: class Togger {
- this.toggleMute()
- case " ":
+ case "m":
Changed around line 466: class Togger {
+ document.querySelector(".mute").focus()
Changed around line 528: class Togger {
- createButton("MUTE", " ", { isMute: true }),
+ createButton("MUTE", "m", { isMute: true }),
Breck Yunits
Breck Yunits
1 month ago
togger.js
Changed around line 235: class Togger {
- get volume() {
- return this.player?.getVolume ? this.player.getVolume() : 100
- }
+ volume = 100
- showVolumeIndicator(newVolume) {
+ showVolumeIndicator() {
- : `Volume: ${newVolume === undefined ? volume : newVolume}%`,
+ : `Volume: ${volume}%`,
Changed around line 260: class Togger {
- const currentVolume = this.player.getVolume()
- const newVolume = Math.min(100, currentVolume + 10)
- this.player.setVolume(Math.min(100, currentVolume + 10))
- this.showVolumeIndicator(newVolume)
+ let delta = 10
+ if (this.volume < 10)
+ delta = 5
+ this.volume = Math.min(100, this.volume + delta)
+ this.player.setVolume(this.volume)
+ this.showVolumeIndicator()
- const currentVolume = this.player.getVolume()
- const newVolume = Math.max(0, currentVolume - 10)
- this.player.setVolume(newVolume)
- this.showVolumeIndicator(newVolume)
+ let delta = 10
+ if (this.volume <= 10)
+ delta = 5
+ this.volume = Math.min(100, Math.max(0, this.volume - delta))
+ this.player.setVolume(this.volume)
+ this.showVolumeIndicator()
Changed around line 308: class Togger {
- this.player.setVolume(100)
+ this.player.setVolume(this.volume)