Code Monkey home page Code Monkey logo

livetl / hyperchat Goto Github PK

View Code? Open in Web Editor NEW
227.0 227.0 24.0 4.73 MB

Improved YouTube chat with CPU/RAM optimizations, customization options, and cutting-edge features!

Home Page: https://livetl.app/hyperchat

License: GNU Affero General Public License v3.0

JavaScript 3.67% HTML 1.25% Svelte 49.00% TypeScript 45.58% CSS 0.51%
chrome-extension firefox-addon hacktoberfest youtube youtube-chat youtube-live youtube-live-chat youtube-livestream

hyperchat's Introduction

LiveTL - Translation Filter for Streams

Tests E2E Tests License: AGPL v3 js-semistandard-style Contributors Issues Total Lines Commit Activity Discord

Demo

Feedback and Contributing

We have a Discord server for those who would like to give feedback or discuss new features! Here is the invite.

If you are interested in helping us solve any issues and/or add features, please let us know in the Discord server and submit a Pull Request!

Development

Note: The repo expects a Linux or Unix-like environment. If you are on Windows, use WSL.

Setup

ℹ LiveTL uses submodules. Make sure to clone the repo with the --recursive flag!

ℹ When pulling, you should also use git pull --recurse.

yarn # use yarn, not npm

Commands

yarn start # devServer
yarn build:production # production
yarn package # package extension zips
yarn build:android # android
yarn test # jest
yarn test:watch # autotest
yarn format # lint
yarn e2e # run e2e tests

Load the build directory in Chrome developer mode.

Hot Reload

Enable chrome://flags/#allow-insecure-localhost to use hot module and UI component reloading.

Developers

LiveTL is developed by these fine people!

hyperchat's People

Contributors

404-program-not-found avatar arkon avatar candygoblen123 avatar chrrubin avatar dependabot[bot] avatar ephemient avatar grumpybear57 avatar hughp135 avatar kentonishi avatar kortik0 avatar lbmaian avatar lutoaraka avatar r2dev2 avatar thatsprettygood avatar yay295 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

hyperchat's Issues

[Feature]: Add toggle to see the user profile icons.

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

It's not a problem, but I find easier to see the icons of each user, that way is easier to see at a glance the same user messages.

Describe the solution you'd like

A toggle in the options page to enable or disable user profile icons.

Expected behavior

When you enable the toggle, you see icons, when you disable it, you don't.

Describe alternatives you've considered

No response

Anything else?

I know that user icons are the most cpu intensive part of the YT chat, but if I have a beefy CPU I want to have the option to show them.

[Feature]: Regex filter chat messages

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

Sometimes you want to filter unwanted messages in the chat based on certain conditions.
This would be useful for things like:

  • Seeing only chat messages in the language that you desire
  • Spam messages
  • Users you don't like

And more...

Describe the solution you'd like

A regex filter system similar to Chat Filter for YouTube Live would solve this problem.

Expected behavior

The regex filter can be applied to either the username or the message itself. The filter should also be reversible, because reversing regex patterns manually can be a pain or even downright impossible.

A convenient feature that wasn't present in the extension I mentioned above is the ability to pre-filter and strip chat emote strings before passing them to the regex filter(s). With this feature, making accurate filters would be much easier, because this avoids false positives/negatives.
(In the extension I mentioned above, emote strings are mixed into the message like: a plain :emote: chat message)

Describe alternatives you've considered

I've tried using Chat Filter for YouTube Live, but it doesn't work with HyperChat.

Anything else?

I submitted a similar issue in LiveTL/LiveTL#406, but I realized that this issue is probably more appropriate here. This extension already have filters like the member-only filter, so I think it wouldn't be out-of-place to also have a regex filter.

i18n

Use weblate and svelte-i18n

[Bug]: Google translate feature translate to my native language instead of the language i select.

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

Google translate translates all messages to my native language which I think it is, instead of the language I select it as.

