chat VS rich

Compare chat vs rich and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
chat rich
12 148
102 46,981
1.0% 0.9%
2.5 8.3
9 months ago 7 days ago
Rust Python
- MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

chat

Posts with mentions or reviews of chat. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-30.
  • Lunatic is an Erlang-inspired runtime for WebAssembly
    12 projects | news.ycombinator.com | 30 Nov 2022
  • Charm – tools to make the command line glamorous
    18 projects | news.ycombinator.com | 23 Jan 2022
    TUIs over ssh/telnet can be a lot of fun. Especially in cases where multiple people can interact with each other on the server. It simplifies the programming model as you only have one state on the backend that you render to multiple connections. Syncing up everyone becomes trivial. You can also use some React concepts, like rendering a virtual TUI and sending just the right set of minimal escape sequences back to the user to bring their display up to date.

    A few months ago I implemented a telnet chat server[0] for fun and it was surprisingly easy to do so. Even by using a wasm vm that I was still working on at the same time.

    [0]: https://github.com/lunatic-solutions/chat

  • Launch HN: Lunatic (YC W21) – An Erlang Inspired WebAssembly Platform
    5 projects | news.ycombinator.com | 6 Mar 2021
    We are investing a lot of effort into making Lunatic feel native to the particular language and ecosystem. If you look at the Rust chat server we built in Lunatic (https://github.com/lunatic-solutions/chat), it fully integrates with cargo. You just run your typical “cargo run” command, it will compile the app to wasm and use lunatic to run it. If you want to run your test, you can just do “cargo test”.

    wasm-bindgen is necessary only because it’s really hard right now to merge the wasm world and the JS one in the browser. We have the advantage here of staying out of the browser.

  • How I built a telnet chat server in 2021 with WebAssembly
    6 projects | dev.to | 22 Feb 2021
    It took me around a week to build it with Rust + Lunatic and you can check out the code here. If you would like to try it out you can connect to it with:
  • The Stakker actor runtime: Beyond "Go++"
    2 projects | /r/rust | 18 Feb 2021
    Recently I implemented a command line chat server in Rust using an actor framework. I model each TCP connection as an actor.
  • I built a telnet chat server with WebAssembly
    1 project | news.ycombinator.com | 6 Feb 2021
    Hi HN,

    I'm working on an Erlang inspired WebAssembly runtime for the backend[0]. Recently I added TCP support and was looking for apps I could build with it. I ended up building a telnet line chat app. It was a great dogfooding experience and has a nice retro feel to it.

    You can access the US server with:

    > telnet lunatic.chat

    or the EU one with:

    > telnet eu.lunatic.chat

    Pick the one closer to you, as all the rendering is done on the backend and lower latency will mean better UX.

    The server is open source[1] and written in Rust. The Rust code is then compiled to WebAssembly and runs on top of Lunatic. Each connection runs in a separate (lightweight) process, has it's own state and sends just a diff of esc-sequences back to the terminal to bring it up to date with the current render buffer. Everything is deployed to an ARM Linux box.

    [0]: https://github.com/lunatic-solutions/lunatic

    [1]: https://github.com/lunatic-solutions/chat

  • WebAssembly Powered Telnet Chat
    1 project | news.ycombinator.com | 6 Feb 2021
  • Lunatic.chat – A WebAssembly powered telnet chat
    1 project | news.ycombinator.com | 6 Feb 2021
  • A telnet chat server powered by WebAssembly
    1 project | news.ycombinator.com | 6 Feb 2021
  • telnet lunatic.chat – A chat server for the terminal
    3 projects | /r/programming | 5 Feb 2021
    The server is open source and written in Rust. The Rust code is then compiled to WebAssembly and runs on top of Lunatic. Each connection runs in a separate (lightweight) process, has it's own state and sends just a diff of esc-sequences back to the terminal to bring it up to date with the current render buffer. Everything is deployed to an ARM Linux box.

rich

Posts with mentions or reviews of rich. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-25.
  • Rich is a Python library for rich text and beautiful formatting in the terminal
    1 project | news.ycombinator.com | 14 Mar 2024
  • Neat Parallel Output in Python
    3 projects | news.ycombinator.com | 25 Feb 2024
    There is an open issue [1] on GitHub to make it more modular and get rid of markdown and syntax highlighting but I have no hope for rich to get more minimal.

    [1]: https://github.com/Textualize/rich/issues/2277

  • Ask HN: Programmers and Technologists in Scotland
    2 projects | news.ycombinator.com | 9 Oct 2023
    I hope he doesn't mind, but the creator of Rich and Textualize is a good guy, and Scottish: https://www.willmcgugan.com/about/

    https://www.textualize.io/

    https://github.com/Textualize/rich

  • Python 3.12
    6 projects | news.ycombinator.com | 2 Oct 2023
    They keep getting improved error messaging and this is one of my favorite features. But I'd love if we could get some real rich text. Idk if anyone else uses rich, but it has infected all my programs now. Not just to print with colors, but because it makes debugging so much easier. Not just print(f"{var=}") but the handler[0,1]. Color is so important to these types of things and so is formatting. Plus, the progress bars are nice and have almost completely replaced tqdm for me[2]. They're just easier and prettier.

    [0] https://rich.readthedocs.io/en/stable/logging.html

    [1] Try this example: https://github.com/Textualize/rich/blob/master/examples/exce...

    [2] Side note: does anyone know how to get these properly working when using DDP with pytorch? I get flickering when using this and I think it is actually down to a pytorch issue and how they're handling their loggers and flushing the screen. I know pytorch doesn't want to depend on rich, but hey, pip uses rich so why shouldn't everyone?

  • colors.crumb - first Crumb usable. Extending Crumb with basic terminal styling and RGB, HEX, ANSI conversion functions.
    3 projects | /r/lisp | 9 Sep 2023
    colors.crumb extends Crumb with basic terminal styling functions and RGB, HEX, ANSI conversion functions. It is in the realm of JavaScript's chalk and Python's rich but slightly more functional 😉.
  • Textual: Rapid Application Development Framework for Python
    7 projects | news.ycombinator.com | 18 Aug 2023
    I am working on a new python project and one of the first things I added was https://github.com/Textualize/rich because of how easy it is to make things look good in the terminal.
  • What are you rewriting in rust?
    36 projects | /r/rust | 10 Jul 2023
    I am not rewriting anything but I'd love to have a library like `rich` in Rust: https://github.com/textualize/rich
  • Things to do with standalone script
    3 projects | /r/learnpython | 15 Jun 2023
    Add some cool-looking stuff to your output with rich.
  • I made a library for making user terminal input really really pretty!
    3 projects | /r/Python | 3 Jun 2023
    You might consider taking inspiration from the rich module. In particular, I like how rich supports inline color theming which seems much more cumbersome in your framework, requiring the use of context managers as well as familiarity with how your framework structures color objects. Other than that though, I'm impressed!
  • coBib 4.0: a modern UI using Textualize libraries
    4 projects | /r/Python | 20 May 2023
    Today I released coBib 4.0, my console bibliography manager written in Python, which now uses rich and textual to provide a cohesive and modern user experience in both its CLI and TUI.

What are some alternatives?

When comparing chat and rich you can also consider the following projects:

meetings - WebAssembly meetings (VC or in-person), agendas, and notes

tqdm - :zap: A Fast, Extensible Progress Bar for Python and CLI

lunatic - Lunatic is an Erlang-inspired runtime for WebAssembly

colorama - Simple cross-platform colored terminal text in Python

chrono - Date and time library for Rust

python-prompt-toolkit - Library for building powerful interactive command line applications in Python

embly - Attempt at building an opinionated webassembly runtime for web services

textual - The lean application framework for Python. Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal and a web browser.

lumen - An alternative BEAM implementation, designed for WebAssembly

blessed - Blessed is an easy, practical library for making python terminal apps

mapscii - 🗺 MapSCII is a Braille & ASCII world map renderer for your console - enter => telnet mapscii.me <= on Mac (brew install telnet) and Linux, connect with PuTTY on Windows

alive-progress - A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations!