Hacker Newsnew | past | comments | ask | show | jobs | submit | erming's commentslogin

HN Mods: Could you change the url to https://github.com/erming/shout instead?


Well, my idea when I started this project: A self-hosted and password protected IRC client that runs in your browser.

However, I added "public" mode, where anyone is allowed to connect. And the demo server is currently running in this mode.

So right now? Nope. I'm not limiting anything. I guess this will be up to the person running the server to decide.

Thanks!


Hey, thanks. That's a bug! I'll fix it when the HN madness ends.


Hey, guys.

Thanks for all the attention! The repository is here: https://github.com/erming/shout

It's open source, so if you're looking for a cool new project to work on, feel free to help out!


Wow, what a great job!

This is a really good looking web IRC client and it works so well with notification sounds, favicon updates etc.


One more thing: Freenode has given me about ~20 slots to work with on this demo. If you can't connect, try another network, like `irc.rizon.net` or something.


What do you mean slots? Is it just because connections are coming from one IP and there is a limitation on their end?


Most IRC networks have a per-IP connection limit.

The slots in this case are the amount of connections that can come from the demo server (20 at the moment).

If you ran this software on your own server, you wouldn't run into the problem unless you tried to open 20 simultaneous connections to 1 IRC network.


Apparently there's a protocol that addresses this issue (WEBIRC): https://github.com/thedjpetersen/subway/issues/117


Is this actually implemented server-side on any networks?


KiwiIRC uses this protocol apparently. I asked the author about it and they said they have worked out special arrangements with some networks to implement it, and accept connections exclusively from Kiwi, I presume? After all, a password is required according to this spec: https://kiwiirc.com/docs/webirc


Thanks this is awesome - I would love to integrate it with sagebump.com instead of using freenodes client.

Can I ask why there is a 20 slot limit? How can one increase this?


The 20 slot limit being mentioned is just in regards to the demo connecting to freenode. The demo connects to freenode from a single IP address and freenode has limits on how many connections you can have from one IP. It's not something you need to worry about in a normal use-case.


BTW; your site does not work without www.


Oh, I will so use this!

Anyway, some feedback: When loading the page, a wild scrollbar appears (Chrome). A temporary overflow: hidden; on the body would probably solve this.


I'm creating a web-based IRC chat.

Basically: You install it from npm and then run it, then you browse to http://localhost:9000/ and start chatting.

It's responsive and works great on your smartphone.

Repository: https://github.com/erming/shout (star if you like it!)

And of course, a demo: http://shout-irc.com:9000/

Edit: If you can't connect (Freenode only allows ~5 active connections) try "irc.rizon.net".


Here's another option based on JSON. It went viral on HN 4 days ago: http://jsonresume.org/

The HN post can be found here: https://news.ycombinator.com/item?id=7996464


Want them as PNG?

Step 1: Download SVG from https://github.com/github/octicons/tree/master/svg

Step 2: Use http://www.fileformat.info/convert/image/svg2raster.htm

Step 3: ...

Step 4: Profit!


Oh, I've made one too! http://github.com/erming/shout

It's really stable (been using it for weeks without restarting) and I've even implemented a mobile interface: https://db.tt/fYTswBwO

You'll find the install instructions in the README (or just `npm install shout`). No configuration required. Should take under a minute to get it running if you already have NPM.

It's open source. Feel free to try it, browse the code and leave some feedback. If you want to work with me, it's open for contributions!


Looks really nice - especially the part where multiple networks are in the very first screenshot!

How are you handling persistence tho? Straight up in-memory storage?


Yes, right now it's only in memory.

I've been thinking about storing the logs in .txt-files (with the option to turn this feature on/off). This way, I could let the user download the logs directly via the browser.


I'm not familiar with how difficult it may be, so please tell me if I'm off base. But couldn't you offer the option for either text logs or HTML logs? I know that when given the option, I opt for HTML logs for the ease of reading.


Hi! Didn't see your question until now.

While I haven't implemented the logging yet, I'm thinking about storing them in the JSON-format. Messages are already stored as JavaScript object, so I think this is my best option. And exporting them as .txt on demand, shouldn't be a problem either.

Thank you for the feedback


Looks great! Would love text logs and support for multiple users each with their own config.


Looks like everyone and their grandma has written their own PHP router.

Here's mine:

https://github.com/erming/route

Code: https://github.com/erming/route/blob/master/route.php

~80 LOC


I did. It's not worth posting though.

I think writing a php router is one of those things everyone who works with php should learn to do. It teaches you a lot.


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

Search: