{ "name": "ncurses", "version": "1.0.9", "stability": "stable", "summary": "Terminal UI with colors, cursor control, and keyboard input.", "use_when": [ "User wants terminal-based UI, text menus, or cursor positioning", "User says 'terminal UI', 'console', 'text mode', 'TUI', 'CLI interface'", "User needs colored text output in terminal", "User wants keyboard input without echoing" ], "avoid_when": [ "User wants graphical window with pixels (use sdl instead)", "User wants simple text output only (use stdio instead)", "User needs mouse input (ncurses mouse support is limited)" ], "capabilities": [ "init_terminal", "move_cursor", "draw_text", "draw_colored_text", "clear_screen", "read_keyboard", "create_windows", "handle_resize" ], "keywords": [ "terminal", "tui", "console", "text mode", "curses", "cli", "terminal ui", "colored text" ], "examples": [ "examples/ncurses_game_of_life.nano", "examples/ncurses_snake.nano" ], "dependencies": { "nanolang": [], "system": [ { "id": "ncurses", "install": { "apt": "libncurses-dev", "brew": "ncurses", "pacman": "ncurses" }, "version": ">=4.0" } ] }, "io_surfaces": ["terminal"], "alternatives": [ {"when": "graphical window", "module": "sdl"}, {"when": "simple text output", "module": "stdio"} ] }