nhatbui / compakt Goto Github PK
View Code? Open in Web Editor NEWTwitch Chat streamlining. Condenses repeated messages/words/emotes.
Home Page: http://www.nhatqbui.com/compakt
License: GNU General Public License v3.0
Twitch Chat streamlining. Condenses repeated messages/words/emotes.
Home Page: http://www.nhatqbui.com/compakt
License: GNU General Public License v3.0
On this line in compakt.js, every sentence from Twitch chat is hashed and checked in the dictionary if it has been uttered before or not. If true, the cached message is updated and DOM updates are performed. If false, the ordered dictionary is updated and DOM updates are performed. This is currently done all in one scope.
The refactor will achieve 2 things:
Possible solution:
function onMessageIsARepeat(..., DOMUpdate) {
// update ordered dictionary
DOMUpdate();
}
function onMessageIsUnique(..., DOMUpdate) {
// compress chat message
// update ordered dictionary
DOMUpdate();
}
function checkIfMessageRepeated(msg, onMessageIsARepeat, onMessageIsUnique) {
// This will eventually be a function that can identify "similar" messages.
if(key in dict) {
onMessageIsARepeat(..., function() {
// DOM Updates defined here.
});
} else {
onMessageIsUnique(..., function() {
// DOM Updates defined here.
});
}
}
Line 28 becomes: checkIfMessageRepeated(message, onMessageIsARepeat, onMessageIsUnique);
Here and here. Rabin Karp implemented incorrectly because a rolling hash is not used. Current implementation doesn't save us time because hashes iterate through entire substring each time.
Note: we may lose the convenience of being able to skip chunks of characters when a match is found.
Hello, i found your Chrome Extension and it is realy cool, but it is to old, can you please update it?
It would be wonderful.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.