Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: TalkTalkTalk – An easy-to-install small chat room, with chat history (github.com/josephernest)
49 points by josephernest on Nov 22, 2016 | hide | past | favorite | 19 comments



This is a really good example of how you can obtain 80% of the value of huge, complex apps with 1% of the code. It feels like the open source/self-hosted/simple app market it is probably under-served. Chat is one example, but another is a small, simple 'social network' for a team, group of friends, or family.


ha yea but also an example that the last 20% is 80% of the work

the chat right now needs features to prevent abuse


> the chat right now needs features to prevent abuse

Does it? It sounds like this is built for internal corporate/team use where this isn't a problem.


totally true: abuse/flood control will be the next additions. ideas welcome about how do to it.



You should add some antispam, at least.

I was able to keep your server down by using only this:

> setInterval( function () { for(i=0;i<=9999; i++) { ws.send(JSON.stringify({ type: 'message', username: $('#username').text(), message: 'seems like the ws server is fucked. stop spamming' })); } }, 1000);


This small chat is intented for a small team, not for global internet usage like I do here :) Usually in a small team there is no spammer, and if there is one, he's banned quickly from the team :)

But yes, I'm open to contribution about antispam / flood control. Constructive additions appreciated :)


I like a log the design.

https://github.com/josephernest/talktalktalk/blob/master/tal...

I think you could escape the text from #writing before sending it.

http://stackoverflow.com/a/4835406


Well the real cleaning / sanitizing part has to be done on the server... I'll work on this in the next weeks, after some other more important projects... This is just a proof-of-concept fun project anyway :)


Thanks @alexdumitru for pointing me this. I implemented a basic flood control (https://github.com/josephernest/talktalktalk/commit/43877bd1...), and now such a script doesn't work anymore. Of course you can then do another script that would automatically reconnect after being kicked out, etc.


everyone is discussing there http://185.164.138.19:7311/ (live demo), so nobody is discussing here :/


Joseph was very angry because everybody were using the name "joseph" yesterday.

Don't be angry!


i wasn't angry actually, maybe the angry "joseph" was another one ;) this troll session helped me to think about flood control, etc.


Someone crashed the server haha.


Very funny indeed :)

Someone can be very very very proud of crashing my super-low-end 6€/year sandbox VPS with 256 MB of RAM... Waw, he's probably a very good hacker :)


Thank you. Look forward to playing with / using this.

Reminds me of using Jabber years ago with a couple of friends. Not for the protocol, but for the clean interface and essentially having "our own place".

Something I've a pretty strong hankering for, these days.


add abuse control, log archive, image inserting then it will be golden


Is it open for bots?


Yes. You can talk in this chat with JS : ws.send(...).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: