{"id":30450244,"url":"https://github.com/nochso/omni","last_synced_at":"2025-08-23T13:26:20.034Z","repository":{"id":57027924,"uuid":"52691981","full_name":"nochso/omni","owner":"nochso","description":"Helps with every day nuisances like path or EOL handling.","archived":false,"fork":false,"pushed_at":"2016-04-17T06:56:03.000Z","size":172,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-07-26T15:31:16.262Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nochso.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-02-27T22:29:04.000Z","updated_at":"2023-07-26T15:31:16.263Z","dependencies_parsed_at":"2022-08-23T16:30:13.189Z","dependency_job_id":null,"html_url":"https://github.com/nochso/omni","commit_stats":null,"previous_names":[],"tags_count":12,"template":null,"template_full_name":null,"purl":"pkg:github/nochso/omni","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nochso%2Fomni","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nochso%2Fomni/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nochso%2Fomni/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nochso%2Fomni/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nochso","download_url":"https://codeload.github.com/nochso/omni/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nochso%2Fomni/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271749048,"owners_count":24814115,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-08-23T13:25:58.094Z","updated_at":"2025-08-23T13:26:20.027Z","avatar_url":"https://github.com/nochso.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# nochso/omni\n\n[![License](https://poser.pugx.org/nochso/omni/license)](https://packagist.org/packages/nochso/omni)\n[![GitHub tag](https://img.shields.io/github/tag/nochso/omni.svg)](https://github.com/nochso/omni/releases)\n[![Build Status](https://travis-ci.org/nochso/omni.svg?branch=master)](https://travis-ci.org/nochso/omni)\n[![SensioLabsInsight](https://insight.sensiolabs.com/projects/fbc0e55a-bc4d-4936-9d27-72dfb913c323/mini.png)](https://insight.sensiolabs.com/projects/fbc0e55a-bc4d-4936-9d27-72dfb913c323)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nochso/omni/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/nochso/omni/?branch=master)\n[![Coverage Status](https://coveralls.io/repos/github/nochso/omni/badge.svg?branch=master)](https://coveralls.io/github/nochso/omni?branch=master)\n\nnochso/omni helps with every day nuisances like path or EOL handling.\n\n- Simple solutions: This is not an alternative for more specific packages.\n- Fully tested.\n- Strictly follows [Semantic Versioning 2.0.0](http://semver.org/spec/v2.0.0.html).\n- Clean code with [low complexity](https://www.cs.helsinki.fi/u/luontola/tdd-2009/ext/ObjectCalisthenics.pdf).\n- No dependencies other than [symfony/polyfill-mbstring](https://packagist.org/packages/symfony/polyfill-mbstring).\n- Not a framework.\n- Not another object-based wrapper around the standard PHP library.\n- One less reason to stumble upon the PHP.net comment section or have a Stackoverflow [deja-vu](https://i.imgur.com/SZPjHwz.jpg).\n\nTable of contents:\n- [nochso/omni](#nochsoomni)\n- [Requirements](#requirements)\n- [Installation](#installation)\n- [API summary](#api-summary)\n- [Change log](#change-log)\n- [Contributing](#contributing)\n- [License](#license)\n\n# Requirements\nPHP 5.6.0, 7.0 or higher.\n\nInstallation and autoloading via Composer is recommended. You're free to use any other **PSR-4** compatible autoloader on folder `src/`.\n\n## Optional requirements\n[`fabpot/php-cs-fixer`](https://packagist.org/packages/fabpot/php-cs-fixer) is required by namespace `nochso\\Omni\\PhpCsfixer`.\n\n# Installation\n```php\ncomposer require nochso/omni\n```\n\nYou can now use the namespace `\\nochso\\Omni`.\n\n# API summary\nFor full API documentation, see [API.md](API.md).\n\nThis is a short summary of namespaces, classes, interfaces and traits.\n\n- `N` `nochso\\Omni`\n    - `C` `ArrayCollection` wraps an array, providing common collection methods.\n    - `C` `Arrays` class provides methods for array manipulation missing from default PHP.\n    - `C` `Dot` allows easy access to multi-dimensional arrays using dot notation.\n    - `C` `DotArray` holds a multi-dimensional array and wraps the static API of `\\nochso\\Omni\\Dot`.\n    - `C` `EOL` detects, converts and returns information about line-endings.\n    - `C` `Exec` creates objects that help manage `\\exec()` calls.\n    - `C` `Folder` handles file system folders.\n    - `C` `Multiline` string class for working with lines of text.\n    - `C` `Numeric` validates and converts mixed types to numeric types.\n    - `C` `OS` OS.\n    - `C` `Path` helps keep the directory separator/implode/trim/replace madness away.\n    - `C` `Strings` class provides methods for string handling missing from default PHP.\n    - `C` `Type` returns PHP type information.\n    - `C` `VcsVersionInfo` enriches an internal VersionInfo with the latest tag and current repository state.\n    - `C` `VersionInfo` consists of a package name and version.\n- `N` `nochso\\Omni\\Format`\n    - `C` `Bytes` formats a quantity of bytes using different suffixes and binary or decimal base.\n    - `C` `Duration` formats seconds or DateInterval objects as human readable strings.\n    - `C` `Quantity` formats a string depending on quantity (many, one or zero).\n- `N` `nochso\\Omni\\PhpCsFixer`\n    - `C` `DefaultFinder` respects ignore files for Git, Mercurial and Darcs.\n    - `C` `PrettyPSR` lies inbetween FixerInterface's PSR2 and Symfony level.\n\n\n# Change log\nSee [CHANGELOG.md](CHANGELOG.md) for the full history of changes between releases.\n\n## [0.3.8]\n\n### Added\n- Add placeholder `%s` for quantity in `Format\\Quantity`.\n\n\n### Changed\n- `DurationFormat` can now handle milliseconds.\n\n\n## [0.3.7] - 2016-04-16\n\n### Fixed\n- Fix handling of absolute `scheme://` paths in `Path::combine`\n\n\n\n\n# Contributing\nFeedback, bug reports and pull requests are always welcome.\n\nPlease read the [contributing guide](CONTRIBUTING.md) for instructions.\n\n# License\nThis project is released under the MIT license. See [LICENSE.md](LICENSE.md) for the full text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnochso%2Fomni","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnochso%2Fomni","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnochso%2Fomni/lists"}