Steps To Reproduce

  1. Enable Google translate
  2. Select a language that is not your native language
  3. Still translates to your native language, or rather what google think it is.

Expected behavior

That it translates to the language i selected.

What browsers are you seeing the problem on?

Other (Put it in the "Anything else?" section)

Anything else?

Vivaldi which is Chromium basedChromium-based

[Feature Request] Add robot9000 mode option to remove repeated spam messages to improve performance further

One of the things that makes the chat most unreadable on YouTube is the repeated spam of message after message saying the same thing in a short period. This also adds to the performance overhead. A simple check for if a message has been repeated during the current stream (or a set number of minutes) goes a long way to cleaning down the spam messages.

I've made a TamperMonkey UserScript which strips out duplicate messages via overriding the window.fetch in a sliding window that could be used as a base here:
https://greasyfork.org/en/scripts/427292-cleanup-youtube-live-chat-for-spam-r9k-mode/code

Simply put, the algorithm works as:

  • Make a message cache
  • Check the message cache for a stripped version of the message (with emojis, without emojis) within a certain timeframe of the message time, getting the count
  • If the count is over a threshold, remove the message
  • Log the stripped version of the message & the time it would have appeared

Relevant xkcd (but not really): https://blog.xkcd.com/2008/01/14/robot9000-and-xkcd-signal-attacking-noise-in-chat/

[Feature]: Opt in or out of membership gifting

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

As described by my comments on #90

Describe the solution you'd like

.

Expected behavior

.

Describe alternatives you've considered

No response

Anything else?

No response

Keep Active Polls in Chat

Checklist (make sure you do all these before you submit a bug report)

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • I understand that I am not maintaining this codebase, and my suggestion may be rejected for any reason, including "We don't really feel like it" or "That's a little out of scope for this project" (We accept most suggestions, though.)
  • I also understand that even if we do accept your suggestion, it may be removed from the extension at any time, for any reason, without notification. It might not make it to a release version of the extension.

Is your feature request related to a problem? Please describe.
After voting on a poll on a live stream the poll almost instantly disappears, compared to the functionality of the normal YouTube chat where the poll is "pinned" to the bottom of chat and viewers can watch the numbers until the poll is ended by the streamer.

Describe the solution you'd like
Implement a similar functionality to be able to see the progress of votes on the poll until the poll is ended. It should not be hidden after voting.

Describe why this solution should be included in Hyperchat
It is important to include this function to retail usability by replacing the YouTube chat with a more performant version.

Describe alternatives you've considered
Instead of pinning the poll optionally have another location to view "previous" polls including those that have ended to view the final results.

Display Member Icons Next to Usernames

Checklist (make sure you do all these before you submit a bug report)

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • I understand that I am not maintaining this codebase, and my suggestion may be rejected for any reason, including "We don't really feel like it" or "That's a little out of scope for this project" (We accept most suggestions, though.)
  • I also understand that even if we do accept your suggestion, it may be removed from the extension at any time, for any reason, without notification. It might not make it to a release version of the extension.

Is your feature request related to a problem? Please describe.
It would be nice to be able to see member icons (Based on length of subscription)

Describe the solution you'd like
Implement insertion of the proper image for members similar to how the normal YouTube chat does.

Describe why this solution should be included in Hyperchat
It would help to bridge the dissimilarities between Hyperchat and the default chat, it adds some eye-candy to an otherwise plain chat.

Describe alternatives you've considered
Implement this feature behind a setting as there are people that will only want Hyperchat for speed, which images will slow down (Not sure what the actual measured impact would be), alternatively reject the idea entirely.

[Bug]: Coloured mentions always triggered when not logged in

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

image

Steps To Reproduce

  1. Log out from YouTube.
  2. View chat when someone is mentioned.

Expected behavior

Don't show coloured mentions when not logged in.

What browsers are you seeing the problem on?

Firefox, Chrome

Anything else?

No response

Delayed messages

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

