{"id":24540664,"url":"https://github.com/mistralys/application-utils-core","last_synced_at":"2025-04-15T08:42:31.317Z","repository":{"id":199983296,"uuid":"704450120","full_name":"Mistralys/application-utils-core","owner":"Mistralys","description":"Core classes and interfaces for the Application Utils ecology of libraries.","archived":false,"fork":false,"pushed_at":"2025-03-28T07:09:42.000Z","size":647,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T07:16:42.736Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mistralys.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.md","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-10-13T09:30:43.000Z","updated_at":"2025-03-28T07:07:52.000Z","dependencies_parsed_at":"2023-12-19T10:27:49.805Z","dependency_job_id":"9bd7dff0-8bcd-4156-8fd8-22704414a09d","html_url":"https://github.com/Mistralys/application-utils-core","commit_stats":null,"previous_names":["mistralys/application-utils-core"],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mistralys%2Fapplication-utils-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mistralys%2Fapplication-utils-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mistralys%2Fapplication-utils-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mistralys%2Fapplication-utils-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mistralys","download_url":"https://codeload.github.com/Mistralys/application-utils-core/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249038887,"owners_count":21202803,"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":[],"created_at":"2025-01-22T18:14:37.082Z","updated_at":"2025-04-15T08:42:31.312Z","avatar_url":"https://github.com/Mistralys.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AppUtils Core\n\nCore classes and interfaces for the Application Utils ecology of libraries.\nThis package contains all most low-level classes and interfaces that are\ninterconnected and cannot be separated into their own packages.\n\nThe larger project is [mistralys/application-utils](https://github.com/Mistralys/application-utils).\n\n## Components\n\n### PHP classes\n\n- `ClassHelper` - Static methods for class checking, loading and filtering.\n- `PHPClassInfo` - Information about a PHP class without using reflection.\n\n### File system\n\n- `FileHelper` - Static method for general file system manipulations.\n- `FileFinder` - Search for and filter files.\n- `FileInfo` - File information and manipulation.\n  - `JSONFile` - Specialized JSON file handling.\n  - `PHPFile` - Specialized PHP file handling.\n  - `SerializedFile` - Specialized serialized (via `serialize()`) file handling.\n- `FolderInfo` - Folder information and manipulation.\n- `FolderFinder` - Search for and filter folders.\n- `FolderTree` - Static method to manipulate entire folder trees.\n- `PathRelativizer` - Relativize paths between two folders.\n- `PathsReducer` - Reduce a list of paths to the shortest possible form.\n- `MimeTypes` - Database of mime types and helper methods.\n\n### Data structures\n\n- `ArrayDataCollection` - Type-safe associative array handling.\n- `NumberInfo` - Parse numbers, access and manipulate their parts.\n- `URLInfo` - Parse and manipulate URLs.\n- `ThrowableInfo` - Extended `Throwable` information with serialization and unserialization.\n- `VariableInfo` - Extended information on any PHP variable.\n\n### Strings\n\n- `HiddenConverter` - Debug pesky invisible characters.\n- `OutputBuffering` - Object-oriented output buffering with exception error handling.\n- `QueryParser` - Query string parser that eliminates the `parse_str` pitfalls.\n- `StringBuilder` - Concatenate strings and HTML tags in many ways.\n- `StringHelper` - Collection of static string manipulation methods.\n- `StringMatch` - String matching and manipulation.\n- `Stringable` - Interface and trait for objects that can be converted to strings.\n- `TabsNormalizer` - Normalize tabs in strings.\n- `Transliteration` - Convert strings to ASCII.\n- `WordSplitter` - Split words in strings.\n- `WordWrapper` - Wrap texts.\n\n### HTML markup\n\n- `HTMLHelper` - Static methods for HTML markup generation.\n- `HTMLTag` - Object-oriented HTML tag creation.\n- `AttributeCollection` - Object-oriented HTML attribute handling.\n- `StylesCollection` - Object-oriented CSS style handling.\n- `Attributable` - Interface and trait for objects that can have attributes.\n- `Classable` - Interface and trait for objects that can have classes.\n- `Optionable` - Interface and trait for objects that can have options.\n- `Renderable` - Interface and trait for objects that can be rendered.\n- `Stylable` - Interface and trait for objects that can have styles.\n\n### Date and time\n\n- `DateTimeHelper` - Static conversion and helper methods for date and time handling.\n- `Microtime` - DateTime extension that can handle micro- and nanoseconds.\n- `DateIntervalExtended` - Wrapper for the native PHP class with QoL methods.\n- `DaytimeStringInfo` - Parses and validates daytime strings, e.g. `14:30`.\n- `DurationConverter` - Convert date and time durations.\n- `DurationStringInfo` - Parse and manipulate standardized duration strings, e.g. `1h 30m`.\n- `IntervalConverter` - Convert date intervals.\n- `TimeDurationCalculator` - Fill out missing values between start time, end time and duration.\n\n### Colors\n\n- `RGBAColor` - Class for RGB and alpha color handling and manipulation.\n- `HSVColor` - Class for HSV-based color handling and manipulation.\n\n## Documentation\n\nAs a general rule, I try to document as much as possible in the code itself.\nAll other documentation can be found in the AppUtils wiki:\n\n[mistralys/application-utils wiki](https://github.com/Mistralys/application-utils/wiki)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistralys%2Fapplication-utils-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmistralys%2Fapplication-utils-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistralys%2Fapplication-utils-core/lists"}