{"id":19294554,"url":"https://github.com/web3-storage/w3up-docs","last_synced_at":"2025-04-22T08:30:33.015Z","repository":{"id":66220441,"uuid":"592939250","full_name":"web3-storage/w3up-docs","owner":"web3-storage","description":"Docs site for w3up, the UCAN-based storage API for web3.storage","archived":true,"fork":false,"pushed_at":"2023-01-30T17:04:14.000Z","size":1881,"stargazers_count":1,"open_issues_count":6,"forks_count":1,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-02-24T00:28:04.080Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs-beta.web3.storage","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/web3-storage.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-01-24T21:21:20.000Z","updated_at":"2023-11-14T10:56:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"9875c539-ba83-4559-8380-8d2d7c7cd4ee","html_url":"https://github.com/web3-storage/w3up-docs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web3-storage%2Fw3up-docs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web3-storage%2Fw3up-docs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web3-storage%2Fw3up-docs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web3-storage%2Fw3up-docs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/web3-storage","download_url":"https://codeload.github.com/web3-storage/w3up-docs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250205967,"owners_count":21392157,"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":"2024-11-09T22:38:42.896Z","updated_at":"2025-04-22T08:30:33.008Z","avatar_url":"https://github.com/web3-storage.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# w3up-docs\n\n\u003e Documentation website for the w3up storage APIs provided by web3.storage.\n\nThis repo contains a [Docusaurus](https://docusaurus.io) project that builds the documentation site for w3up, the [UCAN](https://ucan.xyz)-based storage platform offered by web3.storage.\n\n### Installation\n\nYou'll need Node v18+ to build this project, and [`pnpm`](https://pnpm.io/installation) to install dependencies.\n\n```bash\npnpm install\n```\n\n### Local Development\n\n```\npnpm run start\n```\n\nThis command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.\n\n### Build\n\n```\npnpm run build\n```\n\nThis command generates static content into the `build` directory and can be served using any static contents hosting service.\n\n#### API doc generation\n\nThe prebuild hook runs a script at [`scripts/api-docs.js`](./scripts/api-docs.js) that clones the repos containing our user-facing JS libraries and generates Docusaurus-flavored markdown using [docusarus-plugin-typedoc](https://www.npmjs.com/package/docusaurus-plugin-typedoc). The generated markdown is then copied into `docs/api` to be picked up by the main build process.\n\nIn order to tweak the generated output a bit to better suit the docs site, any files in the destination directory that are not ignored by the `.gitignore` file will be preserved, so that the copy in this repo is used instead of the generated one. This is used to override the `_category_.yml` files that control the sidebar, as well as replace the generated `index.md`, which uses the README of the cloned repo and often contains info that makes sense when viewing the repo on GitHub but doesn't fit on the docs site.\n\n#### Glossary generation\n\nThe glossary page is generated from [`docs/glossary.yml`](docs/glossary.yml) using the [`scripts/glossary-page.js` script](./scripts/glossary-page.js). The script runs automatically before build and generates `docs/glossary.md`, which is ignored by git.\n\nWhen using the dev server (`npm run start`), the script watches `glossary.yml` for changes and will re-generate the markdown file when you save.\n\nThe yaml file is an array of \"term objects\", where each object has the following fields (all of type `string`): \n\n| field | required? | description |\n|-|-|-|\n| `id` | ✔️ | A short id, e.g. `cid` |\n| `definition` | ✔ | A concise definition of the term, displayed in a tooltip when hovering over `\u003cTerm\u003e` component |\n| `name` | | The term being defined. If omitted, defaults to `id` with the first letter capitalized. |\n| `details` | | Additional details to include in the glossary page (but not in tooltips) |\n\nHere's an example definition:\n\n```yaml\n- id: agent\n  name: Agent\n  definition: A software component that manages signing keys and delegations needed to invoke w3up APIs.\n  details: |\n    Agents are used to invoke capabilities provided by the w3up service layer, using the [ucanto](https://github.com/web3-storage/ucanto) RPC framework. \n    \n    Agents are created locally on an end-user's device, and users are encouraged to create new agents for each device (or browser) that they want to use, rather than sharing agent keys between devices.\n```\n\nThe `details` field can contain markdown / MDX, which will be rendered on the glossary page. You can use the `\u003cTerm\u003e` component described below inside of `details` to link to other terms.\n\nIn addition to generating the glossary page, the `glossary.yml` file provides definitions for a `\u003cTerm\u003e` component that you\ncan use in your docs:\n\n\n```markdown\nNot everybody knows what a \u003cTerm id=\"cid\"\u003eCID\u003c/Term\u003e is, but they can hover over the Term to find out!\n```\n\nThis will render a link that displays a tooltip with the `definition` on hover and takes you to the full definition (including `details`) on the glossary page when clicked.\n\nThe `Term` component is available in the global scope, so there's no need to add MDX import statements to your docs in order to use it.\n\n### Deployment\n\nThe site is built with Netlify via their GitHub app integration. Production deployments happen on commit / merge to the `main` branch.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb3-storage%2Fw3up-docs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweb3-storage%2Fw3up-docs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb3-storage%2Fw3up-docs/lists"}