Apparently, many users are experiencing a thing where all messages are delayed in a live environment. This sounds like an issue of us adding too much of a delay once the chunk is received. Since live chat chunks are so frequent, can we just not add any delay to live messages? We can keep it for archived chats, but for live ones, we can just show messages instantly without worrying about timing,

Steps To Reproduce

To find users complaining about this, just go to the Hololive fan discord and search "hyperchat."

Expected behavior

no delay

What browsers are you seeing the problem on?

Firefox, Chrome, Microsoft Edge, Other (Put it in the "Anything else?" section)

Anything else?

No response

Add timestamp support

Checklist (make sure you do all these before you submit a bug report)

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • I understand that I am not maintaining this codebase, and my suggestion may be rejected for any reason, including "We don't really feel like it" or "That's a little out of scope for this project" (We accept most suggestions, though.)
  • I also understand that even if we do accept your suggestion, it may be removed from the extension at any time, for any reason, without notification. It might not make it to a release version of the extension.

Is your feature request related to a problem? Please describe.
Default Youtube chat has an option for toggling timestamps and it'd be nice if timestamps showed up when using HyperChat too.

Describe the solution you'd like
Toggling timestamps from the Youtube chat options is reflected in HyperChat.

Describe why this solution should be included in Hyperchat
To replicate Youtube chat functionality.

[Feature]: delete or remove user comments

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

ability to remove/delete user comments

untested in a livestream
tested in a recorded stream live chat

i am the owner of said stream / live chat

Describe the solution you'd like

same feature youtube has when owner or moderator is allowed to remove message

Expected behavior

click with option to remove

Describe alternatives you've considered

api limitation?
needs an oauth key to do this?

Anything else?

No response

[Feature]: Members only filter

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

see belo

Describe the solution you'd like

https://youtube.com/clip/UgkxO0kQYBrGi0fGvmKi7PJBuCRBpUmIHvTJ

tldr: only show member messages so kiara doesn't get backseated

Expected behavior

see belo

Describe alternatives you've considered

No response

Anything else?

No response

[Feature]: Skip emoji-only messages

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

Skip emoji-only messages

Describe the solution you'd like

Skip emoji-only messages

Expected behavior

Skip emoji-only messages

Describe alternatives you've considered

No response

Anything else?

No response

[Feature Request] Hide usernames

Is your feature request related to a problem? Please describe.
I don't really see a reason to display usernames of random chatters, it is just unnecessary

Describe the solution you'd like
Toggle to hide them or remove completely. To distinguish VIP users you can change the background color of message (ex: red for streamer, blue for moderator, green for translator, etc)

Describe why this solution should be included in Hyperchat
Reduces clutter and improves performance by displaying less text. You already hide avatars so it would only be a step in same direction

Describe alternatives you've considered
I usually do this myself with uBO element picker, but this add-on behaves like singleton and I can't fiddle inside chatbox

Filter
youtube.com##yt-live-chat-author-chip.yt-live-chat-text-message-renderer.style-scope

Checklist (make sure you do all these before you submit a bug report)

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • I understand that I am not maintaining this codebase, and my suggestion may be rejected for any reason, including "We don't really feel like it" or "That's a little out of scope for this project" (We accept most suggestions, though.)
  • I also understand that even if we do accept your suggestion, it may be removed from the extension at any time, for any reason, without notification. It might not make it to a release version of the extension.

HyperChat specific settings menu

While we have a settings menu in LiveTL, there are some settings that are specific to hyperchat that should have their own settings menu that is accessable from standalone hyperchat.

Some Ideas for settings:

  • disable the alternating lighter gray thing (@Premeditator on discord)
  • Hyperchat specific Zoom
  • option to default Hyperchat to off
  • custom theme/color options?

Change color of "odd" messages

Currently, the contrast between the green text and the odd boxes is very bad from a design standpoint. the gray should be a lot darker. Even chrome's contrast utility indicates the contrast as dangerously low.
image
So my suggestion is that this color should be darker, or the user should be able to set the color manually.

[Feature]: Remove the bloated banner

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

