Home

Awesome

w3up specifications

This repository contains the specs for the w3up protocol and associated subsystems.

The implementations of these specs can be found in https://github.com/web3-storage/w3up

Overview

Stable specs

Stable specs may be improved but should not change fundamentally.

Other specs

Other specs are available, maturing at rates commensurate with general interest.

Status indicators

We use the following label system to identify the status of each spec:

Nothing in this spec repository is permanent. While some of the subsystems are stable, some are still in a draft or reliable status.

Contribute

Suggestions, contributions, criticisms are welcome. Though please make sure to familiarize yourself deeply with IPFS, the models it adopts, and the principles it follows. This repository falls under the IPFS Code of Conduct.

Linting

The CI runs markdownlint via markdownlint-cli2-action with the rules in .markdownlint.jsonc. To run the linter locally you can use markdownlint-cli2 with npx markdownlint-cli2 '*.md' or install vscode-markdownlint in vscode.

Optionally prettier-vscode can also be use to format code blocks inside markdown files.

Spellcheck

The CI runs a spellcheck using md-spellcheck-action. If you want to use a word that's being flagged by the spellchecker, add it to .github/workflows/words-to-ignore.txt.

Since the spellchecker depends on GitHub Actions, the best way to run it locally is with act, a Docker-based GitHub Actions workflow runner. When you first run act, it will ask what base image to use as a default. The actions in this repo run fine with the default "medium" base image. Once act is installed, you can run the full CI suite with act pull_request. This will also run the markdown linting action described above.