{"id":17654294,"url":"https://github.com/pgaskin/barlib","last_synced_at":"2025-06-21T04:08:37.046Z","repository":{"id":230411940,"uuid":"779300446","full_name":"pgaskin/barlib","owner":"pgaskin","description":"A simple but flexible library for implementing efficient, fast, responsive, and error-tolerant i3status replacements in Go.","archived":false,"fork":false,"pushed_at":"2024-05-12T10:45:52.000Z","size":92,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-05-12T20:28:45.340Z","etag":null,"topics":["i3","i3bar","i3status","i3wm","x11"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pgaskin.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":"2024-03-29T14:08:27.000Z","updated_at":"2024-05-30T07:49:26.673Z","dependencies_parsed_at":"2024-03-31T23:27:03.415Z","dependency_job_id":"a87fc6b5-8709-4558-8320-4fb10094a71e","html_url":"https://github.com/pgaskin/barlib","commit_stats":null,"previous_names":["pgaskin/barlib"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pgaskin/barlib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgaskin%2Fbarlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgaskin%2Fbarlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgaskin%2Fbarlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgaskin%2Fbarlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pgaskin","download_url":"https://codeload.github.com/pgaskin/barlib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgaskin%2Fbarlib/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261060154,"owners_count":23103985,"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":["i3","i3bar","i3status","i3wm","x11"],"created_at":"2024-10-23T12:09:21.989Z","updated_at":"2025-06-21T04:08:32.008Z","avatar_url":"https://github.com/pgaskin.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003ebarlib\u003c/h1\u003e\n\n\u003ca href=\"https://pkg.go.dev/github.com/pgaskin/barlib\"\u003e\u003cimg align=\"right\" src=\"https://pkg.go.dev/badge/github.com/pgaskin/barlib\" alt=\"PkgGoDev\"\u003e\u003c/a\u003e\n\n**A simple but flexible library for implementing efficient, fast, responsive, and\nerror-tolerant i3status replacements in Go.**\n\n- Very flexible immediate-mode API.\n- Per-module error handling and error recovery with proper cleanup.\n- Multiple blocks per module with custom event handling.\n- Memory/CPU efficency.\n- Bar stop/continue handling.\n- Aligned ticks across all modules with customizable global base tick rate (so the bar sleeps for as long as possible between updates).\n- Update coalescing (so the bar updates all at once when multiple modules update at around the same time).\n- Implements [i3bar protocol](https://i3wm.org/docs/i3bar-protocol.html) version 1 for i3 v4.3+.\n- Unique sample module features not seen in other i3status implementations, like:\n  - DDC-CI monitor brightness/contrast control.\n  - Integrated display color temperature control.\n  - Multi-state modules.\n  - Battery charge limit display.\n  - Extremely powerful mouse-driven media player control.\n  - Automatic display layout presets.\n- Highly optimized event-driven pure-go modules which react properly to external changes.\n\n#### Usage\n\nSee [example_test.go](./example_test.go) for basic barlib usage, and [i3status-custom](./i3status-custom) for example modules I use myself.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgaskin%2Fbarlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpgaskin%2Fbarlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgaskin%2Fbarlib/lists"}