The banner

HyperChat by LiveTL
It may take a few seconds for messages to start appearing.
HyperChat can reduce CPU usage by up to 80%!
Don't forget to drop a 5-star review, share with your friends, join our Discord server, star the GitHub repository, and chip in a few dollars to help fund future projects (stay tuned)!
NEW IN v2.2.0: HyperChat's standalone settings menu is finally here! You can now easily toggle options like profile pictures, timestamps, usernames, badges, and color themes (inspired by Kiwawa having trouble with turning on dark mode).

is extremely bloated.

It takes half the chat's size on startup and is very unpleasant to see.
Capture
It's also very pointless, since people that have installed HC already know the following:

"HyperChat by LiveTL"
"It may take a few seconds for messages to start appearing."
"HyperChat can reduce CPU usage by up to 80%!"
"Don't forget to drop a 5-star review, share with your friends, join our Discord server, star the GitHub repository, and chip in a few dollars to help fund future projects (stay tuned)!"

This information is all well known when downloading from chrome/firefox store, and should only be written and seen once. We have no reason to download or install it if we don't know these elements, and having them shown on the store page is the only place where it matters. Instead, it bloats every single live chat on YT on every startup. This is plainly annoying and I thought it was a design decision that would be taken out as soon as v1 was done.

The only information that has a point is:
"NEW IN v2.2.0: HyperChat's standalone settings menu is finally here! You can now easily toggle options like profile pictures, timestamps, usernames, badges, and color themes (inspired by Kiwawa having trouble with turning on dark mode)."

And this is still bloated. It doesn't need an extra div in bright colours. BetterTTV used to have the following message on startup of every Twitch chat:

"Welcome to BetterTTV!"

And it was perfect.

Describe the solution you'd like

Remove entirely:

HyperChat by LiveTL
It may take a few seconds for messages to start appearing.
HyperChat can reduce CPU usage by up to 80%!
Don't forget to drop a 5-star review, share with your friends, join our Discord server, star the GitHub repository, and chip in a few dollars to help fund future projects (stay tuned)!

and the div/component that it is into.

Modify into simple plaintext:

NEW IN v2.2.0: HyperChat's standalone settings menu is finally here! You can now easily toggle options like profile pictures, timestamps, usernames, badges, and color themes (inspired by Kiwawa having trouble with turning on dark mode).

Into a simple text line, maybe coloured text:

"v2.2.0: new options for colours, badges, usernames, timestamps. Check the standalone settings menu on the top right."

This is more informative and will actually be read. I highly doubt that anyone reads the last 20% of text on this banner when 80% of it is things they already know about. People will simply skip it if they think the information is pointless to them.

A format of "version: upgrades" with only minimal information is best. People can and should go to the store page to find the details or in the new settings menu.

Expected behavior

The bloat will be removed and some blue text giving a short list of upgrades will be shown instead.

Describe alternatives you've considered

An option to either keep or remove the banner entirely would also work. Tick a box and the banner is never appearing again.

Anything else?

No response

[Firefox 89.0 (64-bit)] Auto scrolling not working if Hyperchat enabled

Describe the bug
Auto scrolling not working if Hyperchat enabled in Firefox 89.0 (64-bit). No issue in Chrome

To Reproduce
Steps to reproduce the behavior:

  1. Go to the live streaming
  2. Click on Enable Hyperchat
  3. Wait until the chat loaded.
  4. Cannot scroll down the chat (Icon is shown, but no effect when clicked).
  5. Switching to Live Chat also doesn't have effect.

Expected behavior
Chat Auto scroll works and arrow button is hidden

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 10 Home 20H2 19042.985
  • Browser Firefox
  • Version 89.0 (64-bit)

[Feature]: Show Gifted Membership in the chat

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

Youtube recently implement gifted membership to select channels. Here an example of gifted membership message in Pekora Channel.

gifted-membership-pekora-channel

Describe the solution you'd like

