Live data from Hacker News

A GUI framework for C# console applications

github.com

51–60 of 64 posts

Re: A GUI framework for C# console applications

#51
post #42

Just curious: Why would someone do a TUI (text-based user interface) on a modern computer? Using C# implies that you're running on a device powerful enough for a traditional GUI. (And you really don't need much to run C#, just enough RAM / Disk for the framework and to handle the overhead of the garbage collector.)

Many Windows Server installations have no GUI or Desktop -- they're command line only.

Re: A GUI framework for C# console applications

#52
post #24

Now if only we could get cross platform WPF for C#

I've used WPF, and I have no specific issue with it (and believe it was an upgrade over Forms). But even as someone very familiar with C#/WPF, and a fan of C#/.Net Core I cannot see why you'd want to port WPF when a platform like Electron exists and already works extremely well as a cross-platform framework.

It isn't simply the functionality, but also the massive community/examples/tutorials/etc that already exist for the JavaScript/Node/Electron ecosystem. WPF, even on Windows, is much smaller but if they ever ported it to Linux/MacOS/iOS/iPadOS/Android the resources would be microscopic, and it would be a legitimate limiter to the platform's success.

It would largely be dead on arrival. I wouldn't even use it (and I am their core developer demographic). The only argument people can make is performance, and WPF isn't exactly speedy itself (particularly without hardware acceleration). Plus you're competing with a much better ingrained Qt.

I was actually trying to create a cross-platform solution this weekend between PyQt and Electron, and ultimately wound up using Electron, not because it is better within itself but because you have this huge ecosystem of samples/snippets/etc to built upon. It is a productivity multiplier.

Re: A GUI framework for C# console applications

#54
This is very interesting. Really glad to see this implemented as a .NET Standard 2.0 package. I've had a huge problem with making UIs for various systems. Something like this could be a good starting point for building a cross-platform, minimally viable GUI for those systems. I don't need native-looking GUI, I just need functional and not completely broken like Unity's GUI system is/are.

Re: A GUI framework for C# console applications

#55
post #42

Just curious: Why would someone do a TUI (text-based user interface) on a modern computer? Using C# implies that you're running on a device powerful enough for a traditional GUI. (And you really don't need much to run C#, just enough RAM / Disk for the framework and to handle the overhead of the garbage collector.)

Speed. They usually launch fast and are responsive, because there are no graphical resources that need to load or complex widget hierarchies that need to be constructed. There's no need to switch windows, because the TUI launches in the same window you typed the command into. You don't have to take your fingers off the keyboard because having a mouse is not expected in a TUI.

In principle, all of these things could be done with a GUI, but in practice, they're not, and with the phoneification of software, the keyboard is an afterthought, not the main input mechanism.

Re: A GUI framework for C# console applications

#56

So is this cross-platform? How does it compare to http://hackage.haskell.org/package/brick ?

It's .Net Core but there doesn't seem to be any mention of running it on Linux or macOS.

The example is .NET Core 2.1, but the actual library itself is .NET Standard 2.0.

It will depend on how the System.Console class is implemented in Linux and macOS. It might fair better to port the example to Mono or .NET Core 3.0 (which should just be a change of build settings).

  _______________
  |   |     |   |
  |   | STD |   |
  |   |_____|   |
  |      |      |
  |  FX  | CORE |
  |______|______|

Re: A GUI framework for C# console applications

#57
post #42

Just curious: Why would someone do a TUI (text-based user interface) on a modern computer? Using C# implies that you're running on a device powerful enough for a traditional GUI. (And you really don't need much to run C#, just enough RAM / Disk for the framework and to handle the overhead of the garbage collector.)

Personally I use a TUI for Reddit. I prefer the clean interface and keyboard navigation

Re: A GUI framework for C# console applications

#58
post #35
post #32

Earlier quoted context omitted.

I can't really explain why, but looking at Avalonia's demonstration videos I don't like the UI controls in Avalonia.Themes.Default. They remind me of what you might end up with if you designed controls manually in e.g. a Flash app - it doesn't feel like a desktop app UI kit. It's a bit of a shame, because I strongly suspect the theme is easily overridden. It just needs a designer to make a consistent set of controls.

The themes can be easily overridden indeed. Here [0] is example of custom theme applied. For sure the project would really benefit from some pro designer help. https://rbmk.io/

Wow, this app looks really cool! The Mac variant is particularly pleasing to look at.

I wonder if some design work could be crowd-funded.

Re: A GUI framework for C# console applications

#59
post #42

Just curious: Why would someone do a TUI (text-based user interface) on a modern computer? Using C# implies that you're running on a device powerful enough for a traditional GUI. (And you really don't need much to run C#, just enough RAM / Disk for the framework and to handle the overhead of the garbage collector.)

> Just curious: Why would someone do a TUI (text-based user interface) on a modern computer?

Because the backbone of the modern computer's infrastructure is comprised of software running on headless systems accessed with remote shells.

Re: A GUI framework for C# console applications

#60
post #8

The chess game screenshot sort of reminded me of the StarTrek game DEC used to leave running in their showrooms in the 70's and 80's: https://commons.wikimedia.org/wiki/File:Star_Trek_text_game.... I remember being kicked out by salesmen many times while sitting there playing. They seemed very annoyed that no adults "got it", but many kids did.

> They seemed very annoyed that no adults "got it", but many kids did. They were all lobeless creatures who couldn't spot an opportunity even if it hit them in the face. A true Ferengi would know how to handle this.

To their credit, they did donate a lot of VAX equipment to New Hampshire public schools where I grew up. They did seem to get the long game there. It certainly worked on me. DEC's bigger misses came later.
Post reply on HN