I'm going to set expectations first that this is more or less a hobby project, and not a dedicated personal one.
iced ui framework is the one I am used the most as far as it goes.
I am planning to create my own cross platform terminal emulator app to make things more out of the box for me (just some little personal details that saves me time, on the context of linux distro hopping)
Admittedly I am quite new to the entire topic of making a terminal emulator through rust.
I am hoping to get as much recommendation and tips when it comes to what crates would I possibly need, techniques. or even samples to look up to. -- to pair with iced for UI
There are some OSS terminal emulators written in Rust you can have look at for implementation ideas. The two most well known ones are https://alacritty.org/ and https://wezterm.org/, I think.
As far as my research goes, here are the crates I'll possibly use:
Iced - For desktop GUI
memterm - virtual terminal emulator with built in ANSI parser, practically the interface of the terminal itself, lastly;
portable-pty - for the pseudo terminal itself.
These 3 might be the main crates i will need throughout, unless I am misunderstanding something.
No, looks reasonable to me, except that memterm is v0.1.0 and looks AI-generated. There are better solutions for ansi parsing in the ecosystem, like vte, for example. If I were you I'd look through the crates on lib.rs under the #terminal and other related keywords:
I also found this terminal emulator implementation based on iced with alcritty_terminal as backend, instead of portable-pty:
Thanks for the tip. I'll review the memterm further. I still get overwhelmed trying to understand docs so I am still behind mountains of trial and errors to understand one thing there, lol.