Shows "gifted membership message" (both, the one that gives the membership and the one that been gifted) in the chat by default just like "membership joining/milestone message" and "superchat message". Maybe an option to turn off gifted membership message too.

Expected behavior

Gifted membership message got shown in the chat. Currently, no gifted membership is shown when Hyperchat is enabled.

Describe alternatives you've considered

No response

Anything else?

No response

Move enable/disable toggle into existing overflow menu

Rather than having a separate button, it'd be nice if it was in YouTube's existing menu alongside the "Toggle timestamps" and "Send feedback" options.

As a sidenote, maybe the "Toggle timestamps" option should be hidden when Hyperchat is enabled since it doesn't do anything.


Screenshot of current UI:

Screen Shot 2021-03-06 at 17 56 10

[Feature]: Safari extension

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

As a Safari user like many others, it would be great if HyperChat was available on Safari as well (both desktop and mobile).

Describe the solution you'd like

A Safari extension ported from the Chrome one, that would also make it work on Safari on iOS and iPadOS.

Expected behavior

Working Safari extension on:

  • Safari desktop
  • Safari iOS
  • Safari iPadOS

Describe alternatives you've considered

No response

Anything else?

https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari

Not working on Waterfox Classic

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

No chat messages appear

Steps To Reproduce

Watch Youtube live-stream

Expected behavior

chat messages appearing...

What browsers are you seeing the problem on?

Other (Put it in the "Anything else?" section)

Anything else?

Waterfox Classic 2021.10

[Bug]: Highlighted text does not communicate with google translate extension

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

When Hyperchat is disabled, you can highlight a message in chat & click on the google translate extension, and the highlighted text will automatically copy over and get translated. When Hyperchat is on however this doesn't work and you have to copy, paste, and translate manually.

Steps To Reproduce

  1. Download the google translate extension and pin it to your extension bar
  2. Open a stream or VOD and highlight a message in chat
  3. Click on the translate extension icon in your bar

Expected behavior

If Hyperchat is disabled the highlighted text should copy over and translate automatically. I would expect the same to happen when Hyperchat is enabled as well.

What browsers are you seeing the problem on?

Chrome

Anything else?

No response

[Bug]: Selecting Text in a Pinned message Collapses the Message

Checklist

  • This is an issue for LiveTL, not Hyperchat. I will go to the Hyperchat repo to report an issue with Hyperchat.
  • This is an issue for the LiveTL web extension, not LiveTL iOS or LiveTL Android. I will go to the iOS or Android repo to report issues for those platforms.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

Copying the text from a pinned message is difficult because the message collapses when you click on it. You can click and drag to select the text, but the messages collapses when you lift up your mouse.

Steps To Reproduce

  1. Click-and-drag to select the text in a pinned message.
  2. Stop holding down the mouse button.
  3. The message collapses.

Expected behavior

When clicking and dragging inside a pinned message, it should not collapse.

What browsers are you seeing the problem on?

Chrome

Anything else?

No response

[Feature]: Smooth scrolling

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

Auto-scrolling is janky when new messages appear

Describe the solution you'd like

Scrolling should be smoother for the visual coherence

Expected behavior

From
1

To
2

Describe alternatives you've considered

No response

Anything else?

No response

[Bug]: No injection in development mode for firefox

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

When I execute yarn start, and load the extension in firefox, it doesn't load the "enable HC" button. It does work in chromium. When I execute yarn build:production, it loads in firefox.

Steps To Reproduce

  1. yarn start
  2. load in firefox

Expected behavior

It should inject the HC button but it doesn't.

What browsers are you seeing the problem on?

Firefox, Chrome

Anything else?

No response

[Bug]: The chat is wiped out randomly

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

The entire chat becomes blank randomly.

Steps To Reproduce

While this happens randomly, but seems that you can reproduce it while switching tabs:

  1. Open a stream archive e.g. https://www.youtube.com/watch?v=pv6WndTSb8M
  2. Wait until hyper chat is running.
  3. Switch to another tab, wait one minute.
  4. Switch back to the stream tab.
  5. All messages disappear.

