{"id":33018390,"url":"https://github.com/puli/repository","last_synced_at":"2026-04-09T00:02:06.621Z","repository":{"id":13712017,"uuid":"16406011","full_name":"puli/repository","owner":"puli","description":"A filesystem-like repository for storing arbitrary resources.","archived":false,"fork":false,"pushed_at":"2017-05-10T00:07:43.000Z","size":1476,"stargazers_count":440,"open_issues_count":2,"forks_count":40,"subscribers_count":26,"default_branch":"master","last_synced_at":"2026-04-03T10:33:44.807Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://puli.io","language":"PHP","has_issues":false,"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/puli.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}},"created_at":"2014-01-31T11:14:13.000Z","updated_at":"2026-04-01T17:50:05.000Z","dependencies_parsed_at":"2022-09-10T12:12:00.029Z","dependency_job_id":null,"html_url":"https://github.com/puli/repository","commit_stats":null,"previous_names":["webmozart/puli"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/puli/repository","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puli%2Frepository","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puli%2Frepository/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puli%2Frepository/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puli%2Frepository/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/puli","download_url":"https://codeload.github.com/puli/repository/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puli%2Frepository/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31439442,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T13:13:19.330Z","status":"ssl_error","status_checked_at":"2026-04-05T13:13:17.778Z","response_time":75,"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":[],"created_at":"2025-11-13T18:00:39.567Z","updated_at":"2026-04-09T00:02:04.577Z","avatar_url":"https://github.com/puli.png","language":"PHP","funding_links":[],"categories":["资源管理","Table of Contents","资源管理( Asset Management )","资源管理 Asset Management"],"sub_categories":["Asset Management"],"readme":"The Puli Repository Component\n=============================\n\n[![Build Status](https://travis-ci.org/puli/repository.svg?branch=1.0)](https://travis-ci.org/puli/repository)\n[![Build status](https://ci.appveyor.com/api/projects/status/a0g5jdtj78wv53c0/branch/1.0?svg=true)](https://ci.appveyor.com/project/webmozart/repository/branch/1.0)\n[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/puli/repository/badges/quality-score.png?b=1.0)](https://scrutinizer-ci.com/g/puli/repository/?branch=1.0)\n[![Latest Stable Version](https://poser.pugx.org/puli/repository/v/stable.svg)](https://packagist.org/packages/puli/repository)\n[![Total Downloads](https://poser.pugx.org/puli/repository/downloads.svg)](https://packagist.org/packages/puli/repository)\n[![Dependency Status](https://www.versioneye.com/php/puli:repository/1.0.0/badge.svg)](https://www.versioneye.com/php/puli:repository/1.0.0)\n\nLatest release: [1.0.0-beta10](https://packagist.org/packages/puli/repository#1.0.0-beta10)\n\nPHP \u003e= 5.3.9\n\nThe [Puli] Repository Component provides an API for storing arbitrary resources\nin a filesystem-like repository:\n\n```php\nuse Puli\\Repository\\InMemoryRepository;\nuse Puli\\Repository\\Resource\\DirectoryResource;\n\n$repo = new InMemoryRepository();\n$repo-\u003eadd('/config', new DirectoryResource('/path/to/resources/config'));\n\n// /path/to/resources/config/routing.yml\necho $repo-\u003eget('/config/routing.yml')-\u003egetBody();\n```\n\nThe following [`ResourceRepository`] implementations are currently supported:\n\n* [`InMemoryRepository`]\n* [`FilesystemRepository`]\n* [`NullRepository`]\n* [`JsonRepository`]\n* [`OptimizedJsonRepository`]\n\nThe following [`Resource`] implementations are currently supported:\n\n* [`GenericResource`]\n* [`FileResource`]\n* [`DirectoryResource`]\n* [`LinkResource`]\n\nAuthors\n-------\n\n* [Bernhard Schussek] a.k.a. [@webmozart]\n* [The Community Contributors]\n\nInstallation\n------------\n\nFollow the [Getting Started] guide to install Puli in your project.\n\nDocumentation\n-------------\n\nRead the [Puli Documentation] to learn more about Puli.\n\nContribute\n----------\n\nContributions to Puli are always welcome!\n\n* Report any bugs or issues you find on the [issue tracker].\n* You can grab the source code at Puli’s [Git repository].\n\nSupport\n-------\n\nIf you are having problems, send a mail to bschussek@gmail.com or shout out to\n[@webmozart] on Twitter.\n\nLicense\n-------\n\nAll contents of this package are licensed under the [MIT license].\n\n[Puli]: http://puli.io\n[Bernhard Schussek]: http://webmozarts.com\n[The Community Contributors]: https://github.com/puli/repository/graphs/contributors\n[Installation guide]: http://docs.puli.io/en/latest/installation.html\n[Puli Documentation]: http://docs.puli.io/en/latest/index.html\n[issue tracker]: https://github.com/puli/issues/issues\n[Git repository]: https://github.com/puli/repository\n[@webmozart]: https://twitter.com/webmozart\n[MIT license]: LICENSE\n[`ResourceRepository`]: http://api.puli.io/latest/class-Puli.Repository.Api.ResourceRepository.html\n[`InMemoryRepository`]: http://api.puli.io/latest/class-Puli.Repository.InMemoryRepository.html\n[`FilesystemRepository`]: http://api.puli.io/latest/class-Puli.Repository.FilesystemRepository.html\n[`NullRepository`]: http://api.puli.io/latest/class-Puli.Repository.NullRepository.html\n[`JsonRepository`]: http://api.puli.io/latest/class-Puli.Repository.JsonRepository.html\n[`OptimizedJsonRepository`]: http://api.puli.io/latest/class-Puli.Repository.OptimizedJsonRepository.html\n[`Resource`]: http://api.puli.io/latest/class-Puli.Repository.Api.Resource.Resource.html\n[`GenericResource`]: http://api.puli.io/latest/class-Puli.Repository.Resource.GenericResource.html\n[`FileResource`]: http://api.puli.io/latest/class-Puli.Repository.Resource.FileResource.html\n[`DirectoryResource`]: http://api.puli.io/latest/class-Puli.Repository.Resource.DirectoryResource.html\n[`LinkResource`]: http://api.puli.io/latest/class-Puli.Repository.Resource.LinkResource.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuli%2Frepository","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpuli%2Frepository","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuli%2Frepository/lists"}