https://github.com/dankamongmen/notcurses-rs
high-level rust wrappers for notcurses, built around libnotcurses-sys
https://github.com/dankamongmen/notcurses-rs
Last synced: 18 days ago
JSON representation
high-level rust wrappers for notcurses, built around libnotcurses-sys
- Host: GitHub
- URL: https://github.com/dankamongmen/notcurses-rs
- Owner: dankamongmen
- License: other
- Created: 2020-08-11T18:03:43.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-03T11:42:11.000Z (7 months ago)
- Last Synced: 2025-03-29T02:04:03.657Z (25 days ago)
- Language: Rust
- Size: 472 KB
- Stars: 52
- Watchers: 5
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
[](https://crates.io/crates/notcurses)
[](https://docs.rs/notcurses/)
[](https://releases.rs/docs/1.65.0/)A rusty wrapper over [notcurses][0], the most blingful TUI library.
[0]:https://github.com/dankamongmen/notcurses
## Example
```rust
use notcurses::*;fn main() -> Result<()> {
let nc = Notcurses::new_cli()?;
let mut cli = nc.cli_plane()?;
cli.putstrln("\nhello world!")?;
cli.render()?;
Ok(())
}
```## Status of the library
The latest released version is compatible with notcurses [`3.0.11`].
The unreleased version is compatible with notcurses unreleased master branch.*Current major version `3` is considered a development version*.
**Main differences with `libnotcurses-sys`:**
- Fully safe public API.
- Allocating types have the `Drop` trait implemented.
- Coordinates are used in the most common order: *x, y*.
- There is no *direct* mode, just use the *CLI* mode.
- The *standard* plane is now known as the *CLI* plane.
- The `*Options` structs are replaced by `*Builder`s.[`3.0.11`]: https://github.com/dankamongmen/notcurses/releases/tag/v3.0.11