If you wait another minute, there will be some new messages popping out.

Expected behavior

Hyper chat shouldn't clear the entire chat.

What browsers are you seeing the problem on?

Firefox

Anything else?

While investigating the issue, I found that I got some messages like Video scrubbed or skipped, forcing chat clear from the background console.

Does it mean that all messages will be deleted when there is a browser lag? I also noticed that when switching tabs. the video freezes like 0.1s (the audio doesn't lag at all) before all messages disappear.

[Feature]: Use custom emoji font

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

On older versions of windows, and some other OSs, default emoji fonts are really bland.

Example: here's the Clap emoji on Win7:
bOcBMjQ

Describe the solution you'd like

we can add a option such as "Use System emoji", and let users disable it. Then we can load a font such as noto emoji.

Expected behavior

Emojis should look modern, had have color, while still providing these an option to use their system emoji set should they prefer it (like me).

Describe alternatives you've considered

No response

Anything else?

No response

[Bug]: switching chat hides your own messages

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

when switching between live and top chat, your own messages disappear.

Steps To Reproduce

.

Expected behavior

.

What browsers are you seeing the problem on?

Firefox, Chrome, Microsoft Edge

Anything else?

.

[Bug]: Profile images for superchats aren't shown even with profile images enabled

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

When profile images are enabled in HyperChat settings, superchats don't have the profile images shown even though I would expect them to be.

Steps To Reproduce

  1. Enable profile images in HyperChat settings.
  2. Have a superchat show up in chat.

Expected behavior

Profile image is shown on the superchat.

What browsers are you seeing the problem on?

Firefox

Anything else?

image

[Feature] Replace svg emoji with png counterpart:

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

A performance issue with rendering a massive amount of svg files

Describe the solution you'd like

Using the emoji I’d, we can replace the YouTube svg emoji with either a png counterpart or with the system emoji counterpart

Expected behavior

YouTube emojis, which often get spammed, should be replaced with a png counterpart, or even better, a system emoji.

Describe alternatives you've considered

No response

Anything else?

No response

[Feature]: Translate Names

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

Can't translate names of chatters because extensions can't communicate with hyperchat.

Describe the solution you'd like

Checkbox option to also translate the name of the chatter.

Expected behavior

The name of the chatter should be translated if the checkbox is checked.

Describe alternatives you've considered

Not doing this lmao

Anything else?

emc#8701's message

Requested by emc#8701 in ltlcord. Ping emc when the issue is resolved or closed.

[Bug]: Multiple users reporting delayed messages

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

We've been getting multiple user reports of messages showing up delayed from what was "expected". Examples given by them shows HyperChat lagging behind the streamers' chat shown on stream, which means there's a pretty significant delay of at least a few seconds.

Steps To Reproduce

Use HyperChat.

Expected behavior

Messages work ala vanilla YouTube chat.

What browsers are you seeing the problem on?

Firefox, Chrome, Microsoft Edge

Anything else?

image

/rant

YouTube sucks.

[Feature]: E2E tests

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

there are many scenarios to test hc with

Describe the solution you'd like

selenium tests like we have in ltl

Expected behavior

why is this a category for feature requests

Describe alternatives you've considered

bru

Anything else?

congratulations @KentoNishi on being a regeneron winner

Add support to fake instant message sending

In vanilla Youtube chat, the local user's messages are immediately inserted into their chat window. Of course, this is not how the chat actually works. In reality, the message is sent to Youtube, and then Youtube sends the message to everyone, including the original user. When the original user receives that message, Youtube's scripting automatically filters the comment out while appending the rest of the packet. In this way, Youtube "fakes" instant message sending, resulting in a more responsive and natural feeling experience.

HyperChat currently doesn't do that. It relies entirely on receiving chat data from Youtube's API, which means local messages feel delayed. Most users can probably deal with this, and it has the benefit of making your chat appear the same as everyone else's. However, it can be disorienting for some Live TLs, especially if they want to immediately read what they just wrote to check for issues.

As a result, I'm requesting that HyperChat support that same "fake" instant message sending.

One potential issue I can think of is deduplication. Local messages won't have the same ID information that Youtube's API provides. In addition, theoretical race conditions could exist because there would now be two routes into the async message pump. A "short-term" change could be to ignore deduplication entirely and make this feature opt-in, with the knowledge that using it may cause your local messages to duplicate.

I know we just talked about this on the Aqua server, but now you have an official issue to track it. :)

