https://github.com/kisaragieffective/vpm_repository_index
machine readable index for VPM (stands for VRChat Package Manager) repository, licensed under Creative Commons Zero version 1.0
https://github.com/kisaragieffective/vpm_repository_index
package-index vrchat vrchat-package-manager
Last synced: 6 days ago
JSON representation
machine readable index for VPM (stands for VRChat Package Manager) repository, licensed under Creative Commons Zero version 1.0
- Host: GitHub
- URL: https://github.com/kisaragieffective/vpm_repository_index
- Owner: KisaragiEffective
- License: cc0-1.0
- Created: 2023-03-26T09:43:44.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-09-19T06:06:30.000Z (over 1 year ago)
- Last Synced: 2025-04-07T03:34:25.908Z (about 1 month ago)
- Topics: package-index, vrchat, vrchat-package-manager
- Language: Shell
- Homepage:
- Size: 30.3 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# vpm_repository_index
machine readable index for VPM (stands for VRChat Package Manager) repository, licensed under Creative Commons Zero version 1.0## JSON schema
(TODO: convert this to `application/schema+json` format)The key words "***MUST***", "***MUST NOT***", "***REQUIRED***", "***SHALL***", "***SHALL NOT***", "***SHOULD***", "***SHOULD NOT***", "***RECOMMENDED***", "***MAY***", and "***OPTIONAL***" in this document are to be interpreted as described in RFC 2119.
**informative note** does not form this specifiation. It's just side note.
* (root)
* `metadata`
* `license`: `SpdxLicenseIdentifier` - the license of this file.
* `repository`
* (each array element)
* `author`: `String` - the maintainer of following repository.
* example: KisaragiEffective
* `git_repository`: `Option` - URL of Git repository. If it exists, there may be chance to view it from git repository. Git repository which associated with this URL ***MUST*** contain one or more valid VPM repository JSON file (regardless of its branch) in the repository (**nb.** GitHub pages does **NOT** satisfy this requirement). If the repository contains multiple valid VPM repository file, then there ***MUST*** be multiple repository entries where each entry corresponds one repository.
* example: `https://github.com/ExampleOwner/ExampleRepo`
* `entry`: `Url` - URL of JSON. If `git_repository` does exist, then this URL may point to its HTTP view (**informative note**. One can use GitHub pages, while another can use their hosting service.) Protocol of this value ***SHOULD*** be `https` when possible. Protocol of this value ***MUST NOT*** be `vcc`. Response of the URL ***SHOULD NOT*** be result in "Not Found" nor "Forbidden". Response of the URL ***MUST*** contains valie VPM repository in JSON format. If protocol of this value is either `http` or `https`, the header of `Content-Type` should be `application/json`.
* example: `https://example.com/vpm.json`.
* `entry_git`: `Option>` - If it exists, then the following informations can be used to obtain VPM repository. This field ***MUST NOT*** exist if property `git_repository` does not exist.
* (each array element) - Every element ***MUST*** point valid VPM repository file by their information. This field ***MAY*** not contain latest information, and therefore there's risk to believe that there are no update according to those entries. **USE AT YOUR OWN PERIL!!**
* `commit_sha1_long`: `Sha1` - The commit hash of git commit. this hash ***MUST*** be valid SHA-1 value. This hash ***MUST*** be contained in `git_repository`.
* `path`: `FilePath` - The file path, relative to repository root. The value ***MUST*** starts with forward slash (`/`).
* `description`: `String` - Free format, but value ***SHOULD*** contain meaningful information that cannot be covered by existent fields.## License
Creative Commons Zero, version 1.0