Giter VIP home page Giter VIP logo

gumbo's Introduction

Gumbo

Swollen companion keeping you updated on your Twitch experience

Gumbo is a spiritual successor to Twitch Now, allowing you to access your Twitch experience outside the main ecosystem.

From its user interface, you can check your followed channels and track live streams, as well as discover the popular streams and categories of the moment, all with the ability to customize your experience through a multitude of preferences at your disposal.

This extension also informs you when a channel goes online or changes category, with the possibility to choose the notifications you want.

Install

Chrome also compatible with Edge Opera

Firefox

Build

  1. Create (or use) a Twitch Application.

  2. Create a .env file in the root of your project with the above Twitch Application's Client ID:

    TWITCH_CLIENT_ID=tk0nbw3xavxi9eeor93rpsg6ppxtyd
    
  3. Install the dependencies (yarn install) and build for the desired platform:

    • yarn build:chrome if you want to build for Google Chrome
    • yarn build:firefox if you want to build for Mozilla Firefox

Contributing

Donating

Gumbo is a free extension that does not collect or sell personal user data.

Donations, although optional but greatly appreciated, help support my work and encourage me to offer the best quality products possible.

If you'd like to help my initiative, please consider contributing using PayPal or Coinbase.

Translating

You can help translate Gumbo by registering on Weblate, and join the translation project.

Frequently Asked Questions

Why does it break randomly?

Gumbo can break randomly due to a bug coming from Chromium, which can put the extension in a state of limbo. This is a known issue, which is unfortunately in the hands of the Chromium team.

Are sound notifications supported?

Not officially, Manifest V3 doesn't provide the ability to play audio from a service worker. Workarounds exist, but aren't worth the trouble.

License

Copyright (c) 2022-present Alexandre Breteau

This software is released under the terms of the MIT License. See the LICENSE file for further information.

gumbo's People

Contributors

github-actions[bot] avatar kutaygb avatar seldszar avatar weblate avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

gumbo's Issues

Ability to switch between Twitch streams and YouTube streams

How difficult would it be to add a red Gumbo icon under the purple one that would let you switch to a view of all your YouTube live channels? YouTube is such a mess when it comes to its UI and this would really make Gumbo one of the best extensions out there.

Thank you

stores.accessToken.onChange is being called every minute which is causing notifications to fail to be sent

Describe the bug
Every time the accessToken.onChange event is called, the extension will call refresh with the withNotifications set to false which means it won't send a notification. This is fine but not if it gets called every minute which it seems to be doing. Every time this event gets triggered it calls this every time stores.followedStreams.set(followedStreams); in the refresh function which means it will prevent the difference comparison from noticing that a new stream went live.

I am uncertain if this problem is just limited to me. It is probably a Chromium only problem due to how the problem relates to service workers.

I've been debugging why a lot of people are going live but I'm only getting notified by a few of them. I've narrowed it down to this problem. One odd problem is that it only calls accessToken.onChange when I don't have the background page debug window open. I had to write a persistent logging function to discover this because service workers go to sleep when you close the debug page.

My quick solution to this problem was to remove refresh(false, true) in the event to prevent the spam to the twitch API and to fix the notification difference comparison problem it was causing.

Desktop (please complete the following information):

  • OS: Windows 10
  • Google Chrome | 100.0.4896.127 (Official Build) (64-bit) (cohort: Stable)

[enhancement] Open link in current tab

You can only open Link in a new tab or new window but not the current tab. Would be cool to have that feature but then with the possibility to middle-click to open in a new tab(like links in pages work in browsers post 2010)

"Request failed with status code 401 Unauthorized"

I'm on Firefox Nightly,
and since this afternoon (approximatively 4pm GMT), Gumbo stopped working for me and I got a blank page with only "Request failed with status code 401 Unauthorized" written on it.
And ultimately showing streams that were online when it last worked
New Issue · SeldszarGumbo - Firefox Nightly

Game Name is way too small now

The names of the games are now way too small and too close to the streamers names. It was much better before . It would be better if they were colored, as was suggested. but you have swapped the position and made it smaller.

Unbenannt

Ability to follow channels without Twitch account

Right now, this add-on doesn't work without a Twitch account. Would it be possible to add a functionality to follow channels without actually having a Twitch account (e.g. by providing the channel's username)? The data could then also be exported/imported.

This is what Twire does for example.

Count badge color too bright

Is your feature request related to a problem? Please describe.