[Feature]: Keep Super Chats on Top

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

I can not see Super Chats in their own bar like they are shown normally on YouTube.

Describe the solution you'd like

YouTube, without any extensions, keeps a list of Super Chats at the top of the chat window. It would be nice to have this with HyperChat too. I expect some people wouldn't want it though, so it should probably be toggleable.

Expected behavior

Super Chats are visible at the top of the chat window like YouTube has by default.

Describe alternatives you've considered

No response

Anything else?

No response

Migrate off of vue-cli-plugin-browser-extension

As explained in #contributor-discussion of the discord, vue-cli-plugin-browser-extension is the one responsible for the random null errors that has been plaguing the standalone HyperChat extension. The plugin causes all scripts to be run a 2nd time outside of their expected contexts, which leads to null errors on stuff like DOM elements.

While the errors are currently being suppressed by pollers (which are running infinitely in the "fake" scripts by the way), it would be better moving forward to not have to worry about the unpredictability of scripts running a 2nd time on who-knows-what context.

Note:
Related upstream issue that's open since May 2020.

[Feature]: Randomized username colors

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

I always have difficulty reading youtube chat properly compared to twitch's, due to the usernames being just a sort of grey/green blob.
This would go a long way towards making chat easier to read (or at least it really helped when I tried it).

Describe the solution you'd like

A setting that allows for the colors of usernames to be randomized.
If you want to maintain consistent colors between messages of the same user, it could be based on the username itself.

Expected behavior

Not sure why this is required for feature requests since it's basically the same thing as the section above.

Describe alternatives you've considered

No response

Anything else?

Here's a couple screenshots showing the difference.
withoutRandomColors
withRandomColors

[Bug]: "Use YouTube theme" option in the Appearance > Theme setting seems to not working

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

So, I changed youtube theme from dark mode, to light mode to check the current youtube redesign. It appears that when opening a livestream, hyperchat still in dark mode even though the setting is set to "Use YouTube theme". Refreshing/clearing cache didn't fix it either. Here a screenshot:

Hyperchat-bug-report-Screenshot 2022-10-25 044150

Steps To Reproduce

  1. Use YouTube dark theme
  2. Set your Appearance > Theme setting to "Use YouTube theme"
  3. Change your YouTube theme from dark to light
  4. It appears that Hyperchat still using dark theme even though the setting says otherwise

Expected behavior

Hyperchat use the YouTube theme and set to light mode

What browsers are you seeing the problem on?

Firefox

Anything else?

No response

[Feature]: Hide Youtube chat's built in kebab menu when HyperChat is enabled

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

When HyperChat is enabled, the hamburger kebab menu on the Youtube chat still shows up, which IMO is confusing since none of the options in that hamburger kebab menu apply to HyperChat itself.

Describe the solution you'd like

That hamburger kebab menu should be hidden when HyperChat is enabled and shown only if HyperChat is disabled. That makes it clear what the menu is for.

Expected behavior

That hamburger kebab menu should be hidden when HyperChat is enabled and shown only if HyperChat is disabled. That makes it clear what the menu is for.

Describe alternatives you've considered

No response

Anything else?

image

Chat freeze in members-only mode

Was watching recent archived Coco+Luna meme review and chat wouldn't scroll as usual

Screenshot

image

