{"id":20239835,"url":"https://github.com/rockorager/vaxis","last_synced_at":"2025-04-10T19:42:52.233Z","repository":{"id":181899417,"uuid":"667632222","full_name":"rockorager/vaxis","owner":"rockorager","description":"a modern tui library for go (mirror of git.sr.ht/~rockorager/vaxis)","archived":false,"fork":false,"pushed_at":"2025-03-26T15:15:54.000Z","size":669,"stargazers_count":29,"open_issues_count":4,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-26T16:27:51.108Z","etag":null,"topics":["golang","library","sixel","tui"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rockorager.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-18T00:56:51.000Z","updated_at":"2025-03-26T15:15:59.000Z","dependencies_parsed_at":"2023-09-26T19:31:38.916Z","dependency_job_id":"8f978834-7c21-4aa2-a147-dbc50979dfb6","html_url":"https://github.com/rockorager/vaxis","commit_stats":null,"previous_names":["rockorager/vaxis"],"tags_count":46,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rockorager%2Fvaxis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rockorager%2Fvaxis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rockorager%2Fvaxis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rockorager%2Fvaxis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rockorager","download_url":"https://codeload.github.com/rockorager/vaxis/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248281420,"owners_count":21077423,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["golang","library","sixel","tui"],"created_at":"2024-11-14T08:41:30.425Z","updated_at":"2025-04-10T19:42:52.202Z","avatar_url":"https://github.com/rockorager.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vaxis\n\n```\nIt begins with them, but ends with me. Their son, Vaxis\n```\n\nVaxis is a Terminal User Interface (TUI) library for go. Vaxis supports modern\nterminal features, such as styled underlines and graphics. A widgets package is\nprovided with some useful widgets.\n\nVaxis is _blazingly_ fast at rendering. It might not be as fast or efficient as\n[notcurses](https://notcurses.com/), but significant profiling has been done to\nreduce all render bottlenecks while still maintaining the feature-set.\n\nAll input parsing is done using a real terminal parser, based on the excellent\nstate machine by [Paul Flo Williams](https://vt100.net/emu/dec_ansi_parser).\nSome modifications have been made to allow for proper SGR parsing (':' separated\nsub-parameters)\n\nVaxis **does not use terminfo**. Support for features is detected through\nterminal queries. Vaxis assumes xterm-style escape codes everywhere else.\n\nContributions are welcome.\n\n## Usage\n\n### Minimal example\n\n```go\npackage main\n\nimport \"git.sr.ht/~rockorager/vaxis\"\n\nfunc main() {\n\tvx, err := vaxis.New(vaxis.Options{})\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer vx.Close()\n\tfor ev := range vx.Events() {\n\t\tswitch ev := ev.(type) {\n\t\tcase vaxis.Key:\n\t\t\tswitch ev.String() {\n\t\t\tcase \"Ctrl+c\":\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\t\twin := vx.Window()\n\t\twin.Clear()\n\t\twin.Print(vaxis.Segment{Text: \"Hello, World!\"})\n\t\tvx.Render()\n\t}\n}\n```\n\n## Support\n\nQuestions are welcome in #vaxis on libera.chat, or on the [mailing list](mailto:~rockorager/vaxis@lists.sr.ht).\n\nIssues can be reported on the [tracker](https://todo.sr.ht/~rockorager/vaxis).\n\n## TUI Library Roundup\n\nNotcurses is included because it's the most advanced, most efficient,\nmost dank TUI library\n\n| Feature                        | Vaxis | tcell | bubbletea | notcurses |\n| ------------------------------ | :---: | :---: | :-------: | :-------: |\n| RGB                            |  ✅   |  ✅   |    ✅     |    ✅     |\n| Hyperlinks                     |  ✅   |  ✅   |    ❌     |    ❌     |\n| Bracketed Paste                |  ✅   |  ✅   |    ❌     |    ❌     |\n| Kitty Keyboard                 |  ✅   |  ❌   |    ❌     |    ✅     |\n| Styled Underlines              |  ✅   |  ❌   |    ❌     |    ✅     |\n| Application IDs (OSC 176)      |  ✅   |  ❌   |    ❌     |    ❌     |\n| Foreground color query (OSC 10)|  ✅   |  ❌   |    ❌     |    ✅     |\n| Background color query (OSC 11)|  ✅   |  ❌   |    ❌     |    ✅     |\n| Mouse Shapes (OSC 22)          |  ✅   |  ❌   |    ❌     |    ❌     |\n| System Clipboard (OSC 52)      |  ✅   |  ❌   |    ❌     |    ❌     |\n| System Notifications (OSC 9)   |  ✅   |  ❌   |    ❌     |    ❌     |\n| System Notifications (OSC 777) |  ✅   |  ❌   |    ❌     |    ❌     |\n| Synchronized Output (DEC 2026) |  ✅   |  ❌   |    ❌     |    ✅     |\n| Unicode Core (DEC 2027)        |  ✅   |  ❌   |    ❌     |    ❌     |\n| Color Mode Updates (DEC 2031)  |  ✅   |  ❌   |    ❌     |    ❌     |\n| Explicit Width                 |  ✅   |  ❌   |    ❌     |    ❌     |\n| Images (full/space)            |  ✅   |  ❌   |    ❌     |    ✅     |\n| Images (half block)            |  ✅   |  ❌   |    ❌     |    ✅     |\n| Images (quadrant)              |  ❌   |  ❌   |    ❌     |    ✅     |\n| Images (sextant)               |  ❌   |  ❌   |    ❌     |    ✅     |\n| Images (sixel)                 |  ✅   |  ✅   |    ❌     |    ✅     |\n| Images (kitty)                 |  ✅   |  ❌   |    ❌     |    ✅     |\n| Images (iterm2)                |  ❌   |  ❌   |    ❌     |    ✅     |\n| Video                          |  ❌   |  ❌   |    ❌     |    ✅     |\n| Dank                           |  🆗   |  ❌   |    ❌     |    ✅     |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frockorager%2Fvaxis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frockorager%2Fvaxis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frockorager%2Fvaxis/lists"}