7 ms·
Show HN: Halloy – A GUI Application in Rust for IRC
- MisterTea 3y agoThe UI seems to work like the plan 9 Acme text editor (itself based on Oberon). in fact, you can use Acme as an IRC client or mail client.
- dethos 3y agoIt would be nice to have something similar for matrix. I stopped using IRC directly a while ago, and now I rely on matrix to join the channels. However, to be sincere, I'm not a huge fan of element and this client look great indeed.
- MagicMoonlight 3y agoI like the simplicity of the interface
- creesch 3y agoUpvoted based on the XKCD alone, I used the same argument a few years ago for this spaghetti mess: https://github.com/creesch/discordIRCd https://github.com/creesch/discordIRCd How feature complete is this client? As in what IRC versions (and dialects) are supported?
- TingPing 3y agoLooks basic, only ircv3 capability is server-time.
- culinary-robot 3y agoWe use https://crates.io/crates/irc https://crates.io/crates/irc under the hood which is compliant with RFC 2812, IRCv3.1, IRCv3.2. And thanks for noticing the XKCD!
- smodo 3y agoMan, I wish I still knew people on IRC… Whenever I see a link to Discord I let out a deep sigh. We had it all and we blew it! We threw it all away for gifs and centralization! So here’s a question: if I download this, what’s a good place to hang out? PS I’ve never used this Ui toolkit (being an egui man myself) but that panel snapping looks amazing!
- MisterTea 3y agoI'm idling on OFTC, Libera and two private servers.
- culinary-robot 3y agoIced is awesome. Slightly biased being a contributed though :) I would recommend https://libera.chat/ https://libera.chat/. There are a ton of great channels: ##rust, #linux, #networking, #security to mention a few.
- TkTech 3y agoThere are many, many IRC networks that are still very active with tens of thousands of active users. Libera.chat is probably the best one I can suggest at the moment for a wide selection of topics. Politics, news, every tech group and subject under the sun, etc... I've run https://n.tkte.ch/ https://n.tkte.ch/ for the last decade and it's bots are currently connected to over 200 unique, active IRC servers. Still very much alive!
- tcmart14 3y agoNo kidding. I miss IRC. I still use it, but yea, its mostly silence. About the only time I've seen interaction is on something like #fedora or #freebsd where people just ask support type questions.
- deleted 3y ago[deleted]
- 542458 3y ago> We threw it all away for gifs and centralization! Simpler configuration, easy voice chat and screen share, simpler administration, user accounts and profile pictures by default, visually appealing and more noob-friendly client, persistent chat history, media embeds, file uploads, rich presence, etc...
- ComputerGuru 3y agoAll the open source Discord rooms I'm in, absolutely no one uses the voice chat and I didn't even know there was a screen sharing option. The ratio of users to admins is probably 10,000:1 so ease of admin isn't really an issue (see also reddit where mod tools suck). There are plenty of visually appealing clients (e.g. this one!). I personally think persistent message history (XMPP botched that rollout terribly) - which goes hand-in-hand with multipresence - and the extreme dearth of any - let alone actually good and usable - IRC (or XMPP) mobile clients (esp. on iOS) was the real reason they lost mainstream use. Multipresence is more than just a checkbox; doing it correctly involves actually setting up a SSO system with actual first-party user account support (not just relegating it as a stateful detail of the underlying IRC library you are using). IMHO actual account integration would have bound users more loyally to IRC and would have created more of a "network effect". Inline attachments, emoji reactions, etc are all just icing on the cake.
- egonschiele 3y agoWow, that logo is gorgeous. Who is the artist?
- hu3 3y agoI'm tempted to say it was AI generated: https://i.imgur.com/ZIfbAca.png https://i.imgur.com/ZIfbAca.png
- ilrwbwrkhv 3y ago+1 would love to work with the artist for my company.
- unshavedyak 3y agoApparently it's AI. So...
- neilalexander 3y agoIt's strange to me though that people release new apps on macOS without making the icons conform to the usual shape. Makes applications stand out like a sore thumb on the Dock.
- culinary-robot 3y agoIt's made with the Midjourney niji engine and finished up in Photoshop.
- riquito 3y agoTurned out gorgeous. Do you remember the original prompt?
- culinary-robot 3y agoYes, but promise not to laugh: "application icon, a side view of a fat seagull". Fat seagull :D
- ComputerGuru 3y ago
- halkony 3y agoI misread the title and had a mini-heart attack when I thought I was on the front page of HN.
- intelVISA 3y agoYou are now. :)
- qwertox 3y agoWhich made me look how mIRC is doing: "mIRC 7.73 has been released! (June 18th 2023)" and runs on Windows XP/Vista/7/8/10/11.
- oh_sigh 3y agoI wonder how much money Khaled has made over the years from mirc
- mrits 3y agoAt age 10 I hopped on every BBS I could that wasn't long distance. Then I did a few free trials of AOL. At age 12 I got unlimited internet for $20/month where I spent all my free time on mIRC. I learned to code making mIRC bots, then I found eggdrop bots.. Then I had to learn Linux to run them. Before I knew it I was a teenager with better coding knowledge than most of the professionals I knew.
- unshavedyak 3y ago> I learned to code making mIRC bots Hah, same. I went really far with mIRC scripting, much pain was had. Hard lessons that built a career i imagine.
- wpwpwpw 3y agoBeautiful interface. Nonetheless would be nice to have a linux screenshot on main page.
- jeltz 3y agoYeah, I wish there was a Matrix client which was equally beautiful.
- metadaemon 3y agoAs a suggestion, you might want to modify the default config, I see a lot of people logging into #rust as the `halloy` user.
- ComputerGuru 3y agoMaybe/at least append an rng value to the end?
- metadaemon 3y agoWell not sure how possible that is with the current YAML implementation of config.
- ComputerGuru 3y agoThe app can write (or modify) the yaml template file on first run. That's how I discovered the configuration file in the first place, with the app prompting me to open the directory and copy config.yaml.template to config.yaml and customize.
- koito17 3y agoOverall looks cool, but how does its implementation of IRC compare to other clients? How about support for extensions like XDCC?
- samstave 3y agoIt shows right there on the page that it embeds XKCD - it even has the IRC comic embedded!
- ComputerGuru 3y agoFrom another comment: > We use https://crates.io/crates/irc https://crates.io/crates/irc under the hood which is compliant with RFC 2812, IRCv3.1, IRCv3.2.
- Capricorn2481 3y agoHow was working in Iced? It looks like you did a lot of the work just this month
- culinary-robot 3y agoThis is Iced, not Tauri. Yeah, it's been a productive month. Once you get hooked it's hard to stop.
- distcs 3y agoWhat are you using for the GUI toolkit? The GUI looks awesome.
- tekknolagi 3y agoLooks like https://github.com/iced-rs/iced https://github.com/iced-rs/iced
- distcs 3y agoThe cross-platform support and screenshots look impressive. Anyone knows how it does that? Does it have runtime dependencies to render those GUIs across OSes? Or is it all baked into the Rust source code?
- codetrotter 3y agoJudging from the Cargo.toml https://github.com/squidowl/halloy/blob/main/Cargo.toml https://github.com/squidowl/halloy/blob/main/Cargo.toml It seems to use iced gui toolkit https://github.com/iced-rs/iced https://github.com/iced-rs/iced
- jakswa 3y agoLooks slick for how quickly it was built. I was surprised by the download size and RAM footprint, but... if it was easy to do cross-platform, I'm thinking this is still ahead of electron on footprint? Or at least competitive. Interesting!
- tarkah 3y agoA lot of the ram usage is actually coming from the wgpu backend. You can use ICED_BACKEND=tiny-skia to try software rendering and the footprint should be a lot smaller. The footprint should be very consistent throughout the lifecycle of the app. Message history is pretty small and we only keep opened buffers in memory. Everything else is flushed to disk. Now compared to Electron, there is no comparison for speed and responsiveness
- heyarviind2 3y agoThis looks interesting. I wonder if i can redesign it like GTalk and bring back the old memories :')
- AiAi 3y agoLooks nice from the GIF. I wish more chat apps had a tiled UI, like mIRC. I use IRC via Matrix/Element, and this is something I miss a lot.
- throwaway2037 3y agoHoly shit this GUI framework looks good. I am a Qt fanboi, but this looks great. Normally, I skip all the "X for Rust" posts as a bunch of fanaticism. Could it really be different this time??? The feature list is really impressive: https://github.com/iced-rs/iced https://github.com/iced-rs/iced Plus, here is the road map with many things already done: https://github.com/iced-rs/iced/blob/master/ROADMAP.md https://github.com/iced-rs/iced/blob/master/ROADMAP.md Wow, wow, wow: Keep up the great work. One of the rendering engines is Skia by Google. This library is sneaking up fast on us...
- intelVISA 3y agoAs a fellow Qt fanboi I admit this looks damn good, maybe this once we'll permit a "rewrite it in Rust" moment?
- culinary-robot 3y agoThanks!
- hencoappel 3y agoThey're also using it for the new Cosmic DE for Pop! OS
- nu11ptr 3y agoIt is looking good, but I'm still waiting for a "table" (they do have a "grid" now) and "tree" widget to give it a try
- tarkah 3y agoI've got a table widget you can give a try https://github.com/tarkah/iced_table https://github.com/tarkah/iced_table
- throwaway2037 3y agoTo be fair, in any GUI toolkit, the "table" is abolutely the most complex general purpose widget. People really under estimate the difficult of an efficient implementation. Qt spents YEARS improving their QTableWidget class. The implementation is mind-bogglingly complex. I am sure many very smart summer interns (PhDs!) have tried to tweak that class to squeeze every bit of performance possible. The table class in GTK+ and MSFT DotNet's WPF are equally, freakishly insane. Consider this idea: Most people who use a table class in a GUI framework assume it is essentially infinitely scalable (myself included!). I am talking about millions of rows or thousands of columns with all kinds of silly widgets injected into individual cells. It is a crazy hard computer science problem to solve. I would not doubt there are many PhD thesises written on the topic of fast, scalable table widgets. Beyond desktop GUI toolkits, people have tried to do the same in a browser (HTML/CSS/JS). Have you seen AG-Grid? Woah, it is unbelievable how much goddamn data you can squeeze into that widget. Most Wall Streets web-based trading apps use it one way or another. It's just so hard to beat. Ref: https://www.ag-grid.com/ https://www.ag-grid.com/ There must be 1,000 person years of optimisation sunk into that implementation.
- csomar 3y agoI see you didn't publish it to crates.io because of patched dependencies. I registered the "halloy" name so no one else abuses it. Contact me to transfer it to you.
- culinary-robot 3y agoThank you! I’ll reach out.
- neilalexander 3y agoThis really is quite beautiful and feels great. It would be super nice if it was possible to control the pane behaviour when selecting channels but it is so refreshing for an application to feel this fast and not be Electron-based.
- SkyMarshal 3y agoWow that is beautiful. Iced is really pushing the limits of what terminals can do. Nice job.
- JimmyRuska 3y agoImagine, someone makes an IRC client that looks like a discord clone, adds some centralized proprietary emoji/background/mini-game features that touches their own servers, and we go full circle back to IRC once discord IPOs.
- TeddyDD 3y agoThere are proposals for ircv3 that aim to add support for custom emoji, reactions, message editing etc. Soju + Gamja + Goguma is pretty usable combo even today.
- thumbuddy 3y agoIs there any way to securely use IRC?
- georgemoody 3y agoThat UI simply looks amazing, I might actually consider this once Textual no longer works.