{"id":19240071,"url":"https://github.com/finleyfamily/oi","last_synced_at":"2026-05-13T21:35:00.479Z","repository":{"id":260998454,"uuid":"874865311","full_name":"finleyfamily/oi","owner":"finleyfamily","description":"OI! A zsh function library based on bashio but for general use.","archived":false,"fork":false,"pushed_at":"2026-04-16T20:49:36.000Z","size":559,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-16T22:30:09.244Z","etag":null,"topics":["zsh","zsh-library"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/finleyfamily.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"ITProKyle","polar":"ITProKyle"}},"created_at":"2024-10-18T15:48:29.000Z","updated_at":"2026-04-16T20:49:42.000Z","dependencies_parsed_at":"2024-11-25T04:23:41.521Z","dependency_job_id":"45ca50c6-5c40-4209-b8bb-4abc8dab093a","html_url":"https://github.com/finleyfamily/oi","commit_stats":null,"previous_names":["finleyfamily/oi"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/finleyfamily/oi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/finleyfamily%2Foi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/finleyfamily%2Foi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/finleyfamily%2Foi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/finleyfamily%2Foi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/finleyfamily","download_url":"https://codeload.github.com/finleyfamily/oi/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/finleyfamily%2Foi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33001208,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"ssl_error","status_checked_at":"2026-05-13T13:14:51.610Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["zsh","zsh-library"],"created_at":"2024-11-09T17:05:38.590Z","updated_at":"2026-05-13T21:35:00.465Z","avatar_url":"https://github.com/finleyfamily.png","language":"Shell","funding_links":["https://github.com/sponsors/ITProKyle","https://polar.sh/ITProKyle"],"categories":[],"sub_categories":[],"readme":"# OI\n\n[![CI](https://github.com/finleyfamily/oi/actions/workflows/ci.yml/badge.svg)](https://github.com/finleyfamily/oi/actions/workflows/ci.yml)\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit)\n[![renovate](https://img.shields.io/badge/enabled-brightgreen?logo=renovatebot\u0026logoColor=%2373afae\u0026label=renovate)](https://developer.mend.io/github/finleyfamily/oi)\n\nOI! A zsh function library based on [bashio](https://github.com/hassio-addons/bashio) but for general use.\nWhile primarily intended for use with zsh, OI should be mostly compatible with Bash.\n\n## Installation\n\nOI provides a [Python install script](https://github.com/finleyfamily/oi/blob/master/install.py) to make installation easy.\nThe install script requires Python ^3.10.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | python3 -\n```\n\n\u003e ℹ️ **NOTE:** On some systems, `python` may still refer to Python 2 instead of Python 3.\n\u003e It is suggested to use the `python3` binary to avoid ambiguity.\n\nTo install a specific version of OI, the `--version` option can be passed to the script.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | python3 - --version 1.0.0\n```\n\nTo install a pre-release version of OI, the `--allow-prereleases` flag can be provided.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | python3 - --allow-prereleases\n```\n\nTo install globally for all users, the `--global` option can be passed to the script.\nThis will install OI to `/usr/local/` rather than `$HOME/.local`.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | sudo python3 - --global\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | sudo python3 - -g\n```\n\nBy default the `.tar.gz` artifact of OI is installed.\nIf perferred, the `.zip` artifact can be used by passing `--artifact-type zip` to the script.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | python3 - --artifact-type zip\n```\n\nTo uninstall OI, pass the `--uninstall` flag to the script.\n\n```console\ncurl -sSL https://raw.githubusercontent.com/finleyfamily/oi/refs/heads/master/install.py | python3 - --uninstall\n```\n\n### Adding OI to your PATH\n\nThe install script creates an `oi` symlink in a well-known, platform-specific directory:\n\n- `$HOME/.local/bin` on Linux/Unix/macOS\n\nIf this directory is not present in your `PATH`, it should be added.\n\nAlternatively, the full path to the OI script can always be used:\n\n- `~/.local/lib/oi/oi` on Linux/Unix/macOS\n\n### Updating\n\nTo update OI, simply follow the steps in [Installation](#installation) section again.\n\n## Usage\n\nConfiguring a zsh script to use the OI library is fairly easy. Simply replace the shebang of your script with from `zsh` to `oi`.\n\nBefore:\n\n```shell\n#! /usr/bin/env bash\n\necho \"[INFO] Hello world!\";\n```\n\nAfter:\n\n```shell\n#! /usr/bin/env oi\n\noi::log.info \"Hello world!\";\n```\n\n## Functions\n\nThe best way to see all the available functions and their documentation is to look through the different modules in [`src/`](./src/).\nEach module has it's own file and each function has been documented inside the codebase.\n\nOnce installed, you can also use `oi --help` to view a list of all available functions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinleyfamily%2Foi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffinleyfamily%2Foi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffinleyfamily%2Foi/lists"}