Fast forward to any point in the video will load chat from that segment only (blue arrow implies there are more messages but they just don't load)

Can replicate with other add-ons disabled, firefox btw
I verified that regular stream w/o chat restriction (both live and archive) work fine

[Bug]: Cannot run in iframe under Edge's strict mode

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

Description

Hi, my HyperChat cannot execute normally in strict tracking-prevention in iframe.

When Hyper Chat got access denied to localStorage, it cannot execute normally.

image

Cause

I read the document briefly, and I believe it's because Edge's tracking-prevention (strict mode) will stop iframe from accessing localStorage.

image

Proof

And after I close strict mode of Edge's tracking-prevention, HyperChat can execute normally.

image

Possible solution

It will happen at

https://github.com/LiveTL/HyperChat/blob/master/src/components/HyperchatButton.svelte#L4-L9

and

const hyperChatEnabled = localStorage.getItem('HC:ENABLED') !== 'false';

Maybe can set default value or add try-catch when getting/setting localStorage value to avoid this problem, like this (I am not sure about coding style, so just a example):

let hyperChatEnabled;
try {
    hyperChatEnabled = localStorage.getItem("HC:ENABLED") !== "false";
} catch (error) {
    console.log(error);
    hyperChatEnabled = true;
}

Steps To Reproduce

  1. Use Edge
  2. Set Edge's tracking-prevention mode to strict (the second one from bottom)
    image
  3. Go to https://holodex.net/multiview
  4. Open any live
    image
  5. Error happen in DevTools' Console
    image

Expected behavior

HyperChat should execute like this

image

What browsers are you seeing the problem on?

Microsoft Edge

Anything else?

Some more ref

btw, Edge is a chromium browser after all, I think other chromium browser will has similar problem maybe. (I haven't test yet)

Invisible HyperChat on Chromium-based browsers

Occasionally (and pretty randomly), HyperChat fails to be rendered after the iframe is loaded on Chromium-based browsers. The iframe loads fine with no errors, chat messages are sent and received fine from the interceptor/background script, all HTML elements can be seen loaded through dev console, and even the invisible text can be selected/copied.

Seems to be related to this Chromium bug report, so I guess we'll have to see if this issue gets fixed after the upstream bug report gets resolved. The only thing that's making me think that it's not just the Chromium bug is that while the example in the bug report can be consistently reproduced, it only happens seemingly randomly in our case.

Tested with both LiveTL and standalone HyperChat, on Chromium, Edge, Edge Dev and Brave. I also could not reproduce this on Firefox or Firefox Dev.

[Feature]: Nice

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue for LiveTL.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am not reporting a bug. If I am, I will use the bug report issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

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

I'm always frustrated when I look at a repo and see no issue #69.

Describe the solution you'd like

I would like to create an issue #69.

Expected behavior

The link #69 should work.

Describe alternatives you've considered

No response

Anything else?

Nice

[Bug]: Live chat filter text in other localizations offsets HTML elements

Checklist

  • This is an issue for Hyperchat, not LiveTL. I will go to the LiveTL repo to report an issue with LiveTL.
  • This issue is not a matter of opinion. If it is, I will use the feature suggestion issue template.
  • I have checked for a duplicate or similar issue. I made sure to check closed issues as well.
  • I am still able to reproduce the issue after I reinstall the extension.
  • I have clear instructions to reproduce the bug, even on another machine.
  • I am not suggesting a feature. If I am, I will use the feature suggestion issue template.
  • By submitting this issue, you agree to follow our Code of Conduct

Describe the bug

The live chat filter text in other localization (in this case Japanese) is long enough that it offsets the HTML elements from the center.

Steps To Reproduce

Change Youtube language to Japanese.

Expected behavior

The HTML elements are properly centered horizontally.

What browsers are you seeing the problem on?

Other (Put it in the "Anything else?" section)

Anything else?

The browser I used is Brave. There might be other localizations that make the text long enough to cause this bug that I didn't bother checking.

Appearance of the live chat with Hyperchat disabled:

01bug

Appearance of the live chat with Hyperchat enabled:

01bug1

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.