Chrome,
The background color of the count badge is too bright now. It was perfect before. I can barely see how many are online
Unbenannt

opening link in new window?

Why does the link when i click on the pop-up notification that the streaming has started open in a new window?
Is it a mistake or a deliberate act?

Open chat in new windows

Awesome add-on.

Can you make the chat opens with new windows with no bars, adress bar or any menu and retain the chat size like in twitch window.

Opening chat in a different tab with huge ui takes alot of space and switching tab.

Streams starting muted

Describe the bug
When opening a stream from Twitch's following page, the stream does not start muted. When opening from Gumbo, the stream starts muted.

To Reproduce
Steps to reproduce the behavior:
Go to your following page on Twitch and middle click to open a stream in a new tab and the stream should start not muted. Click on a stream in Gumbo and the stream should start muted.

Expected behavior
Either for the stream to not start muted, or some option to control that behavior.

Desktop (please complete the following information):

  • OS: FreeBSD 13.1-RELEASE-p2
  • Browser Chromium
  • Version Version 107.0.5304.110 (Official Build) (64-bit)

Additional context
I don't know when this started exactly, but it was relatively recent. Haven't had this problem before December.

Feature request: category filters

Currently, users can filter notifications by channel name.
It would be great to have the ability to filter both notifications and broadcast lists by category/game. Very helpful if you are subscribed to a lot of variety-style streamers and never want to see specific games or categories of content.

opening link in new window? [Reopened]

This is a reopen of a mis-documented bug report with more relevant information
#122

Describe the bug
The notification for category changed and gone live will open in a new window instead of a new tab.
The settings are configured to open in a new tab but it will only open in a new window.
image

To Reproduce
Steps to reproduce the behavior:

  1. Wait for a streamer to go live or change category.
  2. Click the notification
  3. notice it opens in a new window.

Expected behavior
When the settings is configured for a new tab, it should open in a new tab.

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser Firefox
  • Version 108

Additional context
This issue is fairly new with one of the more recent updates.
I have not tested on chromium browsers.

Always show the username of followed streamers

When following Korean, Japanese, or Chinese streamers only their chosen name in their language is shown.

Add an option to also show the username in roman script to easier recognize what streamer you are about to open.

Double Scroll Bars

Describe the bug
Inside the Gumbo popup window, there are two scrollbars instead of one. When scrolling normally, the inner scrollbar scrolls the page down and gets cut off. Shaking the cursor then scrolling again with unlock the outer scrollbar and scroll down the rest of the UI.

To Reproduce
Steps to reproduce the behavior:

  1. Activate the Gumbo popup.
  2. Scroll down.
  3. Wiggle mouse.
  4. Scroll again.

Expected behavior
There should be one scrollbar. The UI should scale to the popup window.

Screenshots
https://i.imgur.com/WAGi8ot.mp4

Desktop (please complete the following information):

  • OS: Win 10
  • Browser: Edge
  • Version 100.0.1185.23 (Official build) beta (64-bit) Same bug on Edge retail

Stuck loading forever

Describe the bug
I think since a few days ago the app is broken and stuck loading the channels like it is shown in the screenshot.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app

Expected behavior
Live twitch channels are shown

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: Google Chrome
  • Version 102.0.5005.63
  • App Version 1.11.0

Additional context
When opening the chrome inspector for the app the error states:

popup.js:25 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'enabled')
    at y.yk [as constructor] (popup.js:25:41860)
    at y.V [as render] (popup.js:2:24064)
    at P (popup.js:2:21591)
    at popup.js:2:17544
    at Array.some (<anonymous>)
    at x (popup.js:2:17441)

Opening the related JS file and "pretifying" the Code it states this error:
image

Gumbo doesnt update/refresh streams

(Chrome latest update, win 10)

Gumbo suddenly started not updating/refreshing streams, which makes the badge not updating, which means i miss streams all the time this problem happens. I dont have a way to know if a stream is actually live or ended because gumbo can gets stuck for hours (or even forever if i dont "recognize" that its stuck).
To unstuck it i have to disable/enable the extension, which sometimes fixes the issue sometimes doesnt. If it doesnt, i try to force the refresh via the refresh button, which again sometimes work and sometimes doesnt.

I already tried purging cache e reinstalling gumbo, but unfortunately the problem is still there.
Actually, prior to the reinstall i could kinda guess gumbo wasnt refreshing because the streams that were there even after they ended didnt have the thumbnails ( #49 ) Now its worse because everything its completely freezed in time, with thumbnails and all, so if a stream ends or a new one starts i literally have no way to know unless i randomly restart gumbo or refresh.

I dont know if im the only one having these big issues, but hopefully there is a fix for this because i use this extension quite a lot but in this state is basically useless.

Sound only notifications & for individual channels

Is your feature request related to a problem? Please describe.
I don't like desktop notifications ever because they disrupt either gameplay or work.

Describe the solution you'd like
I'd like for Gumbo to have a choice for sound only notifications like Twitch Now does.
nYksTMHKlT

Describe alternatives you've considered
Alternative would be to stick with Twitch Now when it's unknown when it will stop working completely or just look for a different extension.

Additional context
The only thing I want out of an extension like this is, being able to see currently live streams and get a sound only notification when a specific stream from my followed goes live, ideally with volume / sound selection, like exactly the same as Twitch Now would be fine.

Thank you! 🙌

Make the category change notification display the category name in the body

Is your feature request related to a problem? Please describe.
Chrome displays the context message very tiny in the corner of the notification which is the main focus of a this notification.

Describe the solution you'd like
The body should display the main purpose of the category change notification which is the category name.

This is a screenshot from my version of the extension.
image

Sort followed stream by viewers ascending

I am coming from another extension, and the only feature I am missing is the ability to sort followed streams by viewership ascending, the lowest viewership first to largest. Would love to see this option added, thank you.

Crush, because of the performance?

Describe the bug
Sometimes, when I open extension, It crushes with
"Uh-oh, Gumbo is not responding anymore! Please use the button below to reload the extension."

To Reproduce
Steps to reproduce the behavior:
Press the extension button

Expected behavior
fast opening

Desktop (please complete the following information):

  • Windows 10 19044.1706
  • Google Chrome 102.0.5005.63

Additional context
Yes, my laptop is rather old (Inter Core i5-4200U with 16 GB RAM, Radeon HD 8670M with 1 GB dedicated VRAM, Samsung SATA SSD), but still extension needs some optimisations (it's much heavier than good old Twitch Now), it also happens on my Linux which is much faster.
One thing that already comes to mind as one of issues - we don't need to see "real-time tracking of seconds of all my 50 followed online streams", just do it like in Twitch Now - brief snapshot of online time until refreshing.

Batch Together Large Numbers of Notifications on Startup

Is your feature request related to a problem? Please describe.
When starting the browser for the first time after starting up my PC, Gumbo tries creating a notification for every online stream I'm following at that time, which Windows slowly goes through one-by-one. Which can take a while when it's 15+ notifications unless I intervene and manually clear them all in the Notifications Center.

Describe the solution you'd like
The (late, lamented) Twitch Now extension would handle this with a single "# streams online" notification upon having to report a large number of online streams at once.

No streamer category when the notification appears.

Describe the bug
In chrome when the notification appears it says the streamer category in firefox does not appear.

Expected behavior
When the notification appears tell which game he is playing.

Screenshots
image
Here, for example, it was supposed to show that he was on VALORANT.

Desktop (please complete the following information):

  • OS: Windows 11
  • Browser Firefox
  • Version 106

Give the game_name on the StreamCard a distinct color to be easily readable

Is your feature request related to a problem? Please describe.
Problem: When reading over the list of streams it can be overwhelming to try to extract the game name from each card due to the stream name having the same text color

Describe the solution you'd like
Give the card a distinct color to be readable while skimming through the list.
I chose text-red-400/50 as the color for the text in dark mode and it turned out nice.
For light mode, a light blue should work well.

Describe alternatives you've considered
Making the text bold would also give the same effect without adding a new color to the pallet.

Additional context
This is my solution to the problem using the text color described above.
image

Count badge color too dark

Is your feature request related to a problem? Please describe.
Firefox.
The background color of the count badge should not be black, rather it should be a light grey to integrate better with the Firefox dark theme.

Describe the solution you'd like
Comparison to uBlock origin:

grafik

Not sure if this is a default color that can be read from Firefox but the uBlock origin color seems pretty good.

Import settings won't open a finder window on MacOS using firefox

Hello,

I recently switched to Firefox and I'm trying to import Gumbo settings from the other browser and the import button isn't working. The export button works fine. I tried creating another profile in Firefox just in case it was a profile issue, but it doesn't work. I have an M1 MBP on the latest version of MacOS (12.6).

Let me know if there is anything you'd like me to do to diagnose.

ios app?

would be huge since not many apps like this in the appstore. the twitch app notifications are always 20 mins late

Category is slightly cut-off at the bottom

Describe the bug
For some categories, the letters that for far below the font baseline (like 'g') are not drawn entirely.

To Reproduce
Steps to reproduce the behavior:

  1. Follow a Just chatting online channel
  2. Click on the extension's icon
  3. The 'g' of the Just chatting category should be cut-off at the bottom

Expected behavior
The category name should be drawn entirely.

Screenshots
image

Desktop (please complete the following information):

  • OS: ArchLinux
  • Browser Firefox Developer Edition
  • Version 105

Gumbo in Firefox doesn't display offline streams

Describe the bug

The extension doesn't display offline streams (no matter if "Show live channels only" in Settings is enabled or not).

Desktop:

  • Linux
  • Firefox
  • 97.0.2

Additional context

But I can see my followed channels in Settings -> Notifications

Add Languages

Hello, I would like if its possible to add languages, I will contribute translating it to spanish

Regards

Content slightly cut off when used from firefox overflow menu

Describe the bug
If you move the extension to the "overflow menu" in Firefox (so it isn't show all the time), the extension is opened with a thick bar at the top and in a slightly thinner box which cuts off some of the content on the right side (like the scrollbar and the icon next to viewer count).

To Reproduce

  1. Install Firefox
  2. Install Gumbo
  3. (optional) Sign in to Twitch in the extension, makes the bug more noticeable
  4. Right click Gumbo's icon > "Pin to Overflow Menu"
  5. Open Gumbo from overflow menu
  6. Bleed from your eyes

Expected behavior
Content is not cut off

Screenshots explain this better than words
Screenshot_20220814_232753

Desktop (please complete the following information):

Firefox 101 on Fedora Linux 35

Screenshot_20220814_232822

Import settings file into Firefox version broken

Version 1.11.3 of the extension has this problem (and probably earlier versions too but I only started using the extension yesterday).

  • I first tried exporting settings from Chrome and then importing to Firefox. Didn't work.
  • Then I tried making changes on the Firefox version, exporting settings, resetting extension, and then importing the file back into Firefox. Didn't work.

This only affects Firefox version. Chrome version imports all settings no problem.

Gumbo does not display the correct stream information.

Describe the bug
Gumbo is displaying streams that are offline as online and is reporting a runtime of the stream into 60+ hours which is incorrect

To Reproduce
I'm logged into twitch via Gumbo and opening the extension and clicking on followed streams displays the wrong info.

Expected behavior
Opening the followed streams section should display the correct info

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 10 pro
  • Browser Firefox
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version 100.0

Additional context
I have logged out and re authenticated Gumbo numerous times to try and fix the problem to no avail.

Tab for followed categories

I'd love to be able to view my followed categories in a separate tab akin to a combo of followed streams and top categories. It'd be great if it included total viewership in the category as well but I realize that might make it too cluttered

Sign in doesn't work, opens a blank pop up window

Tried to use this to replace Twitch Now, but whenever I click on the "Login with Twitch" button, a new window briefly pops up with no address in the URL bar, then disappears. Nothing new shows up in my history, either. I tried disabling pop up blocking and several other extensions, but nothing seems to make a difference. Any suggestions?

image

I installed the version from the Firefox Add-ons site.

[Feature request] "Custom URL" when opening channel

Right now we have the ability to open channel, popup or channel popup, but it'd be cooler if we could customize the popups. For example, clicking on a channel in Gumbo's UI (when set to popup) opens https://player.twitch.tv/?channel=[channel name]&parent=twitch.tv, which is basically muted stream, random quality etc., and it'd be better to customize it how we like, for example: https://player.twitch.tv/?channel=[channel name]&enableExtensions=false&muted=false&parent=twitch.tv&player=popout&quality=chunked&volume=0.01, which basically sets our volume to 1%, and chooses source quality (because the user chose it like that).

The way of implementing it could be as "easy" as just putting desired quality, volume, extensions (true/false), muted (true/false) right under the "click action" list, and just adding parameters to the URL based on what the user chose.

Why use popup instead of channel?: The popup is lighter and faster to load/process, causing the video to lag less. There's too much bloat in the main website, while the player.twitch.tv is just the player with no other Twitch BS. Also, in the player.twitch.tv you can preset the volume so that it always is on a certain level or is muted, meaning you'll never experience Twitch randomly setting your volume to the max and unmute the stream when you open a channel (happens too me too often, where I have volume set to ~5%, muted, and I open another channel and volume is at 50 or 100% and unmuted, blasting my ears).

Number of Live Streams Online value not accurate in extension bubble || Streams not always refreshing properly/automatically

Describe the bug
1: "Number of Live Channels" number bubble on extension icon is no longer updating, not accurate to the current number of streams.
2: First set of streams shown when clicking the extension icon is not accurate, it shows previously-live streams from the last time you opened it instead. This does not update if you click refresh, only if you refresh the streams, and then close and reopen the mini extension window.

To Reproduce
Steps to reproduce the behavior:
Not applicable: constant issue, see above.

Expected behavior
I expect the current streams and number of live channels to be accurate to the real number.

Screenshots
image
You can see that the number of followed streams in the shown list is much more than 5, which is what is shown in the extension bubble.

For the second issue, it happens after the previous list of channels stop going live, so it would take a few hours to get a good screenshot. The list of currently-live streams will show all of the streams that were live the last time you refreshed, however if they've gone offline, there will be no preview image for any of them, and the counter for their current stream length will show a time as if they had never gone offline.

Desktop (please complete the following information):

  • OS: Windows
  • Browser Chrome
  • Browser Version 110.0.5481.104
  • Extension Version 1.16.5

Additional context
This issue used to occur for me for a while, then for whatever reason stopped happening for about a month, right about when I was thinking of reporting the issue, however it has started happening again recently. I suspect these two issues are related, which is why they are in a single bug report. I do plan on updating my chrome version (it is slightly out of date and requesting me to update it), however I expect that this will not affect the issue. If it does somehow solve it, I will come back and update this in another comment, however assume that it won't in the meantime.

Option to default to popout stream on stream click

Is your feature request related to a problem? Please describe.
Currently you click the stream and it opens the twitch page. You can also click the dots next to the stream title to open the stream in a popout tab - something that I think should be toggleable!

Describe the solution you'd like
Create a toggle in settings to automatically open streams in popout.

Describe alternatives you've considered
Being sad.

Additional context
Nothing to add other than my thanks for the superb extension!

Pinned followed users and pinned categories

Adding 2 more tabs to the side bar for "Pinned followed users" and "Pinned categories" respectively.

EDIT: Forgot to mention, there's no way to pin categories at the moment, so that would need to be added.

I can't turn off notifications

Describe the bug
I had notifications turned on only to a couple streams, but all of a sudden it turned on for all the streams i follow and i can't turn it off. When i click the button to do so nothing happens.

To Reproduce

  1. Go to 'settings' then 'notifications'
  2. Click on any of the buttons and nothing will change.

Expected behavior
I expected the button to go from enabled to disabled. If i change tabs (from 'notifications' to 'badge' and back to 'notifications', for exemple) the button seems to change state, but when i refresh the page it goes back to its original state and i keep getting notifications.

Desktop (please complete the following information):

  • OS: Windows
  • Browser: Brave
  • Version: 1.46.134

Keep popup open after clicking a link

Version 1.15.0 changed behavior of closing popup after clicking a stream.
In particular this window.close line.

Previous ClickBehavior.CreateTab behavior was that the new tab opened with (browser.tabs.create) active: true, but the popup stayed open so multiple steams could be clicked without reopening the popup. I used it to check multiple streams while still browsing gumbo popup before deciding who to watch, without loosing context inside of the popup.

It is possible to open stream with middle-click or with ctrl+click now, which has similar behavior of keeping popup open, but it's with active: false so the last opened stream is not visible, which is worse for my use case.

Closing popup probably makes sense for ClickBehavior.CreateWindow, not sure about ClickBehavior.CreateCurrentTab.

Would you consider reversing the behavior or making it configurable? If you're open to the change but you don't want to do it, then let me know which you prefer and I could make a pull request.

Uh-oh Gumbo is not responding anymore.

Often i encounter the below message. I can not reproduce it with any reliability.
It can happen after Windows resumes from hibernation, but also after a cold boot. I've seen it after force closing chrome.exe and then restarting it again.

Untitled

I'm not sure this is an actual bug, but if you have any idea on how i can deal with this.

Windows 11 latest stable
Chrome latest stable

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.