notcurses VS alacritty

Compare notcurses vs alacritty 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
notcurses alacritty
102 352
3,281 52,639
- 2.2%
7.6 9.3
16 days ago 7 days ago
C Rust
Apache License 2.0 Apache License 2.0
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.

notcurses

Posts with mentions or reviews of notcurses. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-02.
  • Text UIs != Terminal UIs
    2 projects | news.ycombinator.com | 2 Mar 2024
    > The only reason we don't have animation frameworks for the terminal is because it's not possible

    https://nick-black.com/dankwiki/index.php/Notcurses

  • Notcurses: Blingful character graphics/TUI library
    2 projects | news.ycombinator.com | 1 Feb 2024
  • Notcurses
    1 project | news.ycombinator.com | 22 Nov 2023
  • good high-level ncurses library
    5 projects | /r/commandline | 10 Jul 2023
    Notcurses. Install it and run notcurses-demo to be suitably impressed.
  • Ratatui: Build rich terminal user interfaces
    2 projects | /r/rust | 30 May 2023
    Same for me, I would be much more motivated if there was something like textual for Rust. Given the capability of terminal emulators now I think Rust is lacking behind in the TUI field. Just checkout what can be done with something like notcurses
  • Terminal emulators that break from the traditional rendering approach?
    1 project | /r/commandline | 29 May 2023
    On the application side of rendering, see notcurses, it is at the leading edge: https://github.com/dankamongmen/notcurses
  • Doom on Teletext
    2 projects | news.ycombinator.com | 28 May 2023
    Other TUI libraries of note: https://github.com/dankamongmen/notcurses/blob/master/doc/OT...
  • Io Uring
    3 projects | news.ycombinator.com | 22 May 2023
    The broader world probably knows him best for the terminal handling library Notcurses[1] and a lot of telling terminal emulator authors to get their shit together.

    I’ve had his grad-school project libtorque[2] (HotPar ’10), an event-handling and scheduling library, on my to-read list for years, but I can’t seem to figure out how it accomplishes the interesting things it does.

    [1] https://nick-black.com/dankwiki/index.php/Notcurses, https://github.com/dankamongmen/notcurses/

    [2] https://nick-black.com/dankwiki/index.php/Libtorque

  • Are We Sixel Yet
    15 projects | news.ycombinator.com | 14 May 2023
    In XTerm, this (rightly) makes no difference. In Foot and Contour however, you still end up a line resp. a screen below where you started, if now with the correct horizontal position.

    So it seems to me like what you want should work by default, except it doesn’t.

    It should be possible to instead just treat the whole thing as a graphical overlay (by computing or directly asking for the character cell size, as Kirill Panov rightly admonishes me is possible with XTWINOPS) without touching the cursor; that’s what the “sixel scrolling” setting (DECSDM) is supposed to do. Then you can just manually move the cursor forward however many positions after you’re done drawing.

    Except apparently the DEC manual (the VT330/340 one above) and DEC hardware contradict each other as to which setting of DECSDM (set or reset) corresponds to which scrolling state (enabled or disabled), and XTerm has implemented it according to the manual not the VT3xx[1,2,3]—then most other emulators followed suit[4]—then XTerm switched to following the hardware[5,6] (unless you and that’s what I’m seeing on my machine right now. So now you need to check if you’re on XTerm ≥ 369 or not[7]. If I’m reading the Notcurses code right, other terminals have followed suit[8].

    Again, ouch.

    P.S. It seems DEC had an internal doc for how their terminals should operate (DEC STD 070) [9]. It does not document DECSDM at all.

    [1] https://github.com/wez/wezterm/issues/217#issuecomment-86449...

    [2] https://github.com/hackerb9/lsix/issues/41

    [3] https://github.com/dankamongmen/notcurses/issues/1782

    [4] https://github.com/arakiken/mlterm/pull/23

    [5] https://invisible-island.net/xterm/xterm.log.html#xterm_369

    [6] https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h3-T...

    [7] https://github.com/dankamongmen/notcurses/commit/0918fa251e2... (the correct version cutoff is 369 not 359, the patch contains a now-fixed bug)

    [8] https://github.com/dankamongmen/notcurses/blob/master/src/li... (look for mentions of invertsixel)

    [9] http://www.bitsavers.org/pdf/dec/standards/EL-SM070-00_DEC_S...

  • smenu clean window effect
    3 projects | /r/commandline | 11 May 2023
    And there's also the notcurses library:

alacritty

Posts with mentions or reviews of alacritty. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-16.
  • Terminal Latency
    1 project | news.ycombinator.com | 19 Mar 2024
    It's opinionated, which comes with upsides and downsides. I won't blame the maintainer to keep things focused, feature creep (even for worthy features) can kill a FOSS project.

    Another example is sixel support, there's a fork where it all works but is not sufficiently "proven" (code quality just as well as sixel being the best fit for the problem)

    https://github.com/alacritty/alacritty/pull/4763#issuecommen...

    It may be annoying but I get the reasoning, and there are other terminals.

  • Level Up Your Dev Workflow: Conquer Web Development with a Blazing Fast Neovim Setup (Part 1)
    12 projects | dev.to | 16 Mar 2024
    alacritty (Linux, Macos & Windows)
  • Alacritty: A cross-platform, OpenGL terminal emulator
    1 project | news.ycombinator.com | 16 Feb 2024
  • Neovide – a simple, no-nonsense, cross-platform GUI for Neovim
    17 projects | news.ycombinator.com | 31 Jan 2024
    > Ligatures: ok, nice, possible in terms too (hopefully Alacritty one day)

    I wouldn't hold my breath. Seems like its getting the iPad calculator treatment[0]. Which is to say rather than ship something working that can be improved, they're leaving a UX void.

    [0] https://github.com/alacritty/alacritty/issues/50

  • I Just Wanted Emacs to Look Nice – Using 24-Bit Color in Terminals
    7 projects | news.ycombinator.com | 30 Jan 2024
    IME, this is like the golden age of terminal apps in general and macOS-compatible ones in particular. There are several really good terminals for macOS:

    [iTerm2 app](https://iterm2.com/)

    [Kitty terminal](https://sw.kovidgoyal.net/kitty/)

    [WezTerm terminal](https://wezfurlong.org/wezterm/index.html)

    [Alacritty](https://github.com/alacritty/alacritty)

    My daily driver is WezTerm…

    - Runs on Linux, macOS, Windows 10 and FreeBSD

    - [Multiplex terminal panes, tabs and windows on local and remote hosts, with native mouse and scrollback](https://wezfurlong.org/wezterm/multiplexing.html)

    - [Ligatures](https://github.com/tonsky/FiraCode#fira-code-monospaced-font...), Color Emoji and font fallback, with true color and [dynamic color schemes](https://wezfurlong.org/wezterm/config/appearance.html#colors).

    - [Hyperlinks](https://wezfurlong.org/wezterm/hyperlinks.html)

    - [Searchable Scrollback](https://wezfurlong.org/wezterm/scrollback.html) (use mouse wheel and `Shift-PageUp` and `Shift PageDown` to navigate, Ctrl-Shift-F to activate search mode)

    - xterm style selection of text with mouse; paste selection via `Shift-Insert` (bracketed paste is supported!)

    - SGR style mouse reporting (works in vim and tmux)

    - Render underline, double-underline, italic, bold, strikethrough (most other terminal emulators do not support as many render attributes)

    - Configuration via a [configuration file](https://wezfurlong.org/wezterm/config/files.html) with hot reloading

    - Multiple Windows (Hotkey: `Super-N`)

    - Splits/Panes (Split horizontally/vertically: `Ctrl-Shift-Alt-%` and `Ctrl-Shift-Alt-"`, move between panes: `Ctrl-Shift-ArrowKey`)

    - Tabs (Hotkey: `Super-T`, next/prev: `Super-Shift-[` and `Super-Shift-]`, go-to: `Super-[1-9]`)

    - [SSH client with native tabs](https://wezfurlong.org/wezterm/ssh.html)

    - [Connect to serial ports for embedded/Arduino work](https://wezfurlong.org/wezterm/serial.html)

    - Connect to a local multiplexer server over unix domain sockets

    - Connect to a remote multiplexer using SSH or TLS over TCP/IP

    - iTerm2 compatible image protocol support, and built-in [imgcat command](https://wezfurlong.org/wezterm/imgcat.html)

    - Kitty graphics support

    - Sixel graphics support (experimental: starting in `20200620-160318-e00b076c`)

  • alacritty-themes not working any more!!!
    6 projects | dev.to | 7 Jan 2024
    # We use Alacritty's default Linux config directory as our storage location here. mkdir -p ~/.config/alacritty/themes git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty/themes
  • The Linux graphics stack in a nutshell, part 2
    1 project | news.ycombinator.com | 29 Dec 2023
    if by 'in the terminal' you mean 'in a program emulating an ascii terminal' then no, because ascii terminals don't support anything that looks better than ascii art. they don't support sixel either. there are a variety of proposals for how to add graphics to ascii terminal emulators in a backwards-compatible way, such as mgr and notty https://github.com/alacritty/alacritty/issues/51

    but the 'terminal' that a terminal emulator is emulating is a device which provides a user access to a remote computer. normally nowadays this is a laptop or cellphone. in that case, yes, you can use x-windows, xpra, vnc, or a web browser

  • Pimp your CLI
    13 projects | dev.to | 19 Dec 2023
    A decent terminal application (i.e: iterm2, alacritty, etc.)
  • What GPU Accelerated terminal do you recommend for Linux
    1 project | /r/neovim | 11 Dec 2023
    I have been having random input lags with Alacritty. Initially I thought it was my custom neovim config. After some investigation, I have found an Alacritty github issue where users are reporting the same issue: https://github.com/alacritty/alacritty/issues/6844
  • Keypress delay
    1 project | /r/neovim | 11 Dec 2023
    Thank you for your suggestions. I have now narrow it down to my terminal emulator. Alacritty. More precisely this issue: https://github.com/alacritty/alacritty/issues/6844

What are some alternatives?

When comparing notcurses and alacritty you can also consider the following projects:

rich - Rich is a Python library for rich text and beautiful formatting in the terminal.

kitty - Cross-platform, fast, feature-rich, GPU based terminal

FTXUI - Features: - Functional style. Inspired by [1] and React - Simple and elegant syntax (in my opinion). - Support for UTF8 and fullwidth chars (→ 测试). - No dependencies. - Cross platform. Linux/mac (main target), Windows (experimental thanks to contributors), - WebAssembly. - Keyboard & mouse navigation. Operating systems: - linux emscripten - linux gcc - linux clang - windows msvc - mac clang

wezterm - A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

xterm.js - A terminal for the web

Warp - Warp is a modern, Rust-based terminal with AI built in so you and your team can build great software, faster.

sixvid - Simple script for animated GIF viewing using sixels

starship - ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!

tcell - Tcell is an alternate terminal package, similar in some ways to termbox, but better in others.

FiraCode - Free monospaced font with programming ligatures

awesome-tuis - List of projects that provide terminal user interfaces

neofetch - 🖼️ A command-line system information tool written in bash 3.2+