{"id":13467337,"url":"https://github.com/ultrabug/py3status","last_synced_at":"2025-05-15T08:11:26.868Z","repository":{"id":7020956,"uuid":"8292338","full_name":"ultrabug/py3status","owner":"ultrabug","description":"py3status is an extensible i3status wrapper written in python","archived":false,"fork":false,"pushed_at":"2025-01-24T11:46:53.000Z","size":10697,"stargazers_count":894,"open_issues_count":6,"forks_count":263,"subscribers_count":24,"default_branch":"master","last_synced_at":"2025-04-14T15:00:24.917Z","etag":null,"topics":["i3bar","i3status","i3wm","python"],"latest_commit_sha":null,"homepage":"https://ultrabug.github.io/py3status/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ultrabug.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":".github/FUNDING.yml","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,"zenodo":null},"funding":{"github":"ultrabug","custom":"https://paypal.me/alexysjacob1"}},"created_at":"2013-02-19T14:59:13.000Z","updated_at":"2025-04-10T09:34:03.000Z","dependencies_parsed_at":"2023-12-02T14:24:24.227Z","dependency_job_id":"22c20292-faff-4e8d-96da-1cd9245b0848","html_url":"https://github.com/ultrabug/py3status","commit_stats":{"total_commits":3528,"total_committers":246,"mean_commits":"14.341463414634147","dds":0.7905328798185941,"last_synced_commit":"5a74d671dc3099e5661c06df66b65c2e69efae73"},"previous_names":[],"tags_count":91,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultrabug%2Fpy3status","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultrabug%2Fpy3status/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultrabug%2Fpy3status/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ultrabug%2Fpy3status/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ultrabug","download_url":"https://codeload.github.com/ultrabug/py3status/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254301562,"owners_count":22047905,"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":["i3bar","i3status","i3wm","python"],"created_at":"2024-07-31T15:00:55.203Z","updated_at":"2025-05-15T08:11:26.814Z","avatar_url":"https://github.com/ultrabug.png","language":"Python","readme":"![image](https://github.com/ultrabug/py3status/blob/master/logo/logotype-horizontal.png)\n\n# py3status\n\n![CI](https://github.com/ultrabug/py3status/workflows/CI/badge.svg)\n\n**py3status** is an extensible i3status wrapper written in Python.\n\nUsing py3status, you can take control of your i3bar easily by:\n\n-   using one of the available\n    [modules](https://ultrabug.github.io/py3status/user-guide/modules/)\n    shipped with py3status\n-   grouping multiple modules and automatically or manually cycle their\n    display\n-   writing your own modules and have their output displayed on your bar\n-   handling click events on your i3bar and play with them in no time\n-   seeing your clock tick every second whatever your i3status interval\n\n**No extra configuration file needed**, just install \u0026 enjoy!\n\n## About\n\nYou will love py3status if you're using [i3wm](https://i3wm.org)\n(or [sway](https://swaywm.org)) and are frustrated by the i3status\n[limitations](https://faq.i3wm.org/question/459/external-scriptsprograms-in-i3status-without-loosing-colors/) on your i3bar such as:\n\n-   you cannot hack into it easily\n-   you want more than the built-in modules and their limited configuration\n-   you cannot pipe the result of one of more scripts or commands in your bar easily\n\n## Philosophy\n\n-   **no added configuration file, use the standard i3status.conf**\n-   **rely on i3status**' strengths and its **existing configuration** as much as possible\n-   **be extensible**, it must be easy for users to add their own\n    stuff/output by writing a simple python class which will be loaded\n    and executed dynamically\n-   **easily allow interactivity** with the i3bar\n-   add some **built-in enhancement/transformation** of basic i3status modules output\n\nWe apply the [Zen of py3status](https://ultrabug.github.io/py3status/dev-guide/contributing/#zen-of-py3status) to improve this project and encourage everyone to read it!\n\n## Documentation\n\nUp-to-date [documentation](https://ultrabug.github.io/py3status/):\n\n-   [Installation](https://ultrabug.github.io/py3status/user-guide/installation/)\n-   [Getting started](https://ultrabug.github.io/py3status/getting-started/)\n-   [Using Modules](https://ultrabug.github.io/py3status/user-guide/configuration/#loading-and-ordering-py3status-modules)\n-   [Custom click events](https://ultrabug.github.io/py3status/user-guide/configuration/#custom-click-events)\n-   [The py3-cmd command line](https://ultrabug.github.io/py3status/user-guide/remote-control/)\n-   [Writing custom modules](https://ultrabug.github.io/py3status/dev-guide/writing-modules/)\n-   [Contributing](https://ultrabug.github.io/py3status/dev-guide/contributing/)\n\nGet help or share your ideas on IRC:\n\n-   channel **\\#py3status** on **OFTC**\n\n## Installation\n\nSee the up to date and complete [installation instructions](https://ultrabug.github.io/py3status/user-guide/installation/) for your favorite distribution.\n\n## Usage\n\nIn your i3 config file, simply switch from *i3status* to *py3status* in\nyour *status_command*:\n\n    status_command py3status\n\nUsually you have your own i3status configuration, just point to it:\n\n    status_command py3status -c ~/.i3/i3status.conf\n\n## Options\n\nYou can see the help of py3status by issuing \\`py3status -h\\`:\n\n    usage: py3status [-h] [-b] [-c FILE] [-d] [-g] [-i PATH] [-l FILE] [-s]\n                     [-t INT] [-m] [-u PATH] [-v] [--wm WINDOW_MANAGER]\n\n    The agile, python-powered, i3status wrapper\n\n    optional arguments:\n      -h, --help            show this help message and exit\n      -b, --dbus-notify     send notifications via dbus instead of i3-nagbar\n                            (default: False)\n      -c, --config FILE     load config (default: /home/alexys/.i3/i3status.conf)\n      -d, --debug           enable debug logging in syslog and --log-file\n                            (default: False)\n      -i, --include PATH    append additional user-defined module paths (default:\n                            None)\n      -l, --log-file FILE   enable logging to FILE (default: None)\n      -s, --standalone      run py3status without i3status (default: False)\n      -t, --timeout INT     default module cache timeout in seconds (default: 60)\n      -m, --disable-click-events\n                            disable all click events (default: False)\n      -u, --i3status PATH   specify i3status path (default: /usr/bin/i3status)\n      -v, --version         show py3status version and exit (default: False)\n      --wm WINDOW_MANAGER   specify window manager i3 or sway (default: i3)\n\n## Available modules\n\n[All modules](https://ultrabug.github.io/py3status/user-guide/modules/)\nshipped with py3status are [configurable directly from your current i3status.conf](https://ultrabug.github.io/py3status/user-guide/configuration/#loading-and-ordering-py3status-modules)!\n\n[Check them out](https://ultrabug.github.io/py3status/user-guide/modules/)\nto see all the configuration options.\n\n## Control from CLI\n\nJust like i3status, you can force an update of your i3bar by sending a\nSIGUSR1 signal to py3status. Note that this will also send a SIGUSR1\nsignal to i3status:\n\n    killall -USR1 py3status\n\nTo refresh individual modules, the\n[py3-cmd](https://ultrabug.github.io/py3status/user-guide/remote-control/)\nutility can be used, e.g:\n\n    py3-cmd refresh wifi\n","funding_links":["https://github.com/sponsors/ultrabug","https://paypal.me/alexysjacob1"],"categories":["Python","Projects","Packages"],"sub_categories":["Bars, Panels, and Widgets"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fultrabug%2Fpy3status","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fultrabug%2Fpy3status","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fultrabug%2Fpy3status/lists"}