People & Ownership
Properly attributing a Blocklet's creation and maintenance is essential for building user trust and fostering collaboration. The blocklet.yml
file provides three dedicated fields—author
, contributors
, and maintainers
—to define the people and organizations involved in the project's lifecycle. These fields all leverage a flexible Person
schema.
The Person Schema#
Each person can be specified in two ways: as a structured object for maximum clarity or as a compact string for convenience. The metadata parser automatically handles both formats.
1. Object Format#
The structured object provides distinct fields for each piece of information, making the metadata explicit and easy to parse by tools.
Field | Type | Required | Description |
---|---|---|---|
| string | Yes | The person's or organization's full name. |
| string | No | A contact email address. |
| string | No | A URL pointing to a website, portfolio, or social profile. |
Example:
author:
name: Jane Doe
email: jane.doe@example.com
url: https://janedoe.com
2. Compact String Format#
For a more concise representation, you can use a single string in the format "Name <email> (url)"
. The name is the only required part; email and URL are optional.
Example:
author: Jane Doe <jane.doe@example.com> (https://janedoe.com)
Ownership Fields#
Here is how to use the Person schema for each of the ownership fields in your blocklet.yml
.
author
#
The author
field designates the original creator or primary owner of the Blocklet. It accepts a single Person object or string.
Specification:
- Type:
Person
(Object or String) - Required: No
Example:
# blocklet.yml
did: z8iZq23A8s57Bq1Wc3d1k8q9J6g4G7f5H2E
name: my-blocklet
version: 1.0.0
description: A sample blocklet.
author:
name: ArcBlock
email: support@arcblock.io
url: https://www.arcblock.io
contributors
#
The contributors
field is an array that lists individuals or organizations who have contributed to the Blocklet's development. Each item in the array can be either a Person object or a string.
Specification:
- Type:
Array<Person>
- Required: No
Example:
# blocklet.yml
contributors:
- name: John Smith
email: john.smith@example.com
- Alice Johnson <alice.j@example.com> (https://alicej.dev)
- "Bob Williams"
maintainers
#
The maintainers
field is an array listing the current individuals or organizations responsible for maintaining the Blocklet, including handling updates, issues, and support. This is especially useful if the original author is no longer actively involved.
Specification:
- Type:
Array<Person>
- Required: No
Example:
# blocklet.yml
maintainers:
- name: Core Dev Team
url: https://github.com/orgs/my-org/teams/core-dev
- Main Tainer <main.tainer@example.com>
By accurately populating these fields, you provide clear attribution and points of contact for your Blocklet project, making it more transparent and trustworthy for users and other developers.
Next, learn how to configure your blocklet's package and web links in the Distribution & Links section.