├── src ├── ko │ ├── guides │ │ ├── http-api.md │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ └── ardrive.md │ │ ├── index.md │ │ ├── posting-transactions │ │ │ └── dispatch.md │ │ ├── wallets-and-keyfiles │ │ │ └── creating-a-wallet.md │ │ └── graphql │ │ │ └── ar-gql.md │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── svelte │ │ │ └── index.md │ │ └── vue │ │ │ └── index.md │ ├── references │ │ ├── index.md │ │ ├── llms-txt.md │ │ ├── glossary.md │ │ └── specs │ │ │ └── ans │ │ │ └── ANS-101.md │ ├── fundamentals │ │ ├── decentralized-computing │ │ │ └── index.md │ │ ├── index.md │ │ ├── transactions │ │ │ └── bundles.md │ │ └── gateways │ │ │ ├── index.md │ │ │ └── graphql.md │ ├── archive │ │ ├── permaweb.md │ │ ├── index.md │ │ └── concepts │ │ │ ├── atomic-tokens.md │ │ │ └── vouch-system.md │ ├── getting-started │ │ ├── index.md │ │ ├── quick-starts │ │ │ └── hw-cli.md │ │ └── README.md │ └── index.md ├── id │ ├── references │ │ └── README.md │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── svelte │ │ │ └── index.md │ │ └── vue │ │ │ └── index.md │ ├── guides │ │ ├── posting-transactions │ │ │ ├── README.md │ │ │ └── dispatch.md │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ ├── deploying-manifests.md │ │ │ └── ardrive.md │ │ ├── using-vue.md │ │ ├── exm │ │ │ └── js-sdk │ │ │ │ └── sdk-intro.md │ │ ├── querying-arweave │ │ │ └── ar-gql.md │ │ ├── deployment │ │ │ └── irys-cli.md │ │ └── README.md │ ├── getting-started │ │ └── quick-starts │ │ │ ├── hw-no-code.md │ │ │ └── hw-cli.md │ └── concepts │ │ ├── README.md │ │ ├── permaweb.md │ │ ├── atomic-tokens.md │ │ └── bundlers.md ├── images │ ├── ardrive-pst.png │ ├── arweaveapp-tags.png │ ├── pst-deployment.png │ ├── ardrive-manifests.png │ ├── exm-create-token.png │ ├── arweaveapp-manifest.png │ ├── exm-lazy-evaluation.png │ ├── exm-sign-in-options.png │ ├── exm-serverless-functions.png │ ├── exm-verifiable-computing.png │ └── provenace-toolkit-layout.png ├── .vuepress │ ├── public │ │ ├── cookbook.png │ │ ├── Permaweb_Cookbook.ico │ │ ├── encryption-diagram.png │ │ ├── private-drive-schema.png │ │ ├── public-drive-schema.png │ │ ├── entity-relationship-diagram.png │ │ └── icons │ │ │ ├── language.svg │ │ │ └── github.svg │ ├── client.js │ ├── composables │ │ └── useContributors.js │ ├── styles │ │ └── bootstrap.scss │ └── components │ │ ├── I18NRouterLink.vue │ │ └── ToggleSidebarButton.vue ├── zh │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── svelte │ │ │ └── index.md │ │ └── vue │ │ │ └── index.md │ ├── guides │ │ ├── index.md │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ └── ardrive.md │ │ ├── posting-transactions │ │ │ └── dispatch.md │ │ ├── wallets-and-keyfiles │ │ │ └── creating-a-wallet.md │ │ └── graphql │ │ │ └── ar-gql.md │ ├── references │ │ ├── index.md │ │ ├── specs │ │ │ ├── arfs │ │ │ │ ├── schema-diagrams.md │ │ │ │ ├── content-types.md │ │ │ │ ├── arfs.md │ │ │ │ └── data-model.md │ │ │ └── ans │ │ │ │ ├── ANS-101.md │ │ │ │ └── ANS-106.md │ │ ├── llms-txt.md │ │ └── glossary.md │ ├── fundamentals │ │ ├── decentralized-computing │ │ │ └── index.md │ │ ├── index.md │ │ ├── transactions │ │ │ ├── bundles.md │ │ │ └── tags.md │ │ └── gateways │ │ │ ├── index.md │ │ │ ├── graphql.md │ │ │ └── data-retrieval.md │ ├── archive │ │ ├── permaweb.md │ │ ├── index.md │ │ └── concepts │ │ │ ├── atomic-tokens.md │ │ │ └── vouch-system.md │ ├── getting-started │ │ ├── index.md │ │ ├── quick-starts │ │ │ └── hw-cli.md │ │ └── contributing.md │ └── index.md ├── zhTW │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── vue │ │ │ └── index.md │ │ └── svelte │ │ │ └── index.md │ ├── guides │ │ ├── index.md │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ └── ardrive.md │ │ ├── posting-transactions │ │ │ └── dispatch.md │ │ ├── wallets-and-keyfiles │ │ │ └── creating-a-wallet.md │ │ └── graphql │ │ │ └── ar-gql.md │ ├── references │ │ ├── index.md │ │ ├── specs │ │ │ ├── arfs │ │ │ │ ├── schema-diagrams.md │ │ │ │ ├── content-types.md │ │ │ │ ├── arfs.md │ │ │ │ └── data-model.md │ │ │ └── ans │ │ │ │ └── ANS-101.md │ │ ├── llms-txt.md │ │ └── glossary.md │ ├── fundamentals │ │ ├── decentralized-computing │ │ │ └── index.md │ │ ├── index.md │ │ ├── transactions │ │ │ ├── bundles.md │ │ │ └── tags.md │ │ └── gateways │ │ │ ├── index.md │ │ │ ├── graphql.md │ │ │ └── data-retrieval.md │ ├── archive │ │ ├── permaweb.md │ │ ├── index.md │ │ └── concepts │ │ │ ├── atomic-tokens.md │ │ │ └── vouch-system.md │ ├── getting-started │ │ ├── index.md │ │ ├── quick-starts │ │ │ └── hw-cli.md │ │ └── contributing.md │ └── index.md ├── ja │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── svelte │ │ │ └── index.md │ │ └── vue │ │ │ └── index.md │ ├── references │ │ ├── index.md │ │ ├── specs │ │ │ ├── arfs │ │ │ │ ├── schema-diagrams.md │ │ │ │ └── content-types.md │ │ │ └── ans │ │ │ │ └── ANS-101.md │ │ ├── llms-txt.md │ │ └── glossary.md │ ├── guides │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ └── ardrive.md │ │ ├── index.md │ │ ├── posting-transactions │ │ │ └── dispatch.md │ │ ├── wallets-and-keyfiles │ │ │ └── creating-a-wallet.md │ │ └── graphql │ │ │ └── ar-gql.md │ ├── fundamentals │ │ ├── decentralized-computing │ │ │ └── index.md │ │ ├── index.md │ │ ├── transactions │ │ │ └── bundles.md │ │ └── gateways │ │ │ ├── index.md │ │ │ └── graphql.md │ ├── archive │ │ ├── permaweb.md │ │ ├── index.md │ │ └── concepts │ │ │ ├── atomic-tokens.md │ │ │ └── vouch-system.md │ ├── getting-started │ │ ├── index.md │ │ └── quick-starts │ │ │ └── hw-cli.md │ └── index.md ├── kits │ └── README.md ├── es │ ├── kits │ │ ├── README.md │ │ ├── react │ │ │ └── index.md │ │ ├── svelte │ │ │ └── index.md │ │ └── vue │ │ │ └── index.md │ ├── guides │ │ ├── posting-transactions │ │ │ ├── README.md │ │ │ └── dispatch.md │ │ ├── deploying-manifests │ │ │ ├── arweave-app.md │ │ │ ├── deploying-manifests.md │ │ │ └── ardrive.md │ │ ├── using-vue.md │ │ ├── exm │ │ │ └── js-sdk │ │ │ │ └── sdk-intro.md │ │ └── querying-arweave │ │ │ └── ar-gql.md │ ├── references │ │ └── README.md │ ├── concepts │ │ ├── README.md │ │ ├── permaweb.md │ │ ├── bundlers.md │ │ └── atomic-tokens.md │ └── getting-started │ │ ├── quick-starts │ │ ├── hw-cli.md │ │ └── hw-no-code.md │ │ └── welcome.md ├── references │ ├── index.md │ ├── specs │ │ └── arfs │ │ │ ├── schema-diagrams.md │ │ │ └── content-types.md │ ├── llms-txt.md │ └── glossary.md ├── guides │ ├── deploying-manifests │ │ ├── arweave-app.md │ │ └── ardrive.md │ ├── index.md │ ├── posting-transactions │ │ └── dispatch.md │ ├── wallets-and-keyfiles │ │ └── creating-a-wallet.md │ └── graphql │ │ └── ar-gql.md ├── fundamentals │ ├── index.md │ └── decentralized-computing │ │ └── index.md ├── archive │ ├── index.md │ ├── permaweb.md │ └── concepts │ │ ├── atomic-tokens.md │ │ ├── vouch-system.md │ │ ├── vouch-zh.md │ │ └── vouch-ja.md └── getting-started │ ├── quick-starts │ └── hw-cli.md │ └── index.md ├── .husky ├── pre-commit └── commit-msg ├── .prettierignore ├── .lintstagedrc.json ├── commitlint.config.mjs ├── .gitpod.yml ├── .gitignore ├── .github ├── ISSUE_TEMPLATE │ ├── chore.yml │ ├── documentation.yml │ ├── translation_request.yml │ ├── feature_request.yml │ └── bug_report.yml └── workflows │ └── deploy.yml └── config └── markdown-link-check.json /src/ko/guides/http-api.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | npx lint-staged -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | npx --no-install commitlint -e 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .cache 2 | .temp 3 | dist 4 | 5 | package.json 6 | -------------------------------------------------------------------------------- /src/id/references/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Referensi -------------------------------------------------------------------------------- /.lintstagedrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "src/**/*.{js,md,vue}": "prettier --write" 3 | } 4 | -------------------------------------------------------------------------------- /commitlint.config.mjs: -------------------------------------------------------------------------------- 1 | export default { 2 | extends: ['@commitlint/config-conventional'] 3 | }; -------------------------------------------------------------------------------- /src/images/ardrive-pst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/ardrive-pst.png -------------------------------------------------------------------------------- /src/images/arweaveapp-tags.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/arweaveapp-tags.png -------------------------------------------------------------------------------- /src/images/pst-deployment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/pst-deployment.png -------------------------------------------------------------------------------- /src/images/ardrive-manifests.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/ardrive-manifests.png -------------------------------------------------------------------------------- /src/images/exm-create-token.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/exm-create-token.png -------------------------------------------------------------------------------- /src/.vuepress/public/cookbook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/cookbook.png -------------------------------------------------------------------------------- /src/images/arweaveapp-manifest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/arweaveapp-manifest.png -------------------------------------------------------------------------------- /src/images/exm-lazy-evaluation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/exm-lazy-evaluation.png -------------------------------------------------------------------------------- /src/images/exm-sign-in-options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/exm-sign-in-options.png -------------------------------------------------------------------------------- /src/images/exm-serverless-functions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/exm-serverless-functions.png -------------------------------------------------------------------------------- /src/images/exm-verifiable-computing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/exm-verifiable-computing.png -------------------------------------------------------------------------------- /src/images/provenace-toolkit-layout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/images/provenace-toolkit-layout.png -------------------------------------------------------------------------------- /src/.vuepress/public/Permaweb_Cookbook.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/Permaweb_Cookbook.ico -------------------------------------------------------------------------------- /src/.vuepress/public/encryption-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/encryption-diagram.png -------------------------------------------------------------------------------- /src/.vuepress/public/private-drive-schema.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/private-drive-schema.png -------------------------------------------------------------------------------- /src/.vuepress/public/public-drive-schema.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/public-drive-schema.png -------------------------------------------------------------------------------- /src/.vuepress/public/entity-relationship-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/twilson63/permaweb-cookbook/HEAD/src/.vuepress/public/entity-relationship-diagram.png -------------------------------------------------------------------------------- /src/zh/kits/README.md: -------------------------------------------------------------------------------- 1 | # 入门套件 2 | 3 | 入门套件是为特定框架准备的样板仓库,已完成配置并可立即使用,以便在 permaweb 上进行开发。 4 | 5 | - [React](./react/index.md) 6 | - [Svelte](./svelte/index.md) 7 | - [Vue](./vue/index.md) 8 | -------------------------------------------------------------------------------- /src/zhTW/kits/README.md: -------------------------------------------------------------------------------- 1 | # 入門套件 2 | 3 | 入門套件是為特定框架所準備的樣板倉庫,已完成配置並可立即使用,以便在 permaweb 上進行開發。 4 | 5 | - [React](./react/index.md) 6 | - [Svelte](./svelte/index.md) 7 | - [Vue](./vue/index.md) 8 | -------------------------------------------------------------------------------- /src/ko/kits/README.md: -------------------------------------------------------------------------------- 1 | # 스타터 키트 2 | 3 | 스타터 키트는 특정 프레임워크용으로 구성되어 퍼마웹(permaweb)에서 바로 사용할 수 있는 보일러플레이트 저장소입니다. 4 | 5 | - [React](./react/index.md) 6 | - [Svelte](./svelte/index.md) 7 | - [Vue](./vue/index.md) 8 | -------------------------------------------------------------------------------- /src/ja/kits/README.md: -------------------------------------------------------------------------------- 1 | # スターターキット 2 | 3 | スターターキットは、特定のフレームワーク向けに用意されたボイラープレート(雛形)リポジトリで、permaweb 上で構築するために設定済みで、すぐに利用可能です。 4 | 5 | - [React](./react/index.md) 6 | - [Svelte](./svelte/index.md) 7 | - [Vue](./vue/index.md) 8 | -------------------------------------------------------------------------------- /src/kits/README.md: -------------------------------------------------------------------------------- 1 | # Starter Kits 2 | 3 | Starter kits are boiler plate repositories for specific frameworks configured and ready to go, to build on the permaweb. 4 | 5 | - [React](./react/index.md) 6 | - [Svelte](./svelte/index.md) 7 | - [Vue](./vue/index.md) 8 | -------------------------------------------------------------------------------- /src/es/kits/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Kits de inicio 5 | 6 | Los kits de inicio son repositorios tipo boilerplate para frameworks específicos configurados y listos para usar, para construir en la permaweb. 7 | 8 | - [Svelte](./svelte/index.md) 9 | - [React](./react/index.md) 10 | - [Vue](./vue/index.md) -------------------------------------------------------------------------------- /src/id/kits/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Starter Kits 6 | 7 | Starter kits adalah repositori boilerplate untuk kerangka kerja tertentu yang telah dikonfigurasi dan siap digunakan untuk membangun di permaweb. 8 | 9 | - [Svelte](./svelte/index.md) 10 | - [React](./react/index.md) 11 | - [Vue](./vue/index.md) 12 | -------------------------------------------------------------------------------- /src/ja/references/index.md: -------------------------------------------------------------------------------- 1 | # リファレンス 2 | 3 | Permaweb 開発のためのリファレンスドキュメント、仕様、リソース。 4 | 5 | ## クイックリファレンス 6 | 7 | - **[用語集](./glossary.md)** - 主要用語と概念の定義 8 | - **[LLMs.txt](./llms-txt.md)** - AI アシスタント向けの機械可読ドキュメント 9 | 10 | ## 技術仕様 11 | 12 | - **[ANS](./specs/ans/ANS-101.md)** 13 | - **[ArFS 仕様](./specs/arfs/arfs.md)** - Arweave ファイルシステムの標準 14 | -------------------------------------------------------------------------------- /src/zh/guides/index.md: -------------------------------------------------------------------------------- 1 | # 指南 2 | 3 | 在 Permaweb 上构建应用的逐步教程与实用指南。 4 | 5 | - [发布交易](./posting-transactions/arweave-js.md) - 如何将数据传送到 Arweave 6 | - [部署 Manifests](./deploying-manifests/ardrive.md) - 发布应用程序与网站 7 | - [套件](../kits/react/) - 前端框架部署指南与入门套件 8 | - [查询 Arweave](./graphql/) - 查找与获取数据 9 | - [部署工具](./deployment/permaweb-deploy.md) - CLI 工具与自动化 10 | -------------------------------------------------------------------------------- /src/zhTW/guides/index.md: -------------------------------------------------------------------------------- 1 | # 指南 2 | 3 | 在 Permaweb 上構建應用的逐步教學與實用指南。 4 | 5 | - [發佈交易](./posting-transactions/arweave-js.md) - 如何將資料傳送到 Arweave 6 | - [部署 Manifests](./deploying-manifests/ardrive.md) - 發佈應用程式與網站 7 | - [套件](../kits/react/) - 前端框架部署指南與起始套件 8 | - [查詢 Arweave](./graphql/) - 查找與擷取資料 9 | - [部署工具](./deployment/permaweb-deploy.md) - CLI 工具與自動化 10 | -------------------------------------------------------------------------------- /src/zh/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | ### Arweave.app 2 | 3 | --- 4 | 5 | 通过 [Arweave.app](http://Arweave.app) 上传目录时,会自动为目录中的所有文件创建 manifest。 6 | 7 | ![ArweaveApp manifest 上传](~@source/images/arweaveapp-manifest.png) 8 | 9 | 或者,您可以手动上传您自己的 manifest 文件,添加以下标签,然后提交交易。 10 | 11 | ![ArweaveApp manifest 标签](~@source/images/arweaveapp-tags.png) 12 | -------------------------------------------------------------------------------- /.gitpod.yml: -------------------------------------------------------------------------------- 1 | # List the start up tasks. Learn more https://www.gitpod.io/docs/config-start-tasks/ 2 | tasks: 3 | - init: cd docs && yarn # runs during prebuild 4 | command: yarn dev 5 | 6 | # List the ports to expose. Learn more https://www.gitpod.io/docs/config-ports/ 7 | ports: 8 | - port: 8080 9 | onOpen: open-browser 10 | visibility: public 11 | -------------------------------------------------------------------------------- /src/id/guides/posting-transactions/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | Silakan lihat contoh yang terlampir pada Konsep Inti Posting Transaksi. 6 | 7 | - Contoh [arweave-js](/guides/posting-transactions/arweave-js.md) 8 | - Contoh [irys.xyz](/guides/posting-transactions/irys.md) 9 | - Contoh [dispatch](/guides/posting-transactions/dispatch.md) 10 | -------------------------------------------------------------------------------- /src/zhTW/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | ### Arweave.app 2 | 3 | --- 4 | 5 | 透過 [Arweave.app](http://Arweave.app) 上傳目錄會自動為目錄中的所有檔案建立 manifest。 6 | 7 | ![ArweaveApp Manifest Upload](~@source/images/arweaveapp-manifest.png) 8 | 9 | 或者,您可以手動上傳您自己的 manifest 檔案,新增下列標籤,然後提交交易。 10 | 11 | ![ArweaveApp Manifest Tags](~@source/images/arweaveapp-tags.png) 12 | -------------------------------------------------------------------------------- /src/ja/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | ### Arweave.app 2 | 3 | --- 4 | 5 | Arweave.app を通じてディレクトリをアップロードすると、そのディレクトリ内の全ファイルに対して自動的にマニフェストが作成されます。 6 | 7 | ![ArweaveApp マニフェストのアップロード](~@source/images/arweaveapp-manifest.png) 8 | 9 | あるいは、独自のマニフェストファイルを手動でアップロードし、次のタグを追加してトランザクションを送信できます。 10 | 11 | ![ArweaveApp マニフェストのタグ](~@source/images/arweaveapp-tags.png) 12 | -------------------------------------------------------------------------------- /src/ko/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | ### Arweave.app 2 | 3 | --- 4 | 5 | [Arweave.app](http://Arweave.app)를 통해 디렉토리를 업로드하면 디렉토리의 모든 파일에 대한 매니페스트를 자동으로 생성합니다. 6 | 7 | ![ArweaveApp 매니페스트 업로드](~@source/images/arweaveapp-manifest.png) 8 | 9 | 또는 직접 매니페스트 파일을 업로드하고, 다음 태그를 추가한 뒤 트랜잭션을 제출할 수 있습니다. 10 | 11 | ![ArweaveApp 매니페스트 태그](~@source/images/arweaveapp-tags.png) 12 | -------------------------------------------------------------------------------- /src/ko/guides/index.md: -------------------------------------------------------------------------------- 1 | # 가이드 2 | 3 | Permaweb에서 구축하기 위한 단계별 튜토리얼 및 실용 가이드. 4 | 5 | - [트랜잭션 전송](./posting-transactions/arweave-js.md) - Arweave에 데이터를 전송하는 방법 6 | - [매니페스트 배포](./deploying-manifests/ardrive.md) - 애플리케이션 및 웹사이트 게시 7 | - [배포 도구](./deployment/permaweb-deploy.md) - CLI 도구 및 자동화 8 | - [키트](../kits/react/) - 프론트엔드 프레임워크 배포 가이드 및 스타터 키트 9 | - [Arweave 쿼리](./graphql/) - 데이터 검색 및 조회 10 | -------------------------------------------------------------------------------- /src/zh/kits/react/index.md: -------------------------------------------------------------------------------- 1 | # React 入门套件 2 | 3 | React 是一个用于构建用户界面的流行库。除了像 create-react-app 等其他流行工具之外,React 项目可以编译成一个 bundle(打包文件)。该 bundle 可以作为交易上传到 Permaweb,在那里它会作为单页应用程序 (SPA) 提供。 4 | 5 | React 入门套件指南: 6 | 7 | - [Vite](./turbo.md) - React + Vite,使用 `permaweb-deploy` 发布 8 | 9 | ::: info Permaweb 应用限制 10 | 11 | - 100% 前端应用程序(不包含服务器端后端) 12 | - 应用程序会从子路径提供(https://[gateway]/[TX_ID]) 13 | ::: 14 | -------------------------------------------------------------------------------- /src/es/guides/posting-transactions/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | Por favor, consulte los ejemplos adjuntos al concepto fundamental de publicación de transacciones. 6 | 7 | - Ejemplo de [arweave-js](/guides/posting-transactions/arweave-js.md) 8 | - Ejemplo de [irys.xyz](/guides/posting-transactions/irys.md) 9 | - Ejemplo de [dispatch](/guides/posting-transactions/dispatch.md) 10 | -------------------------------------------------------------------------------- /src/zhTW/kits/react/index.md: -------------------------------------------------------------------------------- 1 | # React 入門套件 2 | 3 | React 是一個用於建立使用者介面的熱門函式庫。除了像 create-react-app 等其他流行工具之外,React 專案可以編譯成一個 bundle(打包檔)。該 bundle 可以作為交易上傳到 Permaweb,在那裡它會作為單頁應用程式 (SPA) 提供。 4 | 5 | React 入門套件指南: 6 | 7 | - [Vite](./turbo.md) - React + Vite,使用 `permaweb-deploy` 發佈 8 | 9 | ::: info Permaweb 應用限制 10 | 11 | - 100% 前端應用程式(不包含伺服器端後端) 12 | - 應用程式會從子路徑提供(https://[gateway]/[TX_ID]) 13 | ::: 14 | -------------------------------------------------------------------------------- /src/zh/references/index.md: -------------------------------------------------------------------------------- 1 | # 参考资料 2 | 3 | 针对 Permaweb 开发的参考文档、技术规范与资源。 4 | 5 | ## 快速参考 6 | 7 | - **[词汇表](./glossary.md)** - 关键术语与概念的定义 8 | - **[LLMs.txt](./llms-txt.md)** - 供 AI 助手机器可读的文档 9 | 10 | ## 技术规范 11 | 12 | - **[ANS](./specs/ans/ANS-101.md)** 13 | - **[ArFS Specification](./specs/arfs/arfs.md)** - Arweave 文件系统标准 14 | 15 | ## API 参考 16 | 17 | 如需特定工具与服务的 API,请参阅 [工具](../tooling/index.md) 部分。 18 | -------------------------------------------------------------------------------- /src/zhTW/references/index.md: -------------------------------------------------------------------------------- 1 | # 參考資料 2 | 3 | 針對 Permaweb 開發的參考文件、技術規格與資源。 4 | 5 | ## 快速參考 6 | 7 | - **[詞彙表](./glossary.md)** - 關鍵術語與概念的定義 8 | - **[LLMs.txt](./llms-txt.md)** - 供 AI 助手機器可讀的文件 9 | 10 | ## 技術規格 11 | 12 | - **[ANS](./specs/ans/ANS-101.md)** 13 | - **[ArFS Specification](./specs/arfs/arfs.md)** - Arweave 檔案系統標準 14 | 15 | ## API 參考 16 | 17 | 如需特定工具與服務的 API,請參閱 [工具](../tooling/index.md) 區段。 18 | -------------------------------------------------------------------------------- /src/ja/guides/index.md: -------------------------------------------------------------------------------- 1 | # ガイド 2 | 3 | Permaweb 上での構築のためのステップバイステップのチュートリアルと実践ガイド。 4 | 5 | - [トランザクションの投稿](./posting-transactions/arweave-js.md) - Arweave にデータを送信する方法 6 | - [マニフェストのデプロイ](./deploying-manifests/ardrive.md) - アプリケーションとウェブサイトの公開 7 | - [デプロイメントツール](./deployment/permaweb-deploy.md) - CLI ツールと自動化 8 | - [キット](../kits/react/) - フロントエンドフレームワークのデプロイガイドとスターターキット 9 | - [Arweave のクエリ](./graphql/) - データの検索と取得 10 | -------------------------------------------------------------------------------- /src/ko/references/index.md: -------------------------------------------------------------------------------- 1 | # 참조 2 | 3 | Permaweb 개발을 위한 참조 문서, 명세 및 리소스. 4 | 5 | ## 빠른 참조 6 | 7 | - **[용어집](./glossary.md)** - 주요 용어 및 개념의 정의 8 | - **[LLMs.txt](./llms-txt.md)** - AI 어시스턴트를 위한 기계 판독형 문서 9 | 10 | ## 기술 명세 11 | 12 | - **[ANS](../tooling/specs/ans/ANS-101.md)** 13 | - **[ArFS 명세](../tooling/specs/arfs/arfs.md)** - Arweave 파일 시스템 표준 14 | 15 | ## API 참조 16 | 17 | 특정 도구 및 서비스의 API는 [도구](../tooling/index.md) 섹션을 참조하세요. 18 | -------------------------------------------------------------------------------- /src/.vuepress/client.js: -------------------------------------------------------------------------------- 1 | import { defineClientConfig } from '@vuepress/client'; 2 | 3 | import Layout from './layouts/Layout.vue'; 4 | import CollapsibleCode from './components/CollapsibleCode.vue'; 5 | 6 | export default defineClientConfig({ 7 | enhance({ app, router, siteData, languages }) { 8 | app.component('CollapsibleCode', CollapsibleCode); 9 | }, 10 | setup() {}, 11 | layouts: { Layout }, 12 | rootComponents: [] 13 | }); 14 | -------------------------------------------------------------------------------- /src/ko/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | ### ArDrive 2 | 3 | --- 4 | 5 | 폴더 또는 폴더 그룹에 대한 매니페스트는 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli)를 사용하여 `ardrive create-manifest` 명령으로 생성할 수 있습니다. 6 | 7 | 추가 자료: [ArDrive CLI 문서](https://github.com/ardriveapp/ardrive-cli) 8 | 9 | --- 10 | 11 | 또는 드라이브 내에서 새로 만들기 → 매니페스트 생성 을 선택하여 [ArDrive] 웹 앱으로 매니페스트를 생성할 수 있습니다. 12 | 13 | ![ArDrive 웹 앱 매니페스트](~@source/images/ardrive-manifests.png) 14 | -------------------------------------------------------------------------------- /src/ko/kits/react/index.md: -------------------------------------------------------------------------------- 1 | # React 스타터 키트 2 | 3 | React는 사용자 인터페이스를 구축하는 데 사용되는 인기 있는 라이브러리입니다. create-react-app과 같은 다른 인기 도구와 함께, React 프로젝트는 번들로 컴파일될 수 있습니다. 이 번들은 Permaweb에 트랜잭션으로 업로드되어 단일 페이지 애플리케이션으로 제공됩니다. 4 | 5 | React 스타터 키트 가이드: 6 | 7 | - [Vite](./turbo.md) - React + Vite, `permaweb-deploy`로 배포 8 | 9 | ::: info Permaweb 애플리케이션 제약사항 10 | 11 | - 100% 프론트엔드 애플리케이션 (서버 사이드 백엔드 없음) 12 | - 애플리케이션은 서브 경로(https://[gateway]/[TX_ID])에서 제공됩니다 13 | ::: 14 | -------------------------------------------------------------------------------- /src/zh/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | ### ArDrive 2 | 3 | --- 4 | 5 | 您可以使用 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli),通过 `ardrive create-manifest` 为一个文件夹或一组文件夹创建 manifest 文件。 6 | 7 | 进一步阅读: [ArDrive CLI Docs](https://github.com/ardriveapp/ardrive-cli) 8 | 9 | --- 10 | 11 | 或者,您也可以在 [ArDrive](https://ardrive.io) 网页应用中,进入某个 drive 后选择“New → Create manifest”来创建 manifest。 12 | 13 | ![ArDrive 网页应用 Manifest](~@source/images/ardrive-manifests.png) 14 | -------------------------------------------------------------------------------- /src/zhTW/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | ### ArDrive 2 | 3 | --- 4 | 5 | 您可以使用 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli),透過 `ardrive create-manifest` 為一個資料夾或一組資料夾建立 manifest 檔。 6 | 7 | 進一步閱讀: [ArDrive CLI Docs](https://github.com/ardriveapp/ardrive-cli) 8 | 9 | --- 10 | 11 | 或者,您也可以在 [ArDrive](https://ardrive.io) 網頁應用程式中,進入某個 drive 後選取「New → Create manifest」來建立 manifest。 12 | 13 | ![ArDrive 網頁應用 Manifest](~@source/images/ardrive-manifests.png) 14 | -------------------------------------------------------------------------------- /src/ja/kits/react/index.md: -------------------------------------------------------------------------------- 1 | # React スターターキット 2 | 3 | React はユーザーインターフェース構築に使われる人気のあるライブラリです。create-react-app のような他の一般的なツールと併せて、React プロジェクトはバンドルにコンパイルできます。このバンドルは Permaweb にトランザクションとしてアップロードでき、そこでシングルページアプリケーション(SPA)として提供されます。 4 | 5 | React スターターキットガイド: 6 | 7 | - [Vite](./turbo.md) - React + Vite、`permaweb-deploy`で公開 8 | 9 | ::: info Permaweb アプリケーションの制約 10 | 11 | - 100% フロントエンドアプリケーション(サーバーサイドのバックエンドは不可) 12 | - アプリケーションはサブパス(https://[gateway]/[TX_ID])から配信されます 13 | ::: 14 | -------------------------------------------------------------------------------- /src/ja/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | ### ArDrive 2 | 3 | --- 4 | 5 | `ardrive create-manifest` コマンドを使用して、[ArDrive CLI](https://github.com/ardriveapp/ardrive-cli) でフォルダまたは複数フォルダのグループ用のマニフェストを作成できます。 6 | 7 | さらに詳しくは: [ArDrive CLI ドキュメント](https://github.com/ardriveapp/ardrive-cli) 8 | 9 | --- 10 | 11 | または、[ArDrive](https://ardrive.io) のウェブアプリで、ドライブ内で「New」→「Create manifest」を選択してマニフェストを作成できます。 12 | 13 | ![ArDrive ウェブアプリのマニフェスト](~@source/images/ardrive-manifests.png) 14 | -------------------------------------------------------------------------------- /src/references/index.md: -------------------------------------------------------------------------------- 1 | # References 2 | 3 | Reference documentation, specifications, and resources for Permaweb development. 4 | 5 | ## Quick References 6 | 7 | - **[Glossary](./glossary.md)** - Definitions of key terms and concepts 8 | - **[LLMs.txt](./llms-txt.md)** - Machine-readable documentation for AI assistants 9 | 10 | ## Technical Specifications 11 | 12 | - **[ANS](./specs/ans/ANS-101.md)** 13 | - **[ArFS Specification](./specs/arfs/arfs.md)** - Arweave File System standard -------------------------------------------------------------------------------- /src/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | ### Arweave.app 2 | 3 | --- 4 | 5 | Uploading a directory through [Arweave.app](http://Arweave.app) will automatically create a manifest for all of the files in the directory. 6 | 7 | ![ArweaveApp Manifest Upload](~@source/images/arweaveapp-manifest.png) 8 | 9 | Alternatively, you can upload your own manifest file manually, add the following tag, and submit the transaction. 10 | 11 | ![ArweaveApp Manifest Tags](~@source/images/arweaveapp-tags.png) -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | wallet.json 2 | # Keep package-lock.json (project uses npm), ignore others 3 | 4 | # OS 5 | .DS_Store 6 | 7 | # Environment 8 | .env 9 | .env* 10 | 11 | # IDEs 12 | .vscode 13 | .claude 14 | 15 | # Node.js / Build 16 | node_modules/ 17 | npm-debug.log 18 | dist 19 | .cache 20 | .temp 21 | .yarn 22 | yarn.lock 23 | bun.lock 24 | pids 25 | logs 26 | coverage/ 27 | run 28 | .nyc_output 29 | .basement 30 | basement_dist 31 | config.local.js 32 | 33 | # Error logs 34 | *-error.log 35 | yarn-error.log -------------------------------------------------------------------------------- /src/.vuepress/composables/useContributors.js: -------------------------------------------------------------------------------- 1 | import { ref } from 'vue'; 2 | 3 | export const useContributors = () => { 4 | const contributors = ref([]); 5 | 6 | fetch( 7 | 'https://api.github.com/repos/twilson63/permaweb-cookbook/contributors?q=contributions&order=desc' 8 | ) 9 | .then((res) => { 10 | if (res.ok) return res.json(); 11 | else return []; 12 | }) 13 | .then((result) => { 14 | contributors.value = result; 15 | }); 16 | 17 | return contributors; 18 | }; 19 | -------------------------------------------------------------------------------- /src/zh/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | # Svelte 起始套件 2 | 3 | Svelte 是一个将源代码编译为 JavaScript 捆绑文件的框架,并在此过程中将框架自身从应用程序的发布产物中移除。这样与其他框架相比,它具有更小的体积。Svelte 是构建 Permaweb 应用程序的理想框架。Permaweb 应用程序建立在单页应用(Single Page Application, SPA)的原则上,但部署于 Arweave 网络,并由 Permaweb 网关分发。 4 | 5 | Svelte 起始套件指南: 6 | 7 | - [Minimal](./minimal.md) - 构建 Svelte Permaweb 应用程序所需的最小内容 8 | - [Vite](./vite.md) - Svelte、Typescript 与 Vite 9 | 10 | ::: info Permaweb 应用程序 限制 11 | 12 | - 100% 前端应用程序(不含服务器端后端) 13 | - 应用程序将从子路径提供(https://[gateway]/[TX_ID]) 14 | ::: 15 | -------------------------------------------------------------------------------- /src/zh/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | # Vue 起始套件 2 | 3 | Vue.js 是一个渐进式的 JavaScript 框架,可用于构建用户界面。与其他框架不同,它会在运行时将模板编译为 JavaScript,从而产生更小的文件体积并提升性能。Vue 非常适合构建高性能且具可扩展性的单页应用程序 (SPA),因此成为前端开发者的热门选择。 4 | 5 | Vue 起始套件 指南: 6 | 7 | **注意:** - 由于 `npm init vue@latest` 已经使用 Vite,我们没有为 Vue 额外包含 Vite 的教程。 8 | 9 | - [创建 Vue 应用程序](./create-vue.md) - 使用 Create Vue 以 TypeScript 和 Vite 高效地构建基于 Vue.js 的现代 Permaweb 应用程序 10 | 11 | ::: info Permaweb 应用程序限制 12 | 13 | - 100% 前端应用程序(不包含服务器端(后端)) 14 | - 应用程序从子路径提供服务 (https://[gateway]/[TX_ID]) 15 | ::: 16 | -------------------------------------------------------------------------------- /src/zhTW/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | # Vue 起始套件 2 | 3 | Vue.js 是一個漸進式的 JavaScript 框架,可用於構建使用者介面。與其他框架不同,它會在執行時將模板編譯為 JavaScript,從而產生更小的檔案體積並提升效能。Vue 非常適合構建高效能且具可擴展性的單頁應用程式 (SPA),因此成為前端開發者的熱門選擇。 4 | 5 | Vue 起始套件 指南: 6 | 7 | **注意:** - 由於 `npm init vue@latest` 已經使用 Vite,我們沒有為 Vue 額外包含 Vite 的教學。 8 | 9 | - [建立 Vue 應用程式](./create-vue.md) - 使用 Create Vue 以 TypeScript 和 Vite 有效率地建構基於 Vue.js 的現代 Permaweb 應用程式 10 | 11 | ::: info Permaweb 應用程式限制 12 | 13 | - 100% 前端應用程式(不含伺服器端後端) 14 | - 應用程式從子路徑提供服務 (https://[gateway]/[TX_ID]) 15 | ::: 16 | -------------------------------------------------------------------------------- /src/zhTW/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | # Svelte 起始套件 2 | 3 | Svelte 是一個將原始碼編譯為 JavaScript 捆綁檔的框架,並在此過程中將框架自身從應用程式的發佈檔中移除。這使得其相較於其他框架具有更小的體積。Svelte 是打造 Permaweb 應用程式的理想框架。Permaweb 應用程式建立在單頁應用程式(Single Page Application, SPA)的原則上,但部署於 Arweave 網路,並由 Permaweb gateways 分發。 4 | 5 | Svelte 起始套件指南: 6 | 7 | - [Minimal](./minimal.md) - 建置 Svelte Permaweb 應用程式所需的最小內容 8 | - [Vite](./vite.md) - Svelte、Typescript 與 Vite 9 | 10 | ::: info Permaweb 應用程式 限制 11 | 12 | - 100% 前端應用程式(不含伺服器端後端) 13 | - 應用程式會從子路徑提供(https://[gateway]/[TX_ID]) 14 | ::: 15 | -------------------------------------------------------------------------------- /src/zh/fundamentals/decentralized-computing/index.md: -------------------------------------------------------------------------------- 1 | # 去中心化计算 2 | 3 | 协议本身并未直接内建任何执行计算的机制——然而,这并不表示开发者无法在 Arweave 上创建并存储智能合约。 4 | 5 | [AO](https://ao.arweave.net) 是一个建立在 Arweave 之上的去中心化运算网络。通过使用 Arweave 作为存储智能合约状态与用户交互的状态层,可以构建复杂的去中心化应用程序。 6 | 7 | 说明 AO 的运行原理与如何使用它来开发应用程序并非本手册的范围,但若想进一步学习,仍有大量资源可用于入门。 8 | 9 | ## 来源与进一步阅读 10 | 11 | - [AO](https://ao.arweave.net) 12 | - [AO 实现手册](https://cookbook_ao.arweave.net) 13 | - [HyperBEAM GitHub 仓库](https://github.com/permaweb/HyperBEAM) 14 | - [HyperBEAM 文档](https://hyperbeam.arweave.net) 15 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/decentralized-computing/index.md: -------------------------------------------------------------------------------- 1 | # 去中心化計算 2 | 3 | 協定本身並未直接內建任何執行計算的機制——然而,這並不表示開發者無法建立並儲存在 Arweave 上的智慧合約。 4 | 5 | [AO](https://ao.arweave.net) 是一個建立在 Arweave 之上的去中心化運算網路。透過使用 Arweave 作為儲存智慧合約狀態與使用者互動的狀態層,可以建構複雜的去中心化應用程式。 6 | 7 | 說明 AO 的運作原理與如何使用它來開發應用程式並非本手冊的範圍,但若想進一步學習,仍有大量資源可供入門。 8 | 9 | ## 來源與進一步閱讀 10 | 11 | - [AO](https://ao.arweave.net) 12 | - [AO 實作手冊](https://cookbook_ao.arweave.net) 13 | - [HyperBEAM GitHub 儲存庫](https://github.com/permaweb/HyperBEAM) 14 | - [HyperBEAM 文件](https://hyperbeam.arweave.net) 15 | -------------------------------------------------------------------------------- /src/id/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | ### Arweave.app 6 | 7 | --- 8 | 9 | Mengunggah sebuah direktori melalui [Arweave.app](http://Arweave.app) akan secara otomatis membuat manifest untuk semua file dalam direktori tersebut. 10 | 11 | ![Pengunggahan Manifest ArweaveApp](~@source/images/arweaveapp-manifest.png) 12 | 13 | Atau, Anda dapat mengunggah file manifest sendiri secara manual, tambahkan tag berikut, dan kirimkan transaksi. 14 | 15 | ![Tag Manifest ArweaveApp](~@source/images/arweaveapp-tags.png) -------------------------------------------------------------------------------- /src/.vuepress/styles/bootstrap.scss: -------------------------------------------------------------------------------- 1 | @import 'bootstrap/scss/functions'; 2 | 3 | $grid-breakpoints: ( 4 | xs: 0, 5 | sm: 576px, 6 | md: 768px, 7 | lg: 992px, 8 | xl: 1100px, 9 | xxl: 1400px 10 | ); 11 | $container-max-widths: ( 12 | sm: 540px, 13 | md: 720px, 14 | lg: 960px, 15 | xl: 1360px, 16 | xxl: 1440px 17 | ); 18 | $grid-gutter-width: 40px; 19 | 20 | @import 'bootstrap/scss/variables'; 21 | @import 'bootstrap/scss/maps'; 22 | @import 'bootstrap/scss/mixins'; 23 | @import 'bootstrap/scss/root'; 24 | @import 'bootstrap/scss/bootstrap-grid'; -------------------------------------------------------------------------------- /src/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | ### ArDrive 2 | 3 | --- 4 | 5 | You can create a manifest for a folder or group of folders with `ardrive create-manifest` using the [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli). 6 | 7 | Further Reading: [ArDrive CLI Docs](https://github.com/ardriveapp/ardrive-cli) 8 | 9 | --- 10 | 11 | Alternatively, you can create a manifest using the [ArDrive](https://ardrive.io) web app by selecting New → Create manifest while inside of a drive. 12 | 13 | ![ArDrive Web App Manifest](~@source/images/ardrive-manifests.png) -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/chore.yml: -------------------------------------------------------------------------------- 1 | name: Chore 2 | description: Request maintenance or cleanup tasks 3 | labels: ['chore'] 4 | title: "[Chore]: " 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Please describe the maintenance task. 10 | - type: textarea 11 | id: description 12 | attributes: 13 | label: Chore description 14 | validations: 15 | required: true 16 | - type: textarea 17 | id: context 18 | attributes: 19 | label: Additional context 20 | validations: 21 | required: false 22 | -------------------------------------------------------------------------------- /src/es/guides/deploying-manifests/arweave-app.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | ### Arweave.app 5 | 6 | --- 7 | 8 | Al subir un directorio a través de [Arweave.app](http://Arweave.app), se creará automáticamente un manifiesto para todos los archivos en el directorio. 9 | 10 | ![ArweaveApp Carga de Manifiesto](~@source/images/arweaveapp-manifest.png) 11 | 12 | Alternativamente, puedes subir tu propio archivo de manifiesto manualmente, agregar la etiqueta siguiente y enviar la transacción. 13 | 14 | ![ArweaveApp Etiquetas de Manifiesto](~@source/images/arweaveapp-tags.png) -------------------------------------------------------------------------------- /src/id/guides/deploying-manifests/deploying-manifests.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Creating and Deploying Manifests 6 | 7 | --- 8 | 9 | Panduan ini menjelaskan cara membuat dan mendeploy manifest path secara manual. 10 | 11 | Halaman inti konsep manifest path memiliki informasi lebih lanjut tentang apa itu manifest dan mengapa mereka bisa berguna untuk proyek Anda. 12 | 13 | Jika Anda mengikuti panduan ini untuk mendeploy manifest path, itu harus mengikuti struktur manifest yang dijelaskan di halaman [konsep inti](https://cookbook.arweave.net/concepts/manifests.html). -------------------------------------------------------------------------------- /src/es/guides/deploying-manifests/deploying-manifests.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Creación e Implementación de Manifiestos 5 | 6 | --- 7 | 8 | Esta guía explica cómo crear e implementar un manifiesto de ruta de forma manual. 9 | 10 | La página de conceptos fundamentales de los manifiestos de ruta ofrece más información sobre qué son los manifiestos y por qué podrían ser útiles para tu proyecto. 11 | 12 | Si sigues esta guía para implementar un manifiesto de ruta, deberá seguir la estructura de manifiesto presentada en la página de [conceptos fundamentales](https://cookbook.arweave.net/concepts/manifests.html). -------------------------------------------------------------------------------- /src/ko/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | # Svelte 스타터 키트 2 | 3 | Svelte는 자바스크립트 번들로 컴파일되는 프레임워크로, 이 과정에서 애플리케이션 배포물에서 프레임워크가 제거됩니다. 그 결과 다른 프레임워크보다 훨씬 더 작은 번들 크기를 얻을 수 있습니다. Svelte는 Permaweb 애플리케이션에 적합한 프레임워크입니다. Permaweb 애플리케이션은 단일 페이지 애플리케이션(Single Page Application, SPA)의 원칙으로 구축되지만 Arweave 네트워크 상에 존재하며 Permaweb 게이트웨이에 의해 배포됩니다. 4 | 5 | Svelte 스타터 키트 가이드: 6 | 7 | - [최소 구성](./minimal.md) - Svelte Permaweb 애플리케이션을 빌드하는 데 필요한 최소 구성 8 | - [Vite](./vite.md) - Svelte, Typescript 및 Vite 9 | 10 | ::: info Permaweb 애플리케이션 제약 사항 11 | 12 | - 100% 프론트엔드 애플리케이션 (서버 사이드 백엔드 없음) 13 | - 애플리케이션은 서브 경로(https://[gateway]/[TX_ID])에서 제공됩니다 14 | ::: 15 | -------------------------------------------------------------------------------- /src/id/guides/using-vue.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Menggunakan Vue di Markdown 6 | 7 | ## Pembatasan Akses API Browser 8 | 9 | Karena aplikasi VuePress dirrender oleh server dalam Node.js saat menghasilkan build statis, penggunaan Vue harus sesuai dengan [persyaratan kode universal](https://ssr.vuejs.org/en/universal.html). Singkatnya, pastikan hanya mengakses API Browser / DOM dalam hook `beforeMount` atau `mounted`. 10 | 11 | Jika Anda menggunakan atau mendemo komponen yang tidak ramah terhadap SSR (misalnya mengandung direktif kustom), Anda dapat melingkupi mereka dalam komponen bawaan ``: 12 | 13 | ## 14 | -------------------------------------------------------------------------------- /src/ja/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | # Svelte スターターキット 2 | 3 | Svelte は JavaScript バンドルにコンパイルされ、その過程でアプリの配布物からフレームワーク自体を取り除きます。これにより、他のフレームワークよりもはるかに小さなフットプリントになります。Svelte は Permaweb アプリケーションに最適なフレームワークです。Permaweb アプリケーションはシングルページアプリケーション(Single Page Application, SPA)の原則に基づいて構築されますが、Arweave ネットワーク上にホストされ、Permaweb ゲートウェイによって配信されます。 4 | 5 | Svelte スターターキット ガイド: 6 | 7 | - [Minimal](./minimal.md) - Svelte Permaweb アプリを構築するために必要な最小限のセットアップ 8 | - [Vite](./vite.md) - Svelte、TypeScript、Vite 9 | 10 | ::: info Permaweb アプリケーションの制約 11 | 12 | - 100% フロントエンドアプリケーション(サーバーサイドのバックエンドは使用しない) 13 | - アプリケーションはサブパスから配信される (https://[gateway]/[TX_ID]) 14 | ::: 15 | -------------------------------------------------------------------------------- /src/ko/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | # Vue 스타터 키트 2 | 3 | Vue.js는 사용자 인터페이스를 구축할 수 있게 해주는 점진적 JavaScript 프레임워크입니다. 다른 프레임워크와 달리 템플릿을 런타임 동안 JavaScript로 컴파일하여 파일 크기가 작아지고 성능이 빨라집니다. Vue는 성능이 우수하고 확장 가능한 싱글 페이지 애플리케이션(SPA)을 구축하는 데 이상적이며 프론트엔드 개발자들 사이에서 인기 있는 선택입니다. 4 | 5 | Vue 스타터 키트 가이드: 6 | 7 | **참고:** - `npm init vue@latest`가 이미 vite를 사용하므로 Vue용 vite 가이드는 포함하지 않았습니다. 8 | 9 | - [Create Vue 앱 만들기](./create-vue.md) - Create Vue를 사용하여 Vue.js 기반의 TypeScript 및 Vite를 사용하는 모던 permaweb 애플리케이션을 효율적으로 빌드합니다 10 | 11 | ::: info Permaweb 애플리케이션 제약사항 12 | 13 | - 100% 프론트엔드 애플리케이션 (서버 측 백엔드 없음) 14 | - 애플리케이션은 서브 경로에서 제공됩니다 (https://[gateway]/[TX_ID]) 15 | ::: 16 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/documentation.yml: -------------------------------------------------------------------------------- 1 | name: Documentation 2 | description: Suggest improvements or additions to documentation 3 | labels: ['documentation'] 4 | title: "[Docs]: " 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Help us improve the docs! 10 | - type: textarea 11 | id: docs 12 | attributes: 13 | label: Documentation request 14 | description: Summarize the change or addition. 15 | validations: 16 | required: true 17 | - type: textarea 18 | id: context 19 | attributes: 20 | label: Additional context 21 | validations: 22 | required: false 23 | -------------------------------------------------------------------------------- /src/ja/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | # Vue スターターキット 2 | 3 | Vue.js は、ユーザーインターフェースの構築を可能にするプログレッシブな JavaScript フレームワークです。他のフレームワークと異なり、テンプレートを実行時に JavaScript にコンパイルするため、ファイルサイズが小さく、パフォーマンスが向上します。Vue は高性能でスケーラブルなシングルページアプリケーション(SPA)の構築に最適であり、フロントエンド開発者の間で人気があります。 4 | 5 | Vue スターターキット ガイド: 6 | 7 | **注意:** - `npm init vue@latest` が既に `vite` を使用しているため、Vue 向けの別途 Vite ガイドは含めていません。 8 | 9 | - [Create Vue アプリ](./create-vue.md) - Create Vue を使用して、TypeScript と Vite を組み合わせた Vue.js ベースのモダンな Permaweb アプリケーションを効率的に構築します。 10 | 11 | ::: info Permaweb アプリケーションの制約 12 | 13 | - 100% フロントエンドアプリケーション(サーバーサイドのバックエンド無し) 14 | - アプリケーションはサブパス(`https://[gateway]/[TX_ID]`)から配信されます 15 | ::: 16 | -------------------------------------------------------------------------------- /src/guides/index.md: -------------------------------------------------------------------------------- 1 | # Guides 2 | 3 | Step-by-step tutorials and practical guides for building on the Permaweb. 4 | 5 | - [Generating a Wallet](./wallets-and-keyfiles/creating-a-wallet.md) - How to programatically create a wallet 6 | - [Posting Transactions](./posting-transactions/arweave-js.md) - How to send data to Arweave 7 | - [Deploying Manifests](./deploying-manifests/ardrive.md) - Publishing applications and websites 8 | - [Deployment Tools](./deployment/permaweb-deploy.md) - CLI tools and automation 9 | - [Kits](../kits/react/) - Frontend framework deplyoment guides and starter kits 10 | - [Querying Arweave](./graphql/) - Finding and retrieving data 11 | -------------------------------------------------------------------------------- /src/ja/fundamentals/decentralized-computing/index.md: -------------------------------------------------------------------------------- 1 | # 分散型コンピューティング 2 | 3 | プロトコル自体に計算を直接実行するための組み込みの仕組みはありません。ただし、これは開発者が Arweave 上に保存されるスマートコントラクトを作成できないという意味ではありません。 4 | 5 | [AO](https://ao.arweave.net) は Arweave 上に構築された分散型コンピュートネットワークです。Arweave をスマートコントラクトの状態やユーザーの相互作用を保存するステートレイヤーとして利用することで、高度な分散型アプリケーションを構築することが可能になります。 6 | 7 | AO の動作やそれを使ったアプリケーションの構築方法の説明は本クックブックの範囲外ですが、詳しく学びたい場合に役立つリソースは多数あります。 8 | 9 | ## 情報源と参考文献 10 | 11 | - [AO](https://ao.arweave.net) 12 | - [AO Cookbook](https://cookbook_ao.arweave.net) 13 | - [HyperBEAM GitHub Repository](https://github.com/permaweb/HyperBEAM) 14 | - [HyperBEAM Documentation](https://hyperbeam.arweave.net) 15 | -------------------------------------------------------------------------------- /src/zh/archive/permaweb.md: -------------------------------------------------------------------------------- 1 | # 欢迎来到 Permaweb(永久网) 2 | 3 | Permaweb 类似传统网络,但具有永久性。开发者在 Permaweb 的服务之上建立应用程序与网站,这些内容会永远存在于 Arweave 上。 4 | 5 | ![Permaweb(永久网)](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 6 | 7 | Permaweb 的优势: 8 | 9 | 1. 网站与应用程序具有永久性,你不必担心它们会消失(即使支持它们的团队不再维护) 10 | 1. 应用程序开发者必须确保每个新版本实际带来价值,否则用户为何要弃用旧版本? 11 | 1. 由于所有 Permaweb 应用程序共享名为 Arweave 的存储层,它们可以相互组合彼此的数据 12 | 1. 你的数据由你的钱包拥有,并能在不同应用程序之间随你移动 13 | 14 | ## 比较:传统网络 vs Permaweb 15 | 16 | ![Permaweb vs 传统网络](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 17 | 18 | 欲了解更多有关 Permaweb 的信息,请参阅 [Medium 文章](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb)。 19 | -------------------------------------------------------------------------------- /src/zhTW/archive/permaweb.md: -------------------------------------------------------------------------------- 1 | # 歡迎來到 Permaweb(永久網) 2 | 3 | Permaweb 類似傳統網路,但具有永久性。開發者在 Permaweb 的服務之上建立應用程式與網站,這些內容會永遠存在於 Arweave 上。 4 | 5 | ![Permaweb(永久網)](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 6 | 7 | Permaweb 的優勢: 8 | 9 | 1. 網站與應用程式為永久性,你不必擔心它們會消失(即使支援它們的團隊不再維護) 10 | 1. 應用程式開發者必須確保每個新版本實際帶來價值,否則使用者為何要棄用舊版本? 11 | 1. 由於所有 Permaweb 應用程式共用名為 Arweave 的儲存層,它們可以相互組合彼此的資料 12 | 1. 你的資料由你的錢包擁有,並能在不同應用程式之間隨你移動 13 | 14 | ## 比較:傳統網路 vs Permaweb 15 | 16 | ![Permaweb vs 傳統網路](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 17 | 18 | 欲瞭解更多有關 Permaweb 的資訊,請參閱 [Medium 文章](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb)。 19 | -------------------------------------------------------------------------------- /src/es/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | ### ArDrive 5 | 6 | --- 7 | 8 | Puedes crear un manifiesto para una carpeta o un grupo de carpetas con `ardrive create-manifest` utilizando la [CLI de ArDrive](https://github.com/ardriveapp/ardrive-cli). 9 | 10 | Lectura adicional: [Documentación de la CLI de ArDrive](https://github.com/ardriveapp/ardrive-cli) 11 | 12 | --- 13 | 14 | Alternativamente, puedes crear un manifiesto utilizando la aplicación web [ArDrive](https://ardrive.io) seleccionando Nuevo → Crear manifiesto mientras estás dentro de una unidad. 15 | 16 | ![Manifiesto de la aplicación web de ArDrive](~@source/images/ardrive-manifests.png) -------------------------------------------------------------------------------- /src/id/guides/deploying-manifests/ardrive.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | ### ArDrive 6 | 7 | --- 8 | 9 | Anda dapat membuat sebuah manifest untuk sebuah folder atau sekelompok folder dengan menggunakan `ardrive create-manifest` menggunakan [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli). 10 | 11 | Baca lebih lanjut: [Dokumentasi ArDrive CLI](https://github.com/ardriveapp/ardrive-cli) 12 | 13 | --- 14 | 15 | Sebagai alternatif, Anda dapat membuat sebuah manifest menggunakan aplikasi web [ArDrive](https://ardrive.io) dengan memilih New → Create manifest saat berada dalam sebuah drive. 16 | 17 | ![Manifest Aplikasi Web ArDrive](~@source/images/ardrive-manifests.png) -------------------------------------------------------------------------------- /src/ko/fundamentals/decentralized-computing/index.md: -------------------------------------------------------------------------------- 1 | # 탈중앙화 컴퓨팅 2 | 3 | 프로토콜 자체에는 직접 계산을 수행하는 고유한 메커니즘이 내장되어 있지 않습니다 — 그러나 이것이 개발자가 Arweave에 저장되는 스마트 컨트랙트를 만들 수 없다는 뜻은 아닙니다. 4 | 5 | [AO](https://ao.arweave.net)는 Arweave 위에 구축된 탈중앙화 컴퓨팅 네트워크입니다. Arweave를 스마트 컨트랙트 상태와 사용자 상호작용을 저장하는 상태 레이어로 사용함으로써 정교한 탈중앙화 애플리케이션을 구축할 수 있습니다. 6 | 7 | AO가 어떻게 작동하는지, 그리고 이를 사용해 애플리케이션을 구축하는 방법을 설명하는 것은 이 쿠크북의 범위에 포함되지 않습니다. 그러나 더 알아보고 싶다면 시작할 수 있는 자료는 충분히 존재합니다. 8 | 9 | ## 출처 및 추가 참고자료 10 | 11 | - [AO](https://ao.arweave.net) 12 | - [AO 쿠크북](https://cookbook_ao.arweave.net) 13 | - [HyperBEAM GitHub 저장소](https://github.com/permaweb/HyperBEAM) 14 | - [HyperBEAM 문서](https://hyperbeam.arweave.net) 15 | -------------------------------------------------------------------------------- /src/zh/fundamentals/index.md: -------------------------------------------------------------------------------- 1 | # 基础 2 | 3 | 理解 Arweave 与 Permaweb 的基本概念,对于构建健全的去中心化应用程序至关重要。 4 | 5 | ## 身份与验证 6 | 7 | - **[钱包与密钥](./wallets-and-keyfiles/index.md)** 8 | 9 | ## 交易 10 | 11 | - **[交易](./transactions/index.md)** 12 | - [发布交易](./transactions/post-transactions.md) 13 | - [交易捆绑](./transactions/bundles.md) 14 | - [交易类型](./transactions/transaction-types.md) 15 | - [路径清单](./transactions/manifests.md) 16 | 17 | ## 网关与访问 18 | 19 | - **[访问 Arweave 数据](./gateways/index.md)** 20 | - **[数据检索方法](./gateways/data-retrieval.md)** 21 | - **[查询与 GraphQL](./gateways/graphql.md)** - 如何查找与检索数据 22 | 23 | ## 去中心化计算 24 | 25 | - **[去中心化计算](./decentralized-computing/index.md)** 26 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/index.md: -------------------------------------------------------------------------------- 1 | # 基礎 2 | 3 | 理解 Arweave 與 Permaweb 的基本概念,對於構建健全的去中心化應用程式至關重要。 4 | 5 | ## 身份與驗證 6 | 7 | - **[錢包與金鑰](./wallets-and-keyfiles/index.md)** 8 | 9 | ## 交易 10 | 11 | - **[交易](./transactions/index.md)** 12 | - [發佈交易](./transactions/post-transactions.md) 13 | - [交易捆綁](./transactions/bundles.md) 14 | - [交易類型](./transactions/transaction-types.md) 15 | - [路徑清單](./transactions/manifests.md) 16 | 17 | ## 閘道與存取 18 | 19 | - **[存取 Arweave 資料](./gateways/index.md)** 20 | - **[資料擷取方法](./gateways/data-retrieval.md)** 21 | - **[查詢與 GraphQL](./gateways/graphql.md)** - 如何查找與擷取資料 22 | 23 | ## 去中心化運算 24 | 25 | - **[去中心化運算](./decentralized-computing/index.md)** 26 | -------------------------------------------------------------------------------- /src/ja/fundamentals/index.md: -------------------------------------------------------------------------------- 1 | # 基本 2 | 3 | Arweave と Permaweb の基本概念を理解することは、堅牢な分散型アプリケーションを構築するために不可欠です。 4 | 5 | ## アイデンティティと認証 6 | 7 | - **[ウォレットと鍵ファイル](./wallets-and-keyfiles/index.md)** 8 | 9 | ## トランザクション 10 | 11 | - **[トランザクション](./transactions/index.md)** 12 | - [バンドル](./transactions/bundles.md) 13 | - [トランザクションタグ](./transactions/tags.md) 14 | - [マニフェストとパス解決](./transactions/manifests.md) 15 | 16 | ## Arweave データへのアクセス 17 | 18 | - **[ゲートウェイ](./gateways/index.md)** 19 | - **[データ取得方法](./gateways/data-retrieval.md)** 20 | - **[クエリと GraphQL](./gateways/graphql.md)** - データの検索と取得方法 21 | 22 | ## 分散型コンピューティング 23 | 24 | - **[分散型コンピューティング](./decentralized-computing/index.md)** 25 | -------------------------------------------------------------------------------- /src/es/guides/using-vue.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Uso de Vue en Markdown 5 | 6 | ## Restricciones de acceso a la API del navegador 7 | 8 | Debido a que las aplicaciones de VuePress se renderizan en el servidor con Node.js al generar compilaciones estáticas, cualquier uso de Vue debe cumplir con los [requisitos de código universal](https://ssr.vuejs.org/es/universal.html). En resumen, asegúrate de solo acceder a las API del navegador / DOM en los hooks `beforeMount` o `mounted`. 9 | 10 | Si estás utilizando o demostrando componentes que no son compatibles con SSR (por ejemplo, aquellos que contienen directivas personalizadas), puedes envolverlos dentro del componente incorporado ``. -------------------------------------------------------------------------------- /src/.vuepress/components/I18NRouterLink.vue: -------------------------------------------------------------------------------- 1 | 23 | 24 | 29 | -------------------------------------------------------------------------------- /src/ko/archive/permaweb.md: -------------------------------------------------------------------------------- 1 | # 퍼마웹에 오신 것을 환영합니다 2 | 3 | 퍼마웹은 웹과 비슷하지만 영구적입니다. 개발자들은 퍼마웹 서비스를 기반으로 앱과 사이트를 구축하여 Arweave에 영구적으로 존재하도록 합니다. 4 | 5 | ![퍼마웹](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 6 | 7 | 퍼마웹의 장점. 8 | 9 | 1. 사이트와 앱이 영구적이므로 지원 팀이 떠나더라도 사라질 걱정을 할 필요가 없습니다. 10 | 1. 앱 개발자는 각 새 버전이 실제로 가치를 추가하는지 확인해야 합니다. 그렇지 않다면 사용자가 굳이 이전 버전을 떠날 이유가 없습니다. 11 | 1. 모든 퍼마웹 앱은 공통 저장 계층인 Arweave를 공유하므로 서로의 데이터를 조합할 수 있습니다. 12 | 1. 데이터는 사용자의 지갑이 소유하며 앱 간에 따라다닐 수 있습니다. 13 | 14 | ## 전통적 웹 vs 퍼마웹 비교 15 | 16 | ![퍼마웹 대 전통 웹](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 17 | 18 | 퍼마웹에 대한 자세한 내용은 [Medium 게시물](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb)을 확인하세요. 19 | -------------------------------------------------------------------------------- /src/zh/references/specs/arfs/schema-diagrams.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "privacy.md" 3 | --- 4 | 5 | ## Schema 图示 6 | 7 | 下列图示显示了 Drive、Folder 与 File 实体 Schema 的完整示例。 8 | 9 | ### 公开 Drive 10 | 11 | 12 |
公开 Drive Schema
13 | 14 | ### 私人 Drive 15 | 16 | 17 |
私人 Drive Schema
18 | 19 | Arweave GQL 标签字节限制为 `2048`。Data JSON 的自定义元数据没有既定上限,但数据越多会导致上传成本增加。 20 | -------------------------------------------------------------------------------- /src/zhTW/references/specs/arfs/schema-diagrams.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "privacy.md" 3 | --- 4 | 5 | ## Schema 圖示 6 | 7 | 下列圖示顯示了 Drive、Folder 與 File 實體 Schema 的完整範例。 8 | 9 | ### 公開 Drive 10 | 11 | 12 |
公開 Drive Schema
13 | 14 | ### 私人 Drive 15 | 16 | 17 |
私人 Drive Schema
18 | 19 | Arweave GQL 標籤位元組限制為 `2048`。Data JSON 的自訂元資料沒有既定上限,但資料越多會導致上傳成本增加。 20 | -------------------------------------------------------------------------------- /src/ja/archive/permaweb.md: -------------------------------------------------------------------------------- 1 | # Permaweb へようこそ 2 | 3 | Permaweb はウェブに似ていますが、永続的です。開発者は Permaweb サービスの上に構築して、Arweave 上に永久に存在するアプリやサイトを作成します。 4 | 5 | ![Permaweb](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 6 | 7 | Permaweb の利点。 8 | 9 | 1. サイトやアプリは永続的で、消えてしまうことを心配する必要がありません(サポートするチームが離れても)。 10 | 1. アプリ開発者は、各新バージョンが実際に価値を追加していることを確認する必要があります。そうでなければ、なぜ既存のバージョンを切り替えるのでしょうか。 11 | 1. すべての Permaweb アプリは共通のストレージ層である Arweave を共有しているため、互いのデータと連携できます。 12 | 1. データはあなたのウォレットが所有しており、アプリ間であなたに付随して利用できます。 13 | 14 | ## 従来の Web と Permaweb の比較 15 | 16 | ![Permaweb と 従来Webの比較](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 17 | 18 | Permaweb の詳細については、[Medium の記事](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb)を参照してください。 19 | -------------------------------------------------------------------------------- /src/ja/references/specs/arfs/schema-diagrams.md: -------------------------------------------------------------------------------- 1 | --- 2 | 前のページ: "privacy.md" 3 | --- 4 | 5 | ## スキーマ図 6 | 7 | 以下の図は、Drive、Folder、File エンティティのスキーマの完全な例を示します。 8 | 9 | ### 公開 Drive 10 | 11 | 12 |
公開 Drive スキーマ
13 | 14 | ### 非公開 Drive 15 | 16 | 17 |
非公開 Drive スキーマ
18 | 19 | Arweave GQL タグのバイト制限は `2048` に制限されています。Data JSON のカスタムメタデータには決められた上限はありませんが、データが多いほどアップロードコストは増加します。 20 | -------------------------------------------------------------------------------- /src/zh/archive/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Permaweb 实用手册 - 归档 3 | --- 4 | 5 | # 归档 6 | 7 | 下列概念与指南已被弃用并移至此归档。 8 | 9 | ## 概念 10 | 11 | - [SmartWeave](./concepts/smartweave.md) 12 | - [利润分享代币 (PSTs)](./concepts/psts.md) 13 | - [原子代币 (Atomic Tokens)](./concepts/atomic-tokens.md) 14 | 15 | ## 指南 16 | 17 | ### SmartWeave 18 | 19 | - [SmartWeave 概念](./concepts/smartweave.md) 20 | 21 | ### Warp SDK 22 | 23 | - [Warp 介绍](./guides/smartweave/warp/intro.md) 24 | - [部署合约](./guides/smartweave/warp/deploying-contracts.md) 25 | - [读取状态](./guides/smartweave/warp/readstate.md) 26 | - [写入交互](./guides/smartweave/warp/write-interactions.md) 27 | - [合约演化](./guides/smartweave/warp/evolve.md) 28 | 29 | ### 原子代币 (Atomic Tokens) 30 | 31 | - [原子代币 介绍](./guides/atomic-tokens/intro.md) 32 | -------------------------------------------------------------------------------- /src/zhTW/archive/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Permaweb 實用手冊 - 歸檔 3 | --- 4 | 5 | # 歸檔 6 | 7 | 下列概念與指南已被棄用並移至此歸檔。 8 | 9 | ## 概念 10 | 11 | - [SmartWeave](./concepts/smartweave.md) 12 | - [利潤分享代幣 (PSTs)](./concepts/psts.md) 13 | - [原子代幣 (Atomic Tokens)](./concepts/atomic-tokens.md) 14 | 15 | ## 指南 16 | 17 | ### SmartWeave 18 | 19 | - [SmartWeave 概念](./concepts/smartweave.md) 20 | 21 | ### Warp SDK 22 | 23 | - [Warp 介紹](./guides/smartweave/warp/intro.md) 24 | - [部署合約](./guides/smartweave/warp/deploying-contracts.md) 25 | - [讀取狀態](./guides/smartweave/warp/readstate.md) 26 | - [寫入互動](./guides/smartweave/warp/write-interactions.md) 27 | - [合約演化](./guides/smartweave/warp/evolve.md) 28 | 29 | ### 原子代幣 (Atomic Tokens) 30 | 31 | - [原子代幣 介紹](./guides/atomic-tokens/intro.md) 32 | -------------------------------------------------------------------------------- /src/ja/archive/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Permaweb クックブック - アーカイブ 3 | --- 4 | 5 | # アーカイブ 6 | 7 | 以下の概念およびガイドは非推奨となり、アーカイブに移動しました。 8 | 9 | ## 概念 10 | 11 | - [SmartWeave](./concepts/smartweave.md) 12 | - [Profit Sharing Tokens (PSTs)](./concepts/psts.md) 13 | - [Atomic Tokens](./concepts/atomic-tokens.md) 14 | 15 | ## ガイド 16 | 17 | ### SmartWeave 18 | 19 | - [SmartWeave の概念](./concepts/smartweave.md) 20 | 21 | ### Warp SDK 22 | 23 | - [Warp 入門](./guides/smartweave/warp/intro.md) 24 | - [コントラクトのデプロイ](./guides/smartweave/warp/deploying-contracts.md) 25 | - [ステートの読み取り](./guides/smartweave/warp/readstate.md) 26 | - [書き込みインタラクション](./guides/smartweave/warp/write-interactions.md) 27 | - [コントラクトの進化](./guides/smartweave/warp/evolve.md) 28 | 29 | ### Atomic Tokens 30 | 31 | - [Atomic Tokens 入門](./guides/atomic-tokens/intro.md) 32 | -------------------------------------------------------------------------------- /src/id/kits/react/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # React Starter Kits 6 | 7 | React adalah sebuah library populer yang digunakan untuk membangun antarmuka pengguna. Bersama dengan alat-alat populer lainnya seperti create-react-app, sebuah proyek React dapat dikompilasi menjadi bundel. Bundel ini dapat diunggah sebagai transaksi ke permaweb di mana ia akan berfungsi sebagai aplikasi satu halaman. 8 | 9 | Panduan Memulai React: 10 | 11 | * [Vite](./vite.md) - memanfaatkan Vite untuk membangun aplikasi React di permaweb 12 | * [Create React App](./create-react-app.md) - memanfaatkan Create React App untuk membangun aplikasi React di permaweb 13 | 14 | ::: info Batasan Aplikasi Permaweb 15 | * Aplikasi sepenuhnya berbasis front-end (Tanpa Backend Server-Side) 16 | * Aplikasi disajikan dari sub-path (https://[gateway]/[TX_ID]) 17 | ::: -------------------------------------------------------------------------------- /src/zh/getting-started/index.md: -------------------------------------------------------------------------------- 1 | # 入门指南 2 | 3 | 欢迎使用 Permaweb 教程手册!本手册包含概念、指南与代码片段,帮助您开始在 Arweave 上构建去中心化应用程序。 4 | 5 | ## 什么是 Permaweb? 6 | 7 | Permaweb(永久网)是一个全球性的、由社区拥有的网络,任何人都可以为其做出贡献或领取报酬以协助维护。它构建于 Arweave 之上,Arweave 是一个去中心化的存储网络,用以永久存储数据。 8 | 9 | 在 Arweave 上创建与部署应用程序的流程与创建传统应用程序类似——主要区别在于,上传到 Arweave 的应用程序具有不可变、更去中心化,且无法被单独移除的特性。这些特性可能使在 Arweave 上开发具有挑战性,但也非常有价值。 10 | 11 | 本手册旨在让学习与开发流程更简单。 12 | 13 | ## 开始使用 14 | 15 | 下一章的 [快速入门指南](./quick-starts/hw-cli.md) 旨在简要说明如何使用 CLI 工具与代码,将一个“Hello World”示例应用部署到 Arweave。 16 | 17 | ## 后续步骤 18 | 19 | 完成入门指南后,您可以进一步探索: 20 | 21 | - [基础](../fundamentals/index.md) 以了解 Arweave 的运作原理 22 | - [指南](../guides/index.md) 获取逐步教学 23 | - [参考资料](../references/index.md) 阅读 Permaweb 的参考文件 24 | 25 | ## 参与贡献 26 | 27 | 若您有意为本手册贡献内容,请在 GitHub 仓库中阅读贡献指南,链接在此:[这里](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md)。 28 | -------------------------------------------------------------------------------- /src/references/specs/arfs/schema-diagrams.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "privacy.md" 3 | --- 4 | 5 | ## Schema Diagrams 6 | 7 | The following diagrams show complete examples of Drive, Folder, and File entity Schemas. 8 | 9 | ### Public Drive 10 | 11 |
Public Drive Schema
12 | 13 | ### Private Drive 14 | 15 |
Private Drive Schema
16 | 17 | Arweave GQL Tag Byte Limit is restricted to `2048`. There is no determined limit on Data JSON custom metadata, though more data results in a higher upload cost. -------------------------------------------------------------------------------- /src/fundamentals/index.md: -------------------------------------------------------------------------------- 1 | # Fundamentals 2 | 3 | Understanding the fundamental concepts of Arweave and the Permaweb is essential for building robust decentralized applications. 4 | 5 | ## Identity and authentication 6 | 7 | - **[Wallets & Keys](./wallets-and-keyfiles/index.md)** 8 | 9 | ## Transactions 10 | 11 | - **[Transactions](./transactions/index.md)** 12 | - [Bundles](./transactions/bundles.md) 13 | - [Transaction Tags](./transactions/tags.md) 14 | - [Manifests & Path Resolution](./transactions/manifests.md) 15 | 16 | ## Accessing Arweave Data 17 | 18 | - **[Gateways](./gateways/index.md)** 19 | - **[Data Retrieval Methods](./gateways/data-retrieval.md)** 20 | - **[Querying & GraphQL](./gateways/graphql.md)** - How to find and retrieve data 21 | 22 | ## Decentralized Computing 23 | 24 | - **[Decentralized Computing](./decentralized-computing/index.md)** 25 | -------------------------------------------------------------------------------- /src/ko/archive/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Permaweb 요리책 - 아카이브 3 | --- 4 | 5 | # 아카이브 6 | 7 | 다음 개념 및 가이드는 사용 중단(deprecated)되어 아카이브로 이동되었습니다. 8 | 9 | ## 개념 10 | 11 | - [SmartWeave](./concepts/smartweave.md) 12 | - [Profit Sharing Tokens (PSTs)](./concepts/psts.md) 13 | - [Atomic Tokens](./concepts/atomic-tokens.md) 14 | 15 | ## 가이드 16 | 17 | ### SmartWeave 18 | 19 | - [SmartWeave Concepts](./concepts/smartweave.md) 20 | 21 | ### Warp SDK 22 | 23 | - [Warp Introduction](./guides/smartweave/warp/intro.md) 24 | - [Deploying Contracts](./guides/smartweave/warp/deploying-contracts.md) 25 | - [Reading State](./guides/smartweave/warp/readstate.md) 26 | - [Write Interactions](./guides/smartweave/warp/write-interactions.md) 27 | - [Contract Evolution](./guides/smartweave/warp/evolve.md) 28 | 29 | ### Atomic Tokens 30 | 31 | - [Atomic Tokens Introduction](./guides/atomic-tokens/intro.md) 32 | -------------------------------------------------------------------------------- /src/zhTW/getting-started/index.md: -------------------------------------------------------------------------------- 1 | # 入門指南 2 | 3 | 歡迎使用 Permaweb 教程手冊!本手冊包含概念、指南與程式碼片段,協助您開始在 Arweave 上構建去中心化應用程式。 4 | 5 | ## 什麼是 Permaweb? 6 | 7 | Permaweb(永久網)是一個全球性的、由社群擁有的網路,任何人都可以為其做出貢獻或領取報酬以協助維護。它構建於 Arweave 之上,Arweave 是一個去中心化的儲存網路,用以永久儲存資料。 8 | 9 | 在 Arweave 上建立與部署應用程式的流程與建立傳統應用程式類似——主要差別在於,上傳到 Arweave 的應用程式具有不可變、更去中心化,且無法被單獨移除的特性。這些特性可能使在 Arweave 上開發具挑戰性,但也很有價值。 10 | 11 | 本手冊旨在讓學習與開發流程更簡單。 12 | 13 | ## 開始使用 14 | 15 | 下一章的 [Quick Start guides](./quick-starts/hw-cli.md) 旨在簡要說明如何使用 CLI 工具與程式碼,將一個「Hello World」範例應用部署到 Arweave。 16 | 17 | ## 後續步驟 18 | 19 | 完成入門指南後,您可以進一步探索: 20 | 21 | - [基礎](../fundamentals/index.md) 以了解 Arweave 的運作原理 22 | - [指南](../guides/index.md) 取得逐步教學 23 | - [參考資料](../references/index.md) 閱讀 Permaweb 的參考文件 24 | 25 | ## 參與貢獻 26 | 27 | 若您有意為本手冊貢獻內容,請在 GitHub 倉庫中閱讀貢獻指南,連結在此:[here](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md)。 28 | -------------------------------------------------------------------------------- /src/es/kits/react/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Paquetes de inicio de React 5 | 6 | React es una biblioteca popular utilizada para construir interfaces de usuario. Junto con otras herramientas populares como create-react-app, un proyecto de React puede compilarse en un paquete. Este paquete se puede cargar como una transacción en la permaweb donde servirá como una aplicación de página única. 7 | 8 | Guías de paquetes de inicio de React: 9 | 10 | * [Vite](./vite.md) - utiliza Vite para construir una aplicación permaweb de React 11 | * [Create React App](./create-react-app.md) - utiliza Create React App para construir una aplicación permaweb de React 12 | 13 | ::: info Restricciones de la aplicación permaweb 14 | * 100% de la aplicación en el lado del cliente (sin backend en el lado del servidor) 15 | * Las aplicaciones se sirven desde una sub-ruta (https://[gateway]/[TX_ID]) 16 | ::: -------------------------------------------------------------------------------- /src/archive/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Permaweb Cookbook - Archive 3 | --- 4 | # Archive 5 | 6 | The following concepts and guides have been deprecated and moved to the archive. 7 | 8 | ## Concepts 9 | - [SmartWeave](./concepts/smartweave.md) 10 | - [Profit Sharing Tokens (PSTs)](./concepts/psts.md) 11 | - [Atomic Tokens](./concepts/atomic-tokens.md) 12 | 13 | ## Guides 14 | 15 | ### SmartWeave 16 | - [SmartWeave Concepts](./concepts/smartweave.md) 17 | 18 | ### Warp SDK 19 | - [Warp Introduction](./guides/smartweave/warp/intro.md) 20 | - [Deploying Contracts](./guides/smartweave/warp/deploying-contracts.md) 21 | - [Reading State](./guides/smartweave/warp/readstate.md) 22 | - [Write Interactions](./guides/smartweave/warp/write-interactions.md) 23 | - [Contract Evolution](./guides/smartweave/warp/evolve.md) 24 | 25 | ### Atomic Tokens 26 | - [Atomic Tokens Introduction](./guides/atomic-tokens/intro.md) -------------------------------------------------------------------------------- /src/zh/archive/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | # 原子代币 概念与原则 2 | 3 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 4 | 5 | 原子代币(Atomic Token)是一个在 Permaweb 上参照资料与 SmartWeave 合约的单一永久识别码。 6 | 7 | ## 规格 8 | 9 | 数据 必须 存储在 Arweave 网络上,且能以交易识别码(Transaction Identifier)参照。 10 | 11 | 合约 必须 实现一个 `balances` 对象,用以表示原子代币的所有权。 12 | 13 | 合约 必须 实现一个 `transfer` 函数,该函数接受下列参数: 14 | 15 | - target {WalletAddress or Contract} 16 | - qty {Number} 17 | 18 | > `transfer` 函数应将所有权从调用者转移给目标 19 | 20 | ## 选项 21 | 22 | _这些是可以让原子代币在 Permaweb 上被发现并可交易的实现选项_ 23 | 24 | [Verto Flex](https://github.com/useverto/flex) - Flex 函数库让你的原子代币可以在不必信任交易所的情况下被买卖。 25 | 26 | [可被发现的标签 - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - 这些额外的标签可以帮助 Permaweb 的应用程序与服务发现你的代币。 27 | 28 | [查看指南](../guides/atomic-tokens/intro.md) 29 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/translation_request.yml: -------------------------------------------------------------------------------- 1 | name: Translation request 2 | description: Request new or improved translations 3 | labels: ['translation'] 4 | title: "[Translation]: " 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Let us know which language you'd like to see supported. 10 | - type: input 11 | id: language 12 | attributes: 13 | label: Language 14 | description: Language you want to request 15 | placeholder: e.g. Spanish 16 | validations: 17 | required: true 18 | - type: textarea 19 | id: details 20 | attributes: 21 | label: Details 22 | description: Additional details about the translation request 23 | validations: 24 | required: false 25 | - type: textarea 26 | id: context 27 | attributes: 28 | label: Additional context 29 | validations: 30 | required: false 31 | -------------------------------------------------------------------------------- /src/zhTW/archive/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | # 原子代幣 概念與原則 2 | 3 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 4 | 5 | 原子代幣(Atomic Token)是一個在 Permaweb 上參照資料與 SmartWeave 合約的單一永久識別碼。 6 | 7 | ## 規格 8 | 9 | 資料 MUST 儲存在 Arweave 網路上,且能以交易識別碼(Transaction Identifier)參照。 10 | 11 | 合約 MUST 實作一個 `balances` 物件,用以表示原子代幣的所有權。 12 | 13 | 合約 MUST 實作一個 `transfer` 函式,該函式接受下列參數: 14 | 15 | - target {WalletAddress or Contract} 16 | - qty {Number} 17 | 18 | > `transfer` 函式應將所有權從呼叫者轉移給目標 19 | 20 | ## 選項 21 | 22 | _這些是可以讓原子代幣在 Permaweb 上被發現並可交易的實作選項_ 23 | 24 | [Verto Flex](https://github.com/useverto/flex) - Flex 函式庫讓你的原子代幣可以在不必信任交易所的情況下被買賣。 25 | 26 | [可被發現的標籤 - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - 這些額外的標籤可以幫助 Permaweb 的應用程式與服務發現你的代幣。 27 | 28 | [查看指南](../guides/atomic-tokens/intro.md) 29 | -------------------------------------------------------------------------------- /src/id/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Svelte Starter Kits 6 | 7 | Svelte adalah sebuah framework yang dikompilasi menjadi bundel JavaScript dan dalam prosesnya menghapus framework tersebut dari distribusi aplikasi. Ini menghasilkan jejak yang jauh lebih kecil daripada kerangka kerja lainnya. Svelte adalah kerangka kerja yang sempurna untuk Aplikasi Permaweb. Aplikasi Permaweb dibangun berdasarkan prinsip Aplikasi Halaman Tunggal (Single Page Application), tetapi berada di jaringan Arweave dan didistribusikan oleh gateway Permaweb. 8 | 9 | Panduan Awal Svelte: 10 | 11 | * [Minimal](./minimal.md) - yang diperlukan minimum untuk membangun aplikasi svelte permaweb 12 | * [Vite](./vite.md) - Svelte, TypeScript, dan Vite 13 | 14 | ::: info Kendala Aplikasi Permaweb 15 | * Aplikasi 100% Front-end (Tanpa Backend Server) 16 | * Aplikasi disajikan dari sub-path (https://[gateway]/[TX_ID]) 17 | ::: -------------------------------------------------------------------------------- /src/id/getting-started/quick-starts/hw-no-code.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Hello World (No Code) 6 | 7 | Dalam panduan cepat ini, kita akan mengunggah gambar ke permaweb tanpa perlu menulis kode apa pun! 8 | 9 | ## Persyaratan 10 | 11 | * Komputer 12 | * Koneksi internet 13 | * Browser web modern 14 | 15 | ## Buat dompet (wallet) 16 | 17 | Buka [https://arweave.app/add](https://arweave.app/add) atau [https://wander.app](https://wander.app) 18 | 19 | ## Kirim data ke arweave 20 | 21 | Buka [https://hello_cookbook.arweave.net](https://hello_cookbook.arweave.net) 22 | 23 | Masukkan beberapa data dan klik "publish," sambungkan dompet Anda, dan "BAM" 24 | 25 | ## Selamat!! 26 | 27 | Anda baru saja mempublikasikan beberapa data di Arweave tanpa perlu menulis kode apa pun. 28 | 29 | > Untuk melihat proyeknya -> [https://github.com/twilson63/pw-no-code-hello](https://github.com/twilson63/pw-no-code-hello) 30 | -------------------------------------------------------------------------------- /src/es/kits/svelte/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Kits de inicio de Svelte 5 | 6 | Svelte es un marco que se compila en un paquete de JavaScript y en el proceso elimina el marco de la distribución de la aplicación. Esto resulta en un tamaño mucho más pequeño que otros marcos. Svelte es el marco perfecto para las aplicaciones Permaweb. Una aplicación Permaweb se construye sobre los principios de una aplicación de una sola página, pero vive en la red Arweave y se distribuye a través de los gateways de Permaweb. 7 | 8 | Guías de Kits de inicio de Svelte: 9 | 10 | * [Mínimo](./minimal.md) - lo mínimo necesario para construir una aplicación svelte permaweb 11 | * [Vite](./vite.md) - Svelte, Typescript y Vite 12 | 13 | ::: info Restricciones de la aplicación Permaweb 14 | * 100% aplicación frontend (sin backend del lado del servidor) 15 | * Las aplicaciones se sirven desde un subdirectorio (https://[gateway]/[TX_ID]) 16 | ::: -------------------------------------------------------------------------------- /src/zh/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | # 使用 Dispatch 发布交易 2 | 3 | Arweave 浏览器钱包支持 Dispatch 交易的机制。 4 | 5 | 如果交易大小小于 100KB,即可免费发布到 Arweave! 6 | 7 | ## 使用 Dispatch 发布交易 8 | 9 | 这可以在客户端应用程序无需任何依赖项的情况下完成。只要用户启用了浏览器钱包,且数据小于 100KB,Dispatch 的交易就是免费的,并且保证会在网络上被确认。 10 | 11 | ```js:no-line-numbers 12 | // use arweave-js to create a transaction 13 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 14 | 15 | // add some custom tags to the transaction 16 | tx.addTag('App-Name', 'PublicSquare') 17 | tx.addTag('Content-Type', 'text/plain') 18 | tx.addTag('Version', '1.0.1') 19 | tx.addTag('Type', 'post') 20 | 21 | // use the browser wallet to dispatch() the transaction 22 | let result = await window.arweaveWallet.dispatch(tx); 23 | 24 | // log out the transactino id 25 | console.log(result.id); 26 | ``` 27 | 28 | ## 资源 29 | 30 | - 如需了解所有可用于发布交易的方式概览,请参阅 cookbook 的 [发布交易](../../fundamentals/post-transactions.md) 章节。 31 | -------------------------------------------------------------------------------- /src/ko/fundamentals/index.md: -------------------------------------------------------------------------------- 1 | # 기본 개념 2 | 3 | Arweave와 Permaweb의 기본 개념을 이해하는 것은 강력한 탈중앙화 애플리케이션을 구축하는 데 필수적입니다. 4 | 5 | ## 신원 및 인증 6 | 7 | - **[지갑 및 키](./wallets-and-keyfiles/index.md)** 8 | 9 | ## 트랜잭션 10 | 11 | - **[트랜잭션](./transactions/index.md)** 12 | - [트랜잭션 게시하기](./transactions/post-transactions.md) 13 | - [번들](./transactions/bundles.md) 14 | - [트랜잭션 유형](./transactions/transaction-types.md) 15 | - [매니페스트 및 경로 해석](./transactions/manifests.md) 16 | 17 | ## Arweave 데이터 접근 18 | 19 | - **[Arweave 데이터 접근](./accessing-arweave-data/index.md)** 20 | - **[데이터 검색 방법](./accessing-arweave-data/data-retrieval.md)** 21 | - **[쿼리 및 GraphQL](./accessing-arweave-data/graphql.md)** - 데이터를 찾고 가져오는 방법 22 | - **[게이트웨이 및 접근](./accessing-arweave-data/gateways.md)** - 네트워크에 접근하는 방법 23 | - **[Arweave 네임 시스템 (ArNS)](./accessing-arweave-data/arns.md)** 24 | 25 | ## 탈중앙화 컴퓨팅 26 | 27 | - **[탈중앙화 컴퓨팅](./decentralized-computing/index.md)** 28 | -------------------------------------------------------------------------------- /src/zhTW/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | # 使用 Dispatch 張貼交易 2 | 3 | Arweave 瀏覽器錢包支援 dispatch 交易的機制。 4 | 5 | 如果交易大小小於 100KB,即可免費張貼到 Arweave! 6 | 7 | ## 使用 Dispatch 張貼交易 8 | 9 | 這可以在用戶端應用程式不需任何套件相依性的情況下完成。只要使用者有啟用的瀏覽器錢包,且資料小於 100KB,dispatch 的交易就是免費的,且保證會在網路上被確認。 10 | 11 | ```js:no-line-numbers 12 | // use arweave-js to create a transaction 13 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 14 | 15 | // add some custom tags to the transaction 16 | tx.addTag('App-Name', 'PublicSquare') 17 | tx.addTag('Content-Type', 'text/plain') 18 | tx.addTag('Version', '1.0.1') 19 | tx.addTag('Type', 'post') 20 | 21 | // use the browser wallet to dispatch() the transaction 22 | let result = await window.arweaveWallet.dispatch(tx); 23 | 24 | // log out the transactino id 25 | console.log(result.id); 26 | ``` 27 | 28 | ## 資源 29 | 30 | - 如需瞭解所有可用來張貼交易的方式概覽,請參閱 cookbook 的 [張貼交易](../../fundamentals/post-transactions.md) 章節。 31 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.yml: -------------------------------------------------------------------------------- 1 | name: Feature request 2 | description: Suggest an idea for this project 3 | labels: ['enhancement'] 4 | title: "[Feature]: " 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Thanks for suggesting a feature! 10 | - type: textarea 11 | id: problem 12 | attributes: 13 | label: Problem to solve 14 | description: What problem would this feature address? 15 | validations: 16 | required: true 17 | - type: textarea 18 | id: solution 19 | attributes: 20 | label: Proposed solution 21 | validations: 22 | required: true 23 | - type: textarea 24 | id: alternatives 25 | attributes: 26 | label: Alternatives considered 27 | validations: 28 | required: false 29 | - type: textarea 30 | id: additional 31 | attributes: 32 | label: Additional context 33 | validations: 34 | required: false 35 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.yml: -------------------------------------------------------------------------------- 1 | name: Bug report 2 | description: File a bug report to help us improve 3 | labels: ['bug'] 4 | title: "[Bug]: " 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Thanks for reporting a bug! 10 | - type: textarea 11 | id: steps 12 | attributes: 13 | label: Steps to reproduce 14 | description: Describe how to reproduce the bug. 15 | validations: 16 | required: true 17 | - type: textarea 18 | id: expected 19 | attributes: 20 | label: Expected behavior 21 | validations: 22 | required: true 23 | - type: textarea 24 | id: actual 25 | attributes: 26 | label: Actual behavior 27 | validations: 28 | required: true 29 | - type: textarea 30 | id: logs 31 | attributes: 32 | label: Relevant log output 33 | description: Paste any relevant log output. 34 | validations: 35 | required: false 36 | -------------------------------------------------------------------------------- /src/.vuepress/public/icons/language.svg: -------------------------------------------------------------------------------- 1 | ionicons-v5-l -------------------------------------------------------------------------------- /src/fundamentals/decentralized-computing/index.md: -------------------------------------------------------------------------------- 1 | # Decentralized Computing 2 | 3 | There is no inherent way to perform computation built directly into the protocol - however, this does not mean 4 | that developers cannot create smart contracts which are stored on Arweave. 5 | 6 | [AO](https://ao.arweave.net) is a decentralized compute network built on top of Arweave. By using Arweave as a state layer to store smart contract state and user interactions, it's possible to build sophisticated decentralized applications. 7 | 8 | Explaining how AO works and how to build applications with it is not in the scoe of this cookbook, however there are plenty of resources to get started if you wish to learn more. 9 | 10 | ## Sources and Further Reading 11 | 12 | - [AO](https://ao.arweave.net) 13 | - [AO Cookbook](https://cookbook_ao.arweave.net) 14 | - [HyperBEAM GitHub Repository](https://github.com/permaweb/HyperBEAM) 15 | - [HyperBEAM Documentation](https://hyperbeam.arweave.net) 16 | -------------------------------------------------------------------------------- /src/es/references/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | # Referencias 6 | 7 | ## Arweave Whitepaper 8 | 9 | - Documento técnico de Arweave: El nuevo estándar para el almacenamiento permanente y distribuido. 10 | - Disponible en: [https://www.arweave.org/whitepapers](https://www.arweave.org/whitepapers) 11 | 12 | ## Blockchain Infrastructure for Decentralized Applications 13 | 14 | - Artículo académico sobre la infraestructura blockchain para aplicaciones descentralizadas. 15 | - Autor: [Alan Alderson](https://www.example.com) 16 | 17 | ## Linguistics and Blockchain 18 | 19 | - Publicación académica sobre la relación entre lingüística y tecnología blockchain. 20 | - Autores: [John Johnson](https://www.example.com), [María Martínez](https://www.example.com) 21 | 22 | ## Understanding ArQL 23 | 24 | - Guía para comprender y utilizar ArQL, el lenguaje de consulta de Arweave. 25 | - Disponible en: [https://www.arweave.org/arql-documentation](https://www.arweave.org/arql-documentation) 26 | -------------------------------------------------------------------------------- /src/ko/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | # 디스패치(Dispatch)를 사용한 트랜잭션 게시 2 | 3 | Arweave 브라우저 지갑에는 트랜잭션을 디스패치하는 개념이 있습니다. 4 | 5 | 트랜잭션 크기가 100KB 미만인 경우 Arweave에 무료로 게시할 수 있습니다! 6 | 7 | ## 트랜잭션 디스패치 8 | 9 | 클라이언트 앱에 패키지 종속성 없이 이 작업을 수행할 수 있습니다. 사용자가 브라우저 지갑을 활성화했고 데이터가 100KB 미만인 한, 디스패치된 트랜잭션은 무료이며 네트워크에서 확인되는 것이 보장됩니다. 10 | 11 | ```js:no-line-numbers 12 | // use arweave-js to create a transaction 13 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 14 | 15 | // add some custom tags to the transaction 16 | tx.addTag('App-Name', 'PublicSquare') 17 | tx.addTag('Content-Type', 'text/plain') 18 | tx.addTag('Version', '1.0.1') 19 | tx.addTag('Type', 'post') 20 | 21 | // use the browser wallet to dispatch() the transaction 22 | let result = await window.arweaveWallet.dispatch(tx); 23 | 24 | // log out the transactino id 25 | console.log(result.id); 26 | ``` 27 | 28 | ## 리소스 29 | 30 | - 트랜잭션을 게시하는 모든 방법에 대한 개요는 [트랜잭션 게시하기](../../fundamentals/post-transactions.md) 섹션을 참조하세요. 31 | -------------------------------------------------------------------------------- /src/id/concepts/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Konsep Inti 6 | 7 | Dasar-dasar Arweave dan Permaweb. 8 | 9 | - [Mengirim Transaksi](post-transactions.md) 10 | - [Metadata (Tag)](tags.md) 11 | - [Meminta](query-transactions.md) 12 | - [Mengambil Data](/guides/http-api.md) 13 | - [Jenis Transaksi](bundles.md) 14 | - [Bundle](bundles.md) 15 | - [Manifes Jalur](manifests.md) 16 | - [Dompet dan Kunci](keyfiles-and-wallets.md) 17 | - [Permaweb](permaweb.md) 18 | - [Aplikasi Permaweb](permaweb-applications.md) 19 | - [Layanan Gateway](gateways.md) 20 | - [Layanan Bundling](bundlers.md) 21 | - [SmartWeave](smartweave.md) 22 | - [Sistem Nama Arweave (ArNS)](arns.md) 23 | - [Token Atomik](atomic-tokens.md) 24 | - [Token Pembagian Keuntungan (PST)](psts.md) 25 | 26 | > Apakah Anda berpikir bahwa ada konsep inti Permaweb yang hilang? Buat *issues* di [Github](https://github.com/twilson63/permaweb-cookbook/issues) atau pertimbangkan untuk [berkontribusi](../getting-started/contributing.md) -------------------------------------------------------------------------------- /src/ja/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | # Dispatch を使用したトランザクションの投稿 2 | 3 | Arweave のブラウザウォレットにはトランザクションをディスパッチするという概念があります。 4 | 5 | トランザクションサイズが 100KB 未満であれば、Arweave に無料で投稿できます! 6 | 7 | ## トランザクションのディスパッチ 8 | 9 | クライアントアプリ側で追加のパッケージ依存は不要です。ユーザーのブラウザウォレットが有効で、データが 100KB 未満であれば、ディスパッチされたトランザクションは無料でネットワーク上で確実に承認されます。 10 | 11 | ```js:no-line-numbers 12 | // use arweave-js to create a transaction 13 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 14 | 15 | // add some custom tags to the transaction 16 | tx.addTag('App-Name', 'PublicSquare') 17 | tx.addTag('Content-Type', 'text/plain') 18 | tx.addTag('Version', '1.0.1') 19 | tx.addTag('Type', 'post') 20 | 21 | // use the browser wallet to dispatch() the transaction 22 | let result = await window.arweaveWallet.dispatch(tx); 23 | 24 | // log out the transactino id 25 | console.log(result.id); 26 | ``` 27 | 28 | ## リソース 29 | 30 | - トランザクションを投稿するすべての方法の概要については、クックブックの[トランザクションの投稿](../../fundamentals/transactions/index.md)セクションを参照してください。 31 | -------------------------------------------------------------------------------- /src/ja/getting-started/index.md: -------------------------------------------------------------------------------- 1 | # はじめに 2 | 3 | Permaweb クックブックへようこそ!本書には、Arweave 上で分散型アプリケーションを構築し始めるための概念、ガイド、スニペットが含まれています。 4 | 5 | ## Permaweb とは何ですか? 6 | 7 | Permaweb は、誰でも貢献でき、維持管理に対して報酬を得ることもできる、グローバルでコミュニティ所有のウェブです。これは、データを永続的に保存する分散型ストレージネットワークである Arweave の上に構築されています。 8 | 9 | Arweave 上でアプリケーションを作成・デプロイすることは、従来のアプリケーションを作ることと似ています ── 重要な違いは、Arweave にアップロードされたアプリケーションが不変で分散化されており、個別に削除することができない点です。これらの特性は、Arweave での開発を難しくすることがありますが、その分やりがいもあります。 10 | 11 | このクックブックは、学習と構築のプロセスをより簡単にすることを目的としています。 12 | 13 | ## はじめに 14 | 15 | 次章の[クイックスタートガイド](./quick-starts/hw-cli.md)は、CLI ツールとコードの両方を使用して Arweave に「Hello World」アプリケーションをデプロイする際の簡単な概要を示します。 16 | 17 | ## 次のステップ 18 | 19 | はじめにガイドを終えたら、次を参照してください: 20 | 21 | - [基礎](../fundamentals/index.md) — Arweave の仕組みを理解するために 22 | - [ガイド](../guides/index.md) — ステップバイステップのチュートリアル 23 | - [リファレンス](../references/index.md) — 参照資料と仕様 24 | 25 | ## 貢献 26 | 27 | このクックブックへの貢献に興味がある場合は、GitHub リポジトリのガイドラインを[こちら](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md)でご覧ください。 28 | -------------------------------------------------------------------------------- /config/markdown-link-check.json: -------------------------------------------------------------------------------- 1 | { 2 | "ignorePatterns": [ 3 | { 4 | "pattern": "^http://localhost" 5 | }, 6 | { 7 | "pattern": "^https://127.0.0.1" 8 | }, 9 | { 10 | "pattern": "^mailto:" 11 | }, 12 | { 13 | "pattern": "^file://" 14 | }, 15 | { 16 | "pattern": "https://warp.cc" 17 | }, 18 | { 19 | "pattern": "https://sonar.warp.cc" 20 | }, 21 | { 22 | "pattern": "https://academy.warp.cc" 23 | } 24 | ], 25 | "replacementPatterns": [ 26 | { 27 | "pattern": "^/", 28 | "replacement": "{{BASEURL}}/" 29 | } 30 | ], 31 | "timeout": "10s", 32 | "retryOn429": true, 33 | "retryCount": 3, 34 | "fallbackRetryDelay": "5s", 35 | "aliveStatusCodes": [200, 206, 429], 36 | "httpHeaders": [ 37 | { 38 | "urls": ["https://github.com", "https://gql-guide.arweave.dev", "https://docs.arweave.org"], 39 | "headers": { 40 | "User-Agent": "Mozilla/5.0 (compatible; link-checker)" 41 | } 42 | } 43 | ] 44 | } -------------------------------------------------------------------------------- /src/id/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Hello World (CLI) 6 | 7 | Panduan ini akan membantu Anda untuk melakukan hal yang paling sederhana, yaitu mengunggah data ke permaweb menggunakan antarmuka baris perintah (CLI). 8 | 9 | ## Persyaratan 10 | 11 | - [NodeJS](https://nodejs.org) LTS atau yang lebih baru 12 | 13 | ## Deskripsi 14 | 15 | Dengan menggunakan jendela terminal atau konsol, buat folder baru bernama `hw-permaweb-1`. 16 | 17 | ## Persiapan 18 | 19 | ```sh 20 | cd hw-permaweb-1 21 | npm init -y 22 | npm install arweave @irys/sdk 23 | ``` 24 | 25 | ## Membuat sebuah dompet (wallet) 26 | 27 | ```sh 28 | node -e "require('arweave').init({}).wallets.generate().then(JSON.stringify).then(console.log.bind(console))" > wallet.json 29 | ``` 30 | 31 | ## Membuat halaman web 32 | 33 | ```sh 34 | echo "

Halo Permaweb

" > index.html 35 | ``` 36 | 37 | ## Mengunggah menggunakan Irys 38 | 39 | ```sh 40 | irys upload index.html -c arweave -h https://node2.irys.xyz -w ./wallet.json 41 | ``` 42 | -------------------------------------------------------------------------------- /src/ko/archive/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | # 아토믹 토큰 개념과 원칙 2 | 3 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 4 | 5 | 아토믹 토큰(Atomic Token)은 Permaweb상의 데이터와 SmartWeave Contract를 참조하는 하나의 영구 식별자입니다. 6 | 7 | ## 명세 8 | 9 | 데이터는 arweave 네트워크에 저장되어야 하며 Transaction Identifier로 참조 가능해야 합니다. 10 | 11 | 컨트랙트는 아토믹 토큰의 소유권을 나타내는 `balances` 객체를 구현해야 합니다. 12 | 13 | 컨트랙트는 다음 인수를 받는 `transfer` 함수를 구현해야 합니다: 14 | 15 | - target {WalletAddress or Contract} 16 | - qty {Number} 17 | 18 | > `transfer` 함수는 호출자(caller)로부터 대상(target)으로 소유권을 이전해야 합니다. 19 | 20 | ## 옵션 21 | 22 | _이들은 Permaweb에서 아토믹 토큰을 검색 가능하고 거래 가능하게 만들 수 있는 구현 옵션입니다_ 23 | 24 | [Verto Flex](https://github.com/useverto/flex) - Flex 라이브러리는 거래소를 신뢰하지 않고도 아토믹 토큰을 판매하거나 구매할 수 있게 해줍니다. 25 | 26 | [Discoverability Tags - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - 이러한 추가 태그는 Permaweb 애플리케이션 및 서비스가 귀하의 토큰을 검색하는 데 도움이 될 수 있습니다. 27 | 28 | [가이드를 확인하세요](../guides/atomic-tokens/intro.md) 29 | -------------------------------------------------------------------------------- /src/ko/getting-started/index.md: -------------------------------------------------------------------------------- 1 | # 시작하기 2 | 3 | Permaweb Cookbook에 오신 것을 환영합니다! 이 책은 분산 애플리케이션을 Arweave 위에 구축하는 데 도움이 되는 개념, 가이드, 코드 스니펫을 포함합니다. 4 | 5 | ## Permaweb이란 무엇인가요? 6 | 7 | Permaweb은 누구나 기여하거나 유지 보수에 대해 보상을 받을 수 있는 글로벌 커뮤니티 소유의 웹입니다. 이는 데이터를 영구적으로 저장하는 분산 스토리지 네트워크인 Arweave 위에 구축되어 있습니다. 8 | 9 | Arweave에 애플리케이션을 생성하고 배포하는 과정은 전통적인 애플리케이션을 만드는 과정과 유사하지만, Arweave에 업로드된 애플리케이션은 불변(immutable)이며 분산되어 있고 개별적으로 제거될 수 없다는 핵심적인 차이가 있습니다. 이러한 특성 때문에 Arweave 위에서의 개발은 도전적일 수 있지만 보람이 큽니다. 10 | 11 | 이 요리책은 학습과 개발 과정을 보다 단순하게 만드는 것을 목표로 합니다. 12 | 13 | ## 시작하기 14 | 15 | 다음 장의 [빠른 시작 가이드](./quick-starts/hw-cli.md)는 CLI 도구와 코드 양쪽을 사용하여 Arweave에 "Hello World" 애플리케이션을 배포하는 모습에 대한 간단한 개요를 제공합니다. 16 | 17 | ## 다음 단계 18 | 19 | 시작 안내를 완료한 후에는 다음을 살펴보세요: 20 | 21 | - [기초](../fundamentals/index.md)에서 Arweave의 동작 원리를 이해하기 22 | - [가이드](../guides/index.md)에서 단계별 튜토리얼 따라하기 23 | - [도구](../tooling/index.md)에서 개발 도구 확인하기 24 | 25 | ## 기여하기 26 | 27 | 이 요리책에 기여하고 싶다면 GitHub 저장소의 가이드라인을 [여기](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md)에서 읽어보실 수 있습니다. 28 | -------------------------------------------------------------------------------- /src/zh/references/specs/arfs/content-types.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "entity-types.md" 3 | next: "privacy.md" 4 | --- 5 | 6 | # 内容类型 7 | 8 | ArFS 中的所有交易类型都会使用特定的元数据标签来标示数据的 Content-Type(亦称 MIME 类型)。ArFS 客户端必须判定数据的 MIME 类型,才能让 Arweave 网关与浏览器适当地呈现该内容。 9 | 10 | 所有公开的 drive、folder 与 file(仅元数据)实体交易皆采用 JSON 标准,因此必须具有以下的内容类型标签: 11 | 12 | ```json 13 | Content-Type: '' 14 | ``` 15 | 16 | 但文件的数据交易则必须判定其 MIME 类型。此信息会存储在该文件对应的元数据交易 JSON 的 `dataContentType` 字段,以及数据交易本身的内容类型标签中。 17 | 18 | ```json 19 | Content-Type: "" 20 | ``` 21 | 22 | 所有私有的 drive、folder 与 file 实体交易由于为加密内容,必须具有下列内容类型: 23 | 24 | ```json 25 | Content-Type: '' 26 | ``` 27 | 28 | [ArDrive-Core](https://docs.ardrive.io/docs/core-sdk.html) 提供用来判定文件内容类型的方法。 29 | 30 | ## 其他标签 31 | 32 | 启用 ArFS 的客户端应在其交易上包含下列标签以识别其应用程序 33 | 34 | ```json 35 | App-Name: "' 14 | ``` 15 | 16 | 但檔案的資料交易則必須判定其 MIME 類型。此資訊會儲存在該檔案對應的元資料交易 JSON 的 `dataContentType` 欄位,以及資料交易本身的內容類型標籤中。 17 | 18 | ```json 19 | Content-Type: "" 20 | ``` 21 | 22 | 所有私有的 drive、folder 與 file 實體交易由於為加密過的內容,必須具有下列內容類型: 23 | 24 | ```json 25 | Content-Type: '' 26 | ``` 27 | 28 | [ArDrive-Core](https://docs.ardrive.io/docs/core-sdk.html) 提供用來判定檔案內容類型的方法。 29 | 30 | ## 其他標籤 31 | 32 | 啟用 ArFS 的用戶端應在其交易上包含下列標籤以識別其應用程式 33 | 34 | ```json 35 | App-Name: " ¿Crees que falta algún concepto básico de Permaweb? Cree una issue en [GitHub](https://github.com/twilson63/permaweb-cookbook/issues) o considere [contribuir](../getting-started/contributing.md) 27 | -------------------------------------------------------------------------------- /src/id/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Vue Starter Kits 6 | 7 | Vue.js adalah kerangka kerja JavaScript progresif yang memungkinkan pembuatan antarmuka pengguna. Berbeda dengan kerangka kerja lainnya, Vue.js mengompilasi template menjadi JavaScript saat runtime, sehingga menghasilkan ukuran berkas yang lebih kecil dan kinerja yang lebih cepat. Vue sangat ideal untuk membangun aplikasi satu halaman (single-page applications) yang performa dan skalabilitasnya baik, sehingga membuatnya menjadi pilihan yang populer di kalangan pengembang front-end. 8 | 9 | Panduan Kit Permulaan Vue: 10 | 11 | **Catatan:** - Karena `npm init vue@latest` sudah menggunakan Vite, kami tidak menyertakan panduan Vite untuk Vue. 12 | 13 | - [Buat Aplikasi Vue](./create-vue.md) - Gunakan Create Vue untuk efisien membangun aplikasi modern Permaweb berbasis Vue.js dengan TypeScript dan Vite. 14 | 15 | ::: info Kendala Aplikasi Permaweb 16 | 17 | - Aplikasi 100% front-end (Tanpa Backend Server) 18 | - Aplikasi disajikan dari sub-patokan (https://[gateway]/[TX_ID]) 19 | ::: -------------------------------------------------------------------------------- /src/zh/references/llms-txt.md: -------------------------------------------------------------------------------- 1 | # LLMs.txt 2 | 3 | 下方是一个 [工具](https://fuel_permawebllms.arweave.net),可让您根据 permaweb 生态系统的文档创建自己的 LLMs.txt 文件。 4 | 5 | 19 | 20 | 28 | 36 | -------------------------------------------------------------------------------- /src/zhTW/references/llms-txt.md: -------------------------------------------------------------------------------- 1 | # LLMs.txt 2 | 3 | 下方是一個 [工具](https://fuel_permawebllms.arweave.net),可讓您根據 permaweb 生態系統的文件建立自己的 LLMs.txt 檔案。 4 | 5 | 19 | 20 | 28 | 36 | -------------------------------------------------------------------------------- /src/es/kits/vue/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Juegos de inicio de Vue 5 | 6 | Vue.js es un marco de JavaScript progresivo que permite construir interfaces de usuario. A diferencia de otros marcos, compila la plantilla en JavaScript durante el tiempo de ejecución, lo que se traduce en un tamaño de archivo más pequeño y un rendimiento más rápido. Vue es ideal para construir aplicaciones de una sola página escalables y de alto rendimiento, lo que lo convierte en una opción popular entre los desarrolladores front-end. 7 | 8 | Guía de kits de inicio de Vue: 9 | 10 | **Nota:** - Dado que `npm init vue@latest` ya utiliza vite, no hemos incluido una guía de vite para Vue. 11 | 12 | * [Crear aplicación Vue](./create-vue.md) - Utilice Crear Vue para construir de manera eficiente una aplicación basada en Vue.js con TypeScript y Vite en la permaweb moderna. 13 | 14 | ::: info Restricciones de la aplicación en la permaweb 15 | * Aplicación 100% front-end (sin backend en el lado del servidor) 16 | * Las aplicaciones se sirven desde una subruta (https://[gateway]/[TX_ID]) 17 | ::: -------------------------------------------------------------------------------- /src/zh/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | onboarding: true 3 | --- 4 | 5 | # 在 Permaweb 上开发 6 | 7 | Permaweb Cookbook 是为开发者准备的资源,提供在 Permaweb 上构建应用程序所需的核心概念与参考。每个概念与参考都会聚焦 Permaweb 开发生态系统的特定面向,同时提供额外的细节与使用示例。 8 | 9 | ## 开发者 10 | 11 | 欢迎加入 Arweave 开发者社区,在这里过去将永远刻录在区块链上,未来充满无限可能。让我们一起打造去中心化的网络! 12 | 13 | [阅读更多](getting-started/quick-starts/hw-cli.html) 14 | 15 | ## 贡献 16 | 17 | Permaweb Cookbook 的设计考虑让新加入的 Permaweb 开发者也能轻松参与贡献。即使你不确定如何做,向 Cookbook 贡献也是学习的好方法! 18 | 19 | 在此查看所有开启的议题。贡献指南在此。如果你发现 Cookbook 缺少某个概念、指南或参考,请新增一个议题。 20 | 21 | [阅读更多](getting-started/contributing.md) 22 | 23 | ## 如何阅读 Cookbook 24 | 25 | Permaweb Cookbook 分为不同章节,每个章节针对不同目标。 26 | 27 | | 章节 | 说明 | 28 | | -------- | ----------------------------------- | 29 | | 基础概念 | Permaweb 的构建基础,对开发很有帮助 | 30 | | 指南 | 关于不同开发工具的精简指南 | 31 | | 参考 | 常用代码片段的参考 | 32 | 33 | ## 快速开始 34 | 35 | 这些是小型指南,可协助各种经验程度的开发者在 Permaweb 上部署代码。 36 | 37 | - [Hello World(CLI)](getting-started/quick-starts/hw-cli.md) 38 | - [Hello World(代码)](getting-started/quick-starts/hw-code.md) 39 | -------------------------------------------------------------------------------- /src/ja/references/llms-txt.md: -------------------------------------------------------------------------------- 1 | # LLMs.txt 2 | 3 | 以下は、permaweb エコシステムのドキュメントに基づいて、独自の LLMs.txt ファイルを構築できる[ツール](https://fuel_permawebllms.arweave.net)です。 4 | 5 | 19 | 20 | 28 | 36 | -------------------------------------------------------------------------------- /src/ko/references/llms-txt.md: -------------------------------------------------------------------------------- 1 | # LLMs.txt 2 | 3 | 다음은 [도구](https://fuel_permawebllms.arweave.net)로, permaweb 생태계의 문서를 기반으로 자신만의 LLMs.txt 파일을 생성할 수 있습니다. 4 | 5 | 19 | 20 | 28 | 36 | -------------------------------------------------------------------------------- /src/zhTW/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | onboarding: true 3 | --- 4 | 5 | # 在 Permaweb 上開發 6 | 7 | Permaweb Cookbook 是為開發者準備的資源,提供在 Permaweb 上構建應用程式所需的核心概念與參考。每個概念與參考都會聚焦 Permaweb 開發生態系的特定面向,同時提供額外的細節與使用範例。 8 | 9 | ## 開發者 10 | 11 | 歡迎加入 Arweave 開發者社群,在這裡過去會永遠刻印在區塊鏈上,未來充滿無限可能。讓我們一起打造去中心化的網路! 12 | 13 | [閱讀更多](getting-started/quick-starts/hw-cli.html) 14 | 15 | ## 貢獻 16 | 17 | Permaweb Cookbook 的設計考量讓新進 Permaweb 開發者也能輕鬆參與貢獻。即使你不確定如何做,向 Cookbook 貢獻也是學習的好方法! 18 | 19 | 在此查看所有開啟的 issues。貢獻指南在此。如果你發現 Cookbook 缺少某個概念、指南或參考,請新增一個議題。 20 | 21 | [閱讀更多](getting-started/contributing.md) 22 | 23 | ## 如何閱讀 Cookbook 24 | 25 | Permaweb Cookbook 分為不同章節,每個章節針對不同目標。 26 | 27 | | 章節 | 說明 | 28 | | -------- | ----------------------------------- | 29 | | 基礎概念 | Permaweb 的構建基礎,對開發很有幫助 | 30 | | 指南 | 關於不同開發工具的精簡指南 | 31 | | 參考 | 常用程式碼片段的參考 | 32 | 33 | ## 快速開始 34 | 35 | 這些是小型指南,可協助各種經驗程度的開發者在 Permaweb 上部署程式碼。 36 | 37 | - [Hello World (CLI)](getting-started/quick-starts/hw-cli.md) 38 | - [Hello World (Code)](getting-started/quick-starts/hw-code.md) 39 | -------------------------------------------------------------------------------- /src/.vuepress/public/icons/github.svg: -------------------------------------------------------------------------------- 1 | 7 | 13 | -------------------------------------------------------------------------------- /src/archive/permaweb.md: -------------------------------------------------------------------------------- 1 | # Welcome to the Permaweb 2 | 3 | The permaweb is like the web, but permanent. Developers build on top of permaweb services to create apps and sites that will exist forever on Arweave. 4 | 5 | ![Permaweb](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 6 | 7 | Benefits of the permaweb. 8 | 9 | 1. Sites and apps are permanent, you never have to worry about them going away (even if the team supporting them moves on) 10 | 1. App developers have to make sure every new version of the app actually adds value, otherwise, why would you switch off the old one. 11 | 1. Because all Permaweb apps share a common storage layer, Arweave, they can all compose with one anther's data. 12 | 1. Your data is owned by your wallet and can follow you from app to app. 13 | 14 | ## Compare Traditional Web vs Permaweb 15 | 16 | ![Permaweb vs Traditional](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 17 | 18 | For more information about the permaweb check out the [medium post](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb). 19 | 20 | -------------------------------------------------------------------------------- /src/ja/archive/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | # アトミックトークンの概念と原則 2 | 3 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 4 | 5 | アトミックトークンは、データと Permaweb 上の SmartWeave コントラクトを参照する単一の永続識別子です。 6 | 7 | ## 仕様 8 | 9 | データ MUST be stored on the Arweave ネットワーク and referencable by a Transaction Identifier 10 | 11 | コントラクト MUST implement a `balances` object that represents the ownership of the アトミックトークン 12 | 13 | コントラクト MUST implement a `transfer` function that takes the following arguments: 14 | 15 | - target {WalletAddress or Contract} 16 | - qty {Number} 17 | 18 | > transfer 関数は、呼び出し元から target へ所有権を移転するべきです。 19 | 20 | ## オプション 21 | 22 | _これらは、アトミックトークンを Permaweb 上で発見可能かつ取引可能にする実装オプションです_ 23 | 24 | [Verto Flex](https://github.com/useverto/flex) - Flex ライブラリを使用すると、取引所を信用することなくアトミックトークンを売買できます。 25 | 26 | [Discoverability Tags - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - これらの追加タグは Permaweb のアプリケーションやサービスがあなたのトークンを検出するのに役立ちます。 27 | 28 | [ガイドを確認する](../guides/atomic-tokens/intro.md) 29 | -------------------------------------------------------------------------------- /src/zh/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | # Hello World(CLI) 2 | 3 | 本指南将引导你使用命令行界面(CLI)将数据简单地上传到 Permaweb。 4 | 5 | ## 系统需求 6 | 7 | - [NodeJS](https://nodejs.org) LTS 或更新版本 8 | 9 | ## 设置 10 | 11 | 在你的电脑上打开终端,并创建一个名为 `hello-permaweb` 的新文件夹。 12 | 13 | 接着切换到 `hello-permaweb` 目录,并使用以下指令创建一个新项目: 14 | 15 | ```sh 16 | npm init -y 17 | npm install arweave ardrive-cli 18 | ``` 19 | 20 | ## 生成钱包 21 | 22 | ```sh 23 | npx -y @permaweb/wallet > ~/.demo-arweave-wallet.json 24 | ``` 25 | 26 | ## 创建一个网页 27 | 28 | ```sh 29 | echo "

Hello Permaweb

" > index.html 30 | ``` 31 | 32 | ## 使用 ArDrive CLI 上传 33 | 34 | ```sh 35 | # Create a Drive 36 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arwe-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 37 | # Upload file 38 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arwe-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 39 | ") | .dataTxId') 40 | # open file from ar.io gateway 41 | open https://arweave.net/${TX_ID} 42 | ``` 43 | 44 | 恭喜,你已经将数据上传到 Arweave! 45 | -------------------------------------------------------------------------------- /src/zhTW/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | # Hello World(CLI) 2 | 3 | 本指南將引導你使用命令列介面(CLI)簡單地將資料上傳到 Permaweb。 4 | 5 | ## 系統需求 6 | 7 | - [NodeJS](https://nodejs.org) LTS 或更新版本 8 | 9 | ## 設定 10 | 11 | 在你的電腦上開啟終端機,並建立一個名為 `hello-permaweb` 的新資料夾。 12 | 13 | 接著切換到 `hello-permaweb` 目錄,並以以下指令建立一個新專案: 14 | 15 | ```sh 16 | npm init -y 17 | npm install arweave ardrive-cli 18 | ``` 19 | 20 | ## 產生錢包 21 | 22 | ```sh 23 | npx -y @permaweb/wallet > ~/.demo-arweave-wallet.json 24 | ``` 25 | 26 | ## 建立一個網頁 27 | 28 | ```sh 29 | echo "

Hello Permaweb

" > index.html 30 | ``` 31 | 32 | ## 使用 ArDrive CLI 上傳 33 | 34 | ```sh 35 | # Create a Drive 36 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arweave-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 37 | # Upload file 38 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arweave-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 39 | ") | .dataTxId') 40 | # open file from ar.io gateway 41 | open https://arweave.net/${TX_ID} 42 | ``` 43 | 44 | 恭喜,你已經將一些資料放到 Arweave! 45 | -------------------------------------------------------------------------------- /src/references/llms-txt.md: -------------------------------------------------------------------------------- 1 | # LLMs.txt 2 | 3 | The following is a [tool](https://fuel_permawebllms.arweave.net) that allows you to build your own LLMs.txt files based on docs from the permaweb ecosystem. 4 | 5 | 19 | 20 | 28 | 36 | -------------------------------------------------------------------------------- /src/ko/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | # 헬로 월드 (CLI) 2 | 3 | 이 가이드는 명령줄 인터페이스(CLI)를 사용하여 Permaweb에 데이터를 올리는 가장 간단한 방법을 안내합니다. 4 | 5 | ## 요구사항 6 | 7 | - [NodeJS](https://nodejs.org) LTS 이상 8 | 9 | ## 설정 10 | 11 | 컴퓨터에서 터미널을 열고 `hello-permaweb`이라는 새 폴더를 만드세요. 12 | 13 | 그런 다음 `hello-permaweb` 디렉터리로 `cd`한 후 다음으로 새 프로젝트를 설정하세요: 14 | 15 | ```sh 16 | npm init -y 17 | npm install arweave ardrive-cli 18 | ``` 19 | 20 | ## 지갑 생성 21 | 22 | ```sh 23 | npx -y @permaweb/wallet > ~/.demo-arweave-wallet.json 24 | ``` 25 | 26 | ## 웹페이지 생성 27 | 28 | ```sh 29 | echo "

Hello Permaweb

" > index.html 30 | ``` 31 | 32 | ## ArDrive CLI로 업로드 33 | 34 | ```sh 35 | # Create a Drive 36 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arweave-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 37 | # Upload file 38 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arweave-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 39 | ") | .dataTxId') 40 | # open file from ar.io gateway 41 | open https://arweave.net/${TX_ID} 42 | ``` 43 | 44 | 축하합니다 — 데이터를 Arweave에 업로드했습니다! 45 | -------------------------------------------------------------------------------- /src/zh/fundamentals/transactions/bundles.md: -------------------------------------------------------------------------------- 1 | # 交易捆绑/打包 2 | 3 | 交易捆绑(transaction bundle)是一种特殊的 Arweave 交易类型,可将多个其他交易及/或数据项组合于其中。 4 | 5 | 由于交易捆绑包含许多嵌套交易,它们是 Arweave 能够扩展到每秒数千笔交易能力的关键。 6 | 7 | 用户会将交易提交到捆绑服务(例如 [Turbo](https://ardrive.io/turbo-bundler/)),该服务会将它们与其他交易合并为一个「bundle(捆绑)」,并将其发布到网络上。 8 | 9 | ## 捆绑如何帮助 Arweave? 10 | 11 | ### 可用性 12 | 13 | 捆绑服务保证被捆绑的交易能可靠地发布到 Arweave,而不会被丢弃。 14 | 15 | 被捆绑交易的交易 ID 会立即可用,这表示数据可以立即被访问,就好像它已经在 Arweave 网络上一样。 16 | 17 | ### 可靠性 18 | 19 | 发布到 Arweave 的交易有时可能因为多种原因(例如网络活动高峰)而确认失败(导致交易被丢弃)。在这些情况下,交易可能会变成「孤儿」,即卡在 mempool(内存池)中并最终被移除。 20 | 21 | 捆绑服务通过持续尝试将捆绑数据发布到 Arweave 来解决此问题,确保其不会失败或卡在内存池中。 22 | 23 | ### 可扩展性 24 | 25 | 捆绑可存储最多 2256 笔交易,这些交易会以单一 Arweave 交易进行结算。这使得 Arweave 的区块空间能够扩展,以支持几乎任何使用场景。 26 | 27 | ## 什么是嵌套捆绑(Nested Bundles)? 28 | 29 | 捆绑可以包含要上传到 Arweave 的数据项,这些数据项本身也可以是一个捆绑。 30 | 31 | 这表示可以上传一个包含多个捆绑的捆绑,换句话说,即为 **嵌套捆绑**。 32 | 33 | 嵌套捆绑在理论上没有嵌套深度限制,意味着交易吞吐量可以大幅提升。 34 | 35 | 当你有多个不同分组的捆绑数据,希望能保证它们同时且一并到达 Arweave 时,嵌套捆绑会很有用。 36 | 37 | ## 来源与延伸阅读: 38 | 39 | [ArDrive Turbo](https://ardrive.io/turbo-bundler/) 40 | 41 | [ANS-104 规范](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md) 42 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/transactions/bundles.md: -------------------------------------------------------------------------------- 1 | # 交易捆绑/打包 2 | 3 | 交易捆绑(transaction bundle)是一種特殊的 Arweave 交易類型,可將多個其他交易及/或資料項目群組於其中。 4 | 5 | 由於交易捆綁包含許多巢狀交易,它們是 Arweave 能夠擴展到每秒數千筆交易能力的關鍵。 6 | 7 | 使用者會將交易提交到捆綁服務(例如 [Turbo](https://ardrive.io/turbo-bundler/)),該服務會將它們與其他交易合併為一個「bundle(捆綁)」,並將其發佈到網路上。 8 | 9 | ## 捆綁如何幫助 Arweave? 10 | 11 | ### 可用性 12 | 13 | 捆綁服務保證被捆綁的交易能可靠地發佈到 Arweave,而不會被丟棄。 14 | 15 | 被捆綁交易的交易 ID 會即時可用,這表示資料可以立即被存取,就好像它已經在 Arweave 網路上一樣。 16 | 17 | ### 可靠性 18 | 19 | 發佈到 Arweave 的交易有時可能因為多種原因(例如網路活動高峰)而確認失敗(導致交易被丟棄)。在這些情況下,交易可能會變成「孤兒」,即卡在 mempool(記憶池)中並最終被移除。 20 | 21 | 捆綁服務透過持續嘗試將捆綁資料發佈到 Arweave 來解決此問題,確保其不會失敗或卡在記憶池中。 22 | 23 | ### 可擴展性 24 | 25 | 捆綁可儲存最多 2256 筆交易,這些交易會以單一 Arweave 交易進行結算。這使得 Arweave 的區塊空間能夠擴展,以支援幾乎任何使用案例。 26 | 27 | ## 什麼是巢狀捆綁(Nested Bundles)? 28 | 29 | 捆綁可以包含要上傳到 Arweave 的資料項目,這些資料項目本身也可以是一個捆綁。 30 | 31 | 這表示可以上傳一個包含多個捆綁的捆綁,換句話說,即為 **嵌套捆綁**。 32 | 33 | 嵌套捆綁在理論上沒有巢狀深度限制,意味著交易吞吐量可以大幅提升。 34 | 35 | 當你有多個不同群組的捆綁資料,希望能保證它們同時且一併到達 Arweave 時,嵌套捆綁會很有用。 36 | 37 | ## 來源與延伸閱讀: 38 | 39 | [ArDrive Turbo](https://ardrive.io/turbo-bundler/) 40 | 41 | [ANS-104 規範](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md) 42 | -------------------------------------------------------------------------------- /src/zh/guides/wallets-and-keyfiles/creating-a-wallet.md: -------------------------------------------------------------------------------- 1 | # 创建钱包 2 | 3 | 用户在决定如何与 Arweave 互动之前,应先进行适当的尽职调查与研究。 4 | 5 | 用户可以通过像 [Wander](https://wander.app) 或 [Beacon](https://beaconwallet.app) 这类钱包,在不需要技术知识的情况下创建 Arweave 和 AO 钱包。 6 | 7 | Arweave 钱包也可以以程序方式生成,使用像 `arweave-js` 的库或像 `ardrive-cli` 的 CLI 工具。 8 | 9 | ## 使用 arweave-js 创建钱包 10 | 11 | ```sh 12 | npm install arweave 13 | ``` 14 | 15 | ```js 16 | arweave.wallets.generate().then((key) => { 17 | console.log(key); 18 | // { 19 | // "kty": "RSA", 20 | // "n": "3WquzP5IVTIsv3XYJjfw5L-t4X34WoWHwOuxb9V8w...", 21 | // "e": ... 22 | }); 23 | ``` 24 | 25 | ## 从命令行创建钱包 26 | 27 | 如果你偏好通过命令行应用创建 Arweave 钱包,可以使用 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli)。 28 | 29 | ```sh 30 | npm install -g ardrive-cli 31 | ``` 32 | 33 | 你可以使用指令 `generate-seedphrase` 来产生助记词: 34 | 35 | ```sh 36 | # Generate seed-phrase 37 | ardrive generate-seedphrase 38 | "this is an example twelve word seed phrase that you could use" 39 | ``` 40 | 41 | 或者,你可以使用 `generate-wallet` 来生成钱包文件: 42 | 43 | ```sh 44 | # Generate a wallet and store it in a chosen output file 45 | ardrive generate-wallet > /path/to/wallet/file.json 46 | ``` 47 | -------------------------------------------------------------------------------- /src/zhTW/guides/wallets-and-keyfiles/creating-a-wallet.md: -------------------------------------------------------------------------------- 1 | # 建立錢包 2 | 3 | 使用者在決定如何與 Arweave 互動之前,應先進行適當的盡職調查與研究。 4 | 5 | 使用者可以透過像 [Wander](https://wander.app) 或 [Beacon](https://beaconwallet.app) 這類錢包,在不需要技術知識的情況下建立 Arweave 和 AO 錢包。 6 | 7 | Arweave 錢包也可以以程式方式產生,使用像 `arweave-js` 的函式庫或像 `ardrive-cli` 的 CLI 工具。 8 | 9 | ## 使用 arweave-js 建立錢包 10 | 11 | ```sh 12 | npm install arweave 13 | ``` 14 | 15 | ```js 16 | arweave.wallets.generate().then((key) => { 17 | console.log(key); 18 | // { 19 | // "kty": "RSA", 20 | // "n": "3WquzP5IVTIsv3XYJjfw5L-t4X34WoWHwOuxb9V8w...", 21 | // "e": ... 22 | }); 23 | ``` 24 | 25 | ## 從指令列建立錢包 26 | 27 | 如果你偏好透過指令列應用程式建立 Arweave 錢包,可以使用 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli)。 28 | 29 | ```sh 30 | npm install -g ardrive-cli 31 | ``` 32 | 33 | 你可以使用指令 `generate-seedphrase` 來產生助記詞: 34 | 35 | ```sh 36 | # Generate seed-phrase 37 | ardrive generate-seedphrase 38 | "this is an example twelve word seed phrase that you could use" 39 | ``` 40 | 41 | 或者,你可以使用 `generate-wallet` 來產生錢包檔案: 42 | 43 | ```sh 44 | # Generate a wallet and store it in a chosen output file 45 | ardrive generate-wallet > /path/to/wallet/file.json 46 | ``` 47 | -------------------------------------------------------------------------------- /src/ja/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | # Hello World(CLI) 2 | 3 | このガイドでは、コマンドラインインターフェース(CLI)を使用して Permaweb にデータを配置する最も簡単な方法を説明します。 4 | 5 | ## 要件 6 | 7 | - [NodeJS](https://nodejs.org) LTS 以上 8 | 9 | ## セットアップ 10 | 11 | コンピュータでターミナルを開き、`hello-permaweb` という新しいフォルダを作成します。 12 | 13 | 次に、`hello-permaweb` ディレクトリに `cd` し、次のコマンドで新しいプロジェクトをセットアップします: 14 | 15 | ```sh 16 | npm init -y 17 | npm install arweave ardrive-cli 18 | ``` 19 | 20 | ## ウォレットの生成 21 | 22 | ```sh 23 | npx -y @permaweb/wallet > ~/.demo-arweave-wallet.json 24 | ``` 25 | 26 | ## ウェブページの作成 27 | 28 | ```sh 29 | echo "

Hello Permaweb

" > index.html 30 | ``` 31 | 32 | ## ArDrive CLI を使ったアップロード 33 | 34 | ```sh 35 | # Create a Drive 36 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arweave-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 37 | # Upload file 38 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arweave-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 39 | ") | .dataTxId') 40 | # open file from ar.io gateway 41 | open https://arweave.net/${TX_ID} 42 | ``` 43 | 44 | おめでとうございます。Arweave にデータを配置しました! 45 | -------------------------------------------------------------------------------- /src/ja/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | onboarding: true 3 | --- 4 | 5 | # Permaweb クックブック 6 | 7 | Permaweb クックブックは、Permaweb 上でアプリケーションを構築するための基本概念と参照を提供する開発者向けリソースです。各コンセプトとリファレンスは、Permaweb 開発エコシステムの特定の側面に焦点を当てつつ、追加の詳細や使用例を提供します。 8 | 9 | ## 開発者 10 | 11 | Arweave の開発コミュニティへようこそ。過去がブロックチェーンに永遠に刻まれ、未来は無限の可能性に満ちています。一緒に分散型ウェブを構築しましょう! 12 | 13 | [続きを読む](getting-started/quick-starts/hw-cli.html) 14 | 15 | ## 貢献 16 | 17 | このクックブックは、新しい Permaweb 開発者が貢献しやすいように設計されています。何かのやり方がわからなくても、クックブックに貢献することは学習する優れた方法です! 18 | 19 | すべての未解決の Issue はここで確認できます。貢献ガイドラインはここにあります。クックブックにコンセプト、ガイド、またはリファレンスが欠けている場合は、Issue を追加してください。 20 | 21 | [続きを読む](getting-started/contributing.md) 22 | 23 | ## クックブックの読み方 24 | 25 | Permaweb クックブックは目的別に分けられたセクションに分かれています。 26 | 27 | | セクション | 説明 | 28 | | ------------ | ------------------------------------------ | 29 | | 基礎 | Permaweb の開発で知っておくべき構成要素 | 30 | | ガイド | 開発用のさまざまなツールに関する短いガイド | 31 | | リファレンス | よく使われるコードスニペットのリファレンス | 32 | 33 | ## クイックスタート 34 | 35 | これらは、あらゆる経験レベルの開発者が Permaweb へコードをデプロイするのを支援する、小さなガイドです。 36 | 37 | - [Hello World(CLI)](getting-started/quick-starts/hw-cli.md) 38 | - [Hello World(Code)](getting-started/quick-starts/hw-code.md) 39 | -------------------------------------------------------------------------------- /src/ko/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | onboarding: true 3 | --- 4 | 5 | # Permaweb로 개발하기 6 | 7 | Permaweb 요리책은 Permaweb에서 애플리케이션을 구축하는 데 필요한 핵심 개념과 참고자료를 제공하는 개발자 자료입니다. 각 개념과 참고자료는 Permaweb 개발 생태계의 특정 측면에 초점을 맞추며 추가적인 세부사항과 사용 예시를 제공합니다. 8 | 9 | ## 개발자 10 | 11 | 과거가 블록체인에 영원히 새겨지고 미래에 무한한 가능성이 열리는 Arweave 개발 커뮤니티에 오신 것을 환영합니다. 함께 탈중앙화 웹을 구축해 봅시다! 12 | 13 | [자세히 보기](getting-started/quick-starts/hw-cli.html) 14 | 15 | ## 기여 16 | 17 | 이 요리책은 새로운 Permaweb 개발자가 쉽게 기여할 수 있도록 설계되었습니다. 무엇을 해야 할지 모를 때라도, 요리책에 기여하는 것은 배우는 좋은 방법입니다! 18 | 19 | 모든 오픈 이슈는 여기에서 확인하세요. 기여 가이드는 여기에서 확인하세요. 요리책에 개념, 가이드 또는 참고자료가 누락되어 있다고 생각되면 이슈를 추가해 주세요. 20 | 21 | [자세히 보기](getting-started/contributing.md) 22 | 23 | ## 요리책 읽는 방법 24 | 25 | Permaweb 요리책은 서로 다른 목표를 가진 여러 섹션으로 나뉩니다. 26 | 27 | | 섹션 | 설명 | 28 | | -------- | ----------------------------------------------- | 29 | | 기초 | 개발에 알아두면 좋은 Permaweb의 빌딩 블록 | 30 | | 가이드 | 개발을 위한 다양한 도구에 대한 짧은 분량의 안내 | 31 | | 참고자료 | 자주 필요한 코드 스니펫에 대한 참고 | 32 | 33 | ## 빠른 시작 34 | 35 | 다음은 모든 경험 수준의 개발자가 Permaweb에 코드를 배포하는 데 도움이 되는 소규모 가이드입니다. 36 | 37 | - [헬로 월드 (CLI)](getting-started/quick-starts/hw-cli.md) 38 | - [헬로 월드 (코드)](getting-started/quick-starts/hw-code.md) 39 | -------------------------------------------------------------------------------- /src/id/concepts/permaweb.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Selamat datang di Permaweb 6 | 7 | Permaweb mirip dengan web, tetapi bersifat permanen. Para pengembang membangun di atas layanan Permaweb untuk menciptakan aplikasi dan situs yang akan ada selamanya di Arweave. 8 | 9 | ![Permaweb](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 10 | 11 | Manfaat Permaweb. 12 | 13 | 1. Situs dan aplikasi bersifat permanen, Anda tidak perlu khawatir tentang mereka menghilang (bahkan jika tim yang mendukungnya berpindah). 14 | 2. Pengembang aplikasi harus memastikan setiap versi baru dari aplikasi benar-benar menambahkan nilai, jika tidak, mengapa Anda akan beralih dari yang lama. 15 | 3. Karena semua aplikasi Permaweb berbagi lapisan penyimpanan yang sama, Arweave, mereka dapat semua berkomposisi dengan data satu sama lain. 16 | 4. Data Anda dimiliki oleh dompet Anda dan dapat mengikuti Anda dari satu aplikasi ke aplikasi lainnya. 17 | 18 | ## Bandingkan Web Tradisional vs Permaweb 19 | 20 | ![Permaweb vs Tradisional](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 21 | 22 | Untuk informasi lebih lanjut tentang Permaweb, kunjungi [postingan di medium](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb). -------------------------------------------------------------------------------- /src/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | # Posting a Transaction using Dispatch 2 | 3 | Arweave browser wallets have the concept of dispatching transactions. 4 | 5 | If a transaction is under 100KB in size, it can be posted to Arweave for free! 6 | 7 | ## Dispatching a Transaction 8 | This can be done without any package dependencies for the client app. As long as the user has a browser wallet active and the data is less than 100KB, dispatched transactions are free and guaranteed to be confirmed on the network. 9 | 10 | ```js:no-line-numbers 11 | // use arweave-js to create a transaction 12 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 13 | 14 | // add some custom tags to the transaction 15 | tx.addTag('App-Name', 'PublicSquare') 16 | tx.addTag('Content-Type', 'text/plain') 17 | tx.addTag('Version', '1.0.1') 18 | tx.addTag('Type', 'post') 19 | 20 | // use the browser wallet to dispatch() the transaction 21 | let result = await window.arweaveWallet.dispatch(tx); 22 | 23 | // log out the transactino id 24 | console.log(result.id); 25 | ``` 26 | 27 | ## Resources 28 | * For an overview of all the ways you can post transactions, see the [Posting Transactions](../../fundamentals/transactions/index.md) section of the cookbook. 29 | -------------------------------------------------------------------------------- /src/ko/guides/wallets-and-keyfiles/creating-a-wallet.md: -------------------------------------------------------------------------------- 1 | # 지갑 생성하기 2 | 3 | 사용자는 Arweave와 상호작용하는 방법을 결정하기 전에 스스로 충분한 조사와 검토를 해야 합니다. 4 | 5 | [Wander](https://wander.app) 또는 [Beacon](https://beaconwallet.app) 같은 지갑을 사용하면 기술 지식 없이도 Arweave 및 AO 지갑을 생성할 수 있습니다. 6 | 7 | Arweave 지갑은 `arweave-js` 같은 라이브러리나 `ardrive-cli` 같은 CLI 도구를 사용하여 프로그래밍 방식으로 생성할 수도 있습니다. 8 | 9 | ## arweave-js로 지갑 생성하기 10 | 11 | ```sh 12 | npm install arweave 13 | ``` 14 | 15 | ```js 16 | arweave.wallets.generate().then((key) => { 17 | console.log(key); 18 | // { 19 | // "kty": "RSA", 20 | // "n": "3WquzP5IVTIsv3XYJjfw5L-t4X34WoWHwOuxb9V8w...", 21 | // "e": ... 22 | }); 23 | ``` 24 | 25 | ## 명령줄에서 지갑 생성하기 26 | 27 | 명령줄 애플리케이션을 통해 Arweave 지갑을 생성하려면 [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli)를 사용할 수 있습니다. 28 | 29 | ```sh 30 | npm install -g ardrive-cli 31 | ``` 32 | 33 | 다음 명령 `generate-seedphrase`로 시드 문구를 생성할 수 있습니다: 34 | 35 | ```sh 36 | # Generate seed-phrase 37 | ardrive generate-seedphrase 38 | "this is an example twelve word seed phrase that you could use" 39 | ``` 40 | 41 | 또는 `generate-wallet`를 사용하여 지갑 파일을 생성할 수 있습니다: 42 | 43 | ```sh 44 | # Generate a wallet and store it in a chosen output file 45 | ardrive generate-wallet > /path/to/wallet/file.json 46 | ``` 47 | -------------------------------------------------------------------------------- /src/ja/guides/wallets-and-keyfiles/creating-a-wallet.md: -------------------------------------------------------------------------------- 1 | # ウォレットの作成 2 | 3 | ユーザーは、Arweave とどのようにやり取りするかを決める前に、十分な調査と検討を行うべきです。 4 | 5 | ユーザーは、[Wander](https://wander.app) や [Beacon](https://beaconwallet.app) のようなウォレットを使用することで、技術的な知識がなくても Arweave および AO のウォレットを作成できます。 6 | 7 | Arweave のウォレットは、`arweave-js` のようなライブラリや `ardrive-cli` のような CLI ツールを使用してプログラムで生成することもできます。 8 | 9 | ## arweave-js でウォレットを作成する 10 | 11 | ```sh 12 | npm install arweave 13 | ``` 14 | 15 | ```js 16 | arweave.wallets.generate().then((key) => { 17 | console.log(key); 18 | // { 19 | // "kty": "RSA", 20 | // "n": "3WquzP5IVTIsv3XYJjfw5L-t4X34WoWHwOuxb9V8w...", 21 | // "e": ... 22 | }); 23 | ``` 24 | 25 | ## コマンドラインからウォレットを作成する 26 | 27 | コマンドラインアプリケーションで Arweave のウォレットを作成したい場合は、[ArDrive CLI](https://github.com/ardriveapp/ardrive-cli) を使用できます。 28 | 29 | ```sh 30 | npm install -g ardrive-cli 31 | ``` 32 | 33 | `generate-seedphrase` コマンドでシードフレーズを生成できます: 34 | 35 | ```sh 36 | # Generate seed-phrase 37 | ardrive generate-seedphrase 38 | "this is an example twelve word seed phrase that you could use" 39 | ``` 40 | 41 | または、`generate-wallet` を使用してウォレットファイルを生成できます: 42 | 43 | ```sh 44 | # Generate a wallet and store it in a chosen output file 45 | ardrive generate-wallet > /path/to/wallet/file.json 46 | ``` 47 | -------------------------------------------------------------------------------- /src/id/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Mengirimkan Transaksi dengan Menggunakan Dispatch 6 | Dompet Arweave di peramban memiliki konsep pengiriman transaksi. Jika ukuran transaksi kurang dari 100KB, maka transaksi tersebut dapat diposting secara gratis! 7 | ## Mengirimkan Transaksi 8 | Ini dapat dilakukan tanpa ketergantungan paket apa pun untuk aplikasi klien. Selama pengguna memiliki dompet peramban yang aktif dan data kurang dari 100KB, transaksi yang dikirimkan gratis dan dijamin akan dikonfirmasi di jaringan. 9 | 10 | ```js:no-line-numbers 11 | // menggunakan arweave-js untuk membuat transaksi 12 | let tx = await arweave.createTransaction({ data:"Hello World!" }) 13 | 14 | // menambahkan beberapa tag kustom ke transaksi 15 | tx.addTag('App-Name', 'PublicSquare') 16 | tx.addTag('Content-Type', 'text/plain') 17 | tx.addTag('Version', '1.0.1') 18 | tx.addTag('Type', 'post') 19 | 20 | // menggunakan dompet peramban untuk mendispatch() transaksi 21 | let result = await window.arweaveWallet.dispatch(tx); 22 | 23 | // mencetak ID transaksi 24 | console.log(result.id); 25 | ``` 26 | 27 | ## Sumber Daya 28 | * Untuk gambaran semua cara Anda dapat memposting transaksi, lihat bagian [Posting Transactions](../../concepts/post-transactions.md) dari cookbook. -------------------------------------------------------------------------------- /src/.vuepress/components/ToggleSidebarButton.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 25 | 26 | 54 | -------------------------------------------------------------------------------- /src/es/concepts/permaweb.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | # Bienvenido a la Permaweb 6 | 7 | La Permaweb es como la web, pero permanente. Los desarrolladores construyen sobre servicios de Permaweb para crear aplicaciones y sitios web que existirán para siempre en Arweave. 8 | 9 | ![Permaweb](https://arweave.net/lK3mptAgC2cijnPvogKaLCOsKSuPlvLu_6opnEOrpT0) 10 | 11 | Beneficios de la Permaweb. 12 | 13 | 1. Los sitios web y las aplicaciones son permanentes, nunca tendrás que preocuparte por que desaparezcan (incluso si el equipo que los soporta se mueve). 14 | 1. Los desarrolladores de aplicaciones tienen que asegurarse de que cada nueva versión de la aplicación realmente aporte valor, de lo contrario, ¿por qué cambiaríamos la antigua?. 15 | 1. Debido a que todas las aplicaciones de Permaweb comparten una capa de almacenamiento común, Arweave, pueden todas componerse con los datos unas de otras. 16 | 1. Tus datos son propiedad de tu billetera y pueden seguirte de una aplicación a otra. 17 | 18 | ## Compara la Web Tradicional con la Permaweb 19 | 20 | ![Permaweb vs Tradicional](https://arweave.net/5EP6mhpHsfnTsmFk7aVyK8jF6zqavxJT4kgx70mUc5I) 21 | 22 | Para obtener más información sobre la Permaweb, consulta el [artículo en Medium](https://arweave.medium.com/welcome-to-the-permaweb-ce0e6c73ddfb). 23 | -------------------------------------------------------------------------------- /src/ja/references/specs/arfs/content-types.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "entity-types.md" 3 | next: "privacy.md" 4 | --- 5 | 6 | # Content Types 7 | 8 | ArFS のすべてのトランザクションタイプは、トランザクションに含まれるデータの Content-Type(MIME タイプとしても知られる)を示す特定のメタデータタグを利用します。ArFS クライアントは、Arweave ゲートウェイやブラウザがこのコンテンツを適切にレンダリングできるように、データの MIME タイプを判定する必要があります。 9 | 10 | すべての公開ドライブ、フォルダ、およびファイル(メタデータのみ)のエンティティトランザクションは JSON 標準を使用するため、以下の Content-Type タグを持つ必要があります。 11 | 12 | ```json 13 | Content-Type: '' 14 | ``` 15 | 16 | ただし、ファイルのデータトランザクションについては、その MIME タイプを判定する必要があります。これは、該当するファイルのメタデータトランザクション JSON の`dataContentType`と、データトランザクション自体の Content-Type タグの両方に格納されます。 17 | 18 | ```json 19 | Content-Type: "" 20 | ``` 21 | 22 | すべてのプライベート(暗号化された)ドライブ、フォルダ、およびファイルのエンティティトランザクションは、暗号化されているため、次の Content-Type を持つ必要があります。 23 | 24 | ```json 25 | Content-Type: '' 26 | ``` 27 | 28 | [ArDrive-Core](https://github.com/ardriveapp/ardrive-core-js) は、ファイルの Content-Type を判定するためのメソッドを含んでいます。 29 | 30 | ## Other Tags 31 | 32 | ArFS 対応クライアントは、トランザクション上にアプリケーションを識別するために次のタグを含めるべきです。 33 | 34 | ```json 35 | App-Name: " ~/.demo-arweave-wallet.json 29 | ``` 30 | 31 | ## Crea una página web 32 | 33 | ```sh 34 | echo "

Hola Permaweb

" > index.html 35 | ``` 36 | 37 | ## Subir utilizando Irys 38 | 39 | ```sh 40 | # Create a Drive 41 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arweave-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 42 | # Upload file 43 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arweave-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 44 | ") | .dataTxId') 45 | # open file from ar.io gateway 46 | open https://g8way.io/${TX_ID} 47 | ``` 48 | -------------------------------------------------------------------------------- /src/zhTW/archive/concepts/vouch-system.md: -------------------------------------------------------------------------------- 1 | # Vouch(擔保) 2 | 3 | ## 概覽 4 | 5 | #### 動機 6 | 7 | Vouching 提供了一種去中心化的方法來抵禦 Sybil 攻擊。Sybil 攻擊是攻擊者透過建立大量偽匿名身分來顛覆網路,從而獲得不成比例的影響力。 8 | 9 | #### Vouch 協議 10 | 11 | Arweave 提出了 ANS-109 Vouch(身份斷言)的概念。這是一個標準,使用特定的交易格式以及一些標籤,允許任何人在 permaweb 上為任何 Arweave 位址的身份與人性進行「擔保」。 12 | 13 | 在 permaweb 上加入像 ANS-109 這類標準,有助於將 Sybil 攻擊與惡意行為者的影響降到最低,為 permaweb 使用者提供更安全的體驗。 14 | 15 | ## ANS-109 交易格式 16 | 17 | | 標籤名稱 | 是否為選填? | 標籤值 | 18 | | ------------------- | ------------ | ------------------------------------------------------------------------- | 19 | | App-Name | 否 | `Vouch` | 20 | | Vouch-For | 否 | Arweave `address` 在此交易中被擔保的位址 | 21 | | App-Version | 是 | `0.1` | 22 | | Verification-Method | 是 | 用於驗證該人的身份的方法。例如 - `Twitter`/`In-Person`/`Gmail`/`Facebook` | 23 | | User-Identifier | 是 | 根據 Verification Method 的使用者識別碼。例如 - `abhav@arweave.org` | 24 | 25 | ## 資源 26 | 27 | - [ANS-109 文件](https://github.com/ArweaveTeam/arweave-standards/blob/ans-109/ans/ANS-109.md) 28 | -------------------------------------------------------------------------------- /src/zh/fundamentals/gateways/index.md: -------------------------------------------------------------------------------- 1 | # Arweave 网络中的网关 2 | 3 | 网关(Gateways)作为 Arweave 网络与终端用户之间的接口,让 Permaweb 的数据能通过普通网页浏览器轻松访问。 4 | 5 | 这些服务常被形容为 Permaweb 的“前门”,允许用户以熟悉的类似网页体验与存储在区块链上的内容互动。 6 | 7 | 当您在 Arweave 上访问内容时,通常会使用类似以下的 URL 结构: 8 | 9 | ``` 10 | https:/// 11 | ``` 12 | 13 | 这使得 HTML 文件可以作为网页渲染、图像能正确显示,其他数据类型也能适当提供——即使内容存储在去中心化的网络上,仍能创造类似传统网络的体验。 14 | 15 | ## 网关的主要功能 16 | 17 | 网关除了基本内容提供外,还提供若干关键服务: 18 | 19 | - **内容缓存**:存储常被访问的交易以提升性能 20 | - **数据索引**:提供 GraphQL 接口,以通过标签与元数据查询交易 21 | - **网络分发**:协助将交易散布至整个 Arweave 网络 22 | - **内容审查**:套用内容策略以决定提供哪些数据 23 | 24 | ## 与核心协议的关系 25 | 26 | 重要的是要理解,网关并非 Arweave 核心协议的一部分。此一区别带来若干影响: 27 | 28 | - 运营网关与运行用于保护网络的节点是分开的 29 | - 协议层级并未为网关运营者提供内建的激励机制 30 | - 网关服务可以实现自己的经济模型与激励措施 31 | - 应用可以运营自己的网关以提升性能 32 | 33 | 这种分离让生态系统更具弹性与去中心化,不同的网关运营者可以尝试各种服务模式。 34 | 35 | ## 热门网关服务 36 | 37 | 目前有数个网关服务支持 Arweave 生态系: 38 | 39 | - [arweave.net](https://arweave.net/) - 由 Arweave 团队运营 40 | - [arweave.world](https://cookbook.arweave.world/) 41 | - [arweave.asia](https://cookbook.arweave.asia) 42 | - [arweave.live](https://arweave.live/) 43 | - [g8way.io](https://g8way.io) 44 | 45 | [AR.IO](https://ar.io/) 项目正致力于让网关的运行更容易上手,可能会提升网络访问点的去中心化程度。 46 | 47 | ## 延伸阅读 48 | 49 | - [ArWiki Gateway Documentation](https://arwiki.wiki/#/en/gateways) 50 | - [AR.IO Project](https://ar.io/) 51 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/gateways/index.md: -------------------------------------------------------------------------------- 1 | # Arweave 網路中的閘道 2 | 3 | 閘道(Gateways)作為 Arweave 網路與終端使用者之間的介面,讓 Permaweb 的資料能透過一般網頁瀏覽器輕鬆存取。 4 | 5 | 這些服務常被形容為 Permaweb 的「前門」,允許使用者以熟悉的類網頁體驗與儲存在區塊鏈上的內容互動。 6 | 7 | 當您在 Arweave 上存取內容時,通常會使用類似以下的 URL 結構: 8 | 9 | ``` 10 | https:/// 11 | ``` 12 | 13 | 這使得 HTML 檔案可以作為網頁渲染、影像能正確顯示,其他資料類型也能適當提供——即使內容儲存在去中心化的網路上,仍能創造類似傳統網路的體驗。 14 | 15 | ## 閘道的主要功能 16 | 17 | 閘道除了基本內容提供外,還提供數項關鍵服務: 18 | 19 | - **內容快取**:儲存常被存取的交易以提升效能 20 | - **資料索引**:提供 GraphQL 介面,以透過標籤與元資料查詢交易 21 | - **網路分發**:協助將交易散佈至整個 Arweave 網路 22 | - **內容審查**:套用內容政策以決定提供哪些資料 23 | 24 | ## 與核心協定的關係 25 | 26 | 重要的是要理解,閘道並非 Arweave 核心協定的一部分。這項區別帶來若干影響: 27 | 28 | - 營運閘道與執行用以保護網路的節點是分開的 29 | - 協定層級並未為閘道營運者提供內建的激勵機制 30 | - 閘道服務可以實作自己的經濟模型與激勵措施 31 | - 應用程式可以營運自己的閘道以提升效能 32 | 33 | 這種分離讓生態系統更具彈性與去中心化,不同的閘道營運者可以嘗試各種服務模式。 34 | 35 | ## 熱門閘道服務 36 | 37 | 目前有數個閘道服務支援 Arweave 生態系: 38 | 39 | - [arweave.net](https://arweave.net/) - 由 Arweave 團隊營運 40 | - [arweave.world](https://cookbook.arweave.world/) 41 | - [arweave.asia](https://cookbook.arweave.asia) 42 | - [arweave.live](https://arweave.live/) 43 | - [g8way.io](https://g8way.io) 44 | 45 | [AR.IO](https://ar.io/) 專案正致力於讓閘道的運作更容易上手,可能會提升網路存取點的去中心化程度。 46 | 47 | ## 延伸閱讀 48 | 49 | - [ArWiki Gateway Documentation](https://arwiki.wiki/#/en/gateways) 50 | - [AR.IO Project](https://ar.io/) 51 | -------------------------------------------------------------------------------- /src/zh/references/glossary.md: -------------------------------------------------------------------------------- 1 | # 词汇表 2 | 3 | 下列为内嵌的 [词汇表工具](https://glossary.arweave.net/),用于 permaweb 生态系统。 4 | 5 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/zhTW/references/glossary.md: -------------------------------------------------------------------------------- 1 | # 詞彙表 2 | 3 | 下列為內嵌的 [詞彙表工具](https://glossary.arweave.net/),用於 permaweb 生態系統。 4 | 5 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/ja/references/glossary.md: -------------------------------------------------------------------------------- 1 | # 用語集 2 | 3 | 以下は permaweb エコシステム向けの埋め込み[用語集ツール](https://glossary.arweave.net/)です。 4 | 5 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/ko/references/glossary.md: -------------------------------------------------------------------------------- 1 | # 용어집 2 | 3 | 다음은 permaweb 생태계를 위한 임베디드 [용어집 도구](https://glossary.arweave.net/)입니다. 4 | 5 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/getting-started/quick-starts/hw-cli.md: -------------------------------------------------------------------------------- 1 | # Hello World (CLI) 2 | 3 | This guide walks you through the most simple way to get data on to the Permaweb using a command-line interface (CLI). 4 | 5 | ## Requirements 6 | 7 | - [NodeJS](https://nodejs.org) LTS or greater 8 | 9 | ## Setup 10 | 11 | Open up a terminal on your computer, and create a new folder called `hello-permaweb`. 12 | 13 | Then, `cd` into the `hello-permaweb` directory, and setup a new project with: 14 | 15 | ```sh 16 | npm init -y 17 | npm install arweave ardrive-cli 18 | ``` 19 | 20 | ## Generate a wallet 21 | 22 | ```sh 23 | npx -y @permaweb/wallet > ~/.demo-arweave-wallet.json 24 | ``` 25 | 26 | ## Create a webpage 27 | 28 | ```sh 29 | echo "

Hello Permaweb

" > index.html 30 | ``` 31 | 32 | ## Upload using ArDrive CLI 33 | 34 | ```sh 35 | # Create a Drive 36 | FOLDER_ID=$(npx ardrive create-drive -n public -w ~/.demo-arweave-wallet.json --turbo | jq -r '.created[] | select(.type == "folder") | .entityId') 37 | # Upload file 38 | TX_ID=$(npx ardrive upload-file -l index.html --content-type text/html -w ~/.demo-arweave-wallet.json --turbo -F ${FOLDER_ID} | jq -r '.created[] | select(.type == "file 39 | ") | .dataTxId') 40 | # open file from ar.io gateway 41 | open https://arweave.net/${TX_ID} 42 | ``` 43 | 44 | Congratulations, you've put some data on Arweave! 45 | -------------------------------------------------------------------------------- /src/archive/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | # Atomic Token Concept and Principles 2 | 3 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 4 | 5 | An Atomic Token is a single permanent identifier that references data and a SmartWeave Contract on the Permaweb. 6 | 7 | ## Specifications 8 | 9 | Data MUST be stored on the arweave network and referencable by a Transaction Identifier 10 | 11 | Contract MUST implement a `balances` object that represents the ownership of the Atomic Token 12 | 13 | Contract MUST implement a `transfer` function that takes the following arguments: 14 | - target {WalletAddress or Contract} 15 | - qty {Number} 16 | 17 | > The transfer function should transfer ownership from the caller to the target 18 | 19 | ## Options 20 | 21 | _These are implementation options that can make the Atomic Token discoverable and tradeable on the Permaweb_ 22 | 23 | [Verto Flex](https://github.com/useverto/flex) - The Flex Library gives your atomic token to be sold or purchased without trusting an exchange. 24 | 25 | [Discoverability Tags - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - These additional tags can help Permaweb applications and services discover your token. 26 | 27 | [Check out the Guide](../guides/atomic-tokens/intro.md) -------------------------------------------------------------------------------- /src/references/glossary.md: -------------------------------------------------------------------------------- 1 | # Glossary 2 | 3 | The following is an embedded [glossary tool](https://glossary.arweave.net/) for the permaweb ecosystem. 4 | 5 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/id/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Konsep dan Prinsip Atomic Token 6 | 7 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 8 | 9 | Sebuah Atomic Token adalah identifier permanen tunggal yang merujuk pada data dan Kontrak SmartWeave di Permaweb. 10 | 11 | ## Spesifikasi 12 | 13 | Data HARUS disimpan di jaringan arweave dan dapat diakses dengan Menggunakan Identifier Transaksi 14 | 15 | Kontrak HARUS mengimplementasikan objek `balances` yang mewakili kepemilikan Atomic Token 16 | 17 | Kontrak HARUS mengimplementasikan fungsi `transfer` yang mengambil argumen berikut: 18 | - target {Alamat Wallet atau Kontrak} 19 | - qty {Jumlah} 20 | 21 | > Fungsi transfer seharusnya mentransfer kepemilikan dari pemanggil ke target 22 | 23 | ## Opsi 24 | 25 | _Opsi implementasi yang dapat membuat Atomic Token ditemukan dan diperdagangkan di Permaweb_ 26 | 27 | [Verto Flex](https://github.com/useverto/flex) - Pustaka Flex memberikan Atomic token Anda untuk dijual atau dibeli tanpa harus percaya kepada bursa. 28 | 29 | [Tanda Temuan - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - Tag tambahan ini dapat membantu aplikasi dan layanan Permaweb menemukan token Anda. 30 | 31 | [Periksa Panduan Ini](../guides/atomic-tokens/intro.md) -------------------------------------------------------------------------------- /src/archive/concepts/vouch-system.md: -------------------------------------------------------------------------------- 1 | # Vouch 2 | 3 | ## Overview 4 | 5 | #### Motivation 6 | 7 | Vouching provides a decentralized approach to Sybil resistance. A Sybil attack is when an attacker subverts the network by creating a large number of pseudonymous identities to gain a disproportionately large influence. 8 | 9 | #### Vouch Protocol 10 | 11 | Arweave introduced the concept of the ANS-109 Vouch (Assertion of Identity). It is a standard that uses a specific transaction format along with some tags to allows anyone on the permaweb to "vouch" for the identity and humanity of any Arweave address. 12 | 13 | Adding a standard such as the ANS-109 to the permaweb will help minimize Sybil attacks and bad actors, making it a safer experience for permaweb users. 14 | 15 | ## ANS-109 Transaction Format 16 | | Tag Name | _Optional?_ | Tag Value | 17 | |---|---|---| 18 | |App-Name|False|`Vouch`| 19 | |Vouch-For|False|Arweave `address` that is being vouched for in this transaction| 20 | |App-Version|True|`0.1`| 21 | |Verification-Method|True| Method of verification of identity for the person. Example - `Twitter`/`In-Person`/`Gmail`/`Facebook`| 22 | |User-Identifier|True|An identifier for the user based on the Verification Method. Example - `abhav@arweave.org`| 23 | 24 | ## Resources 25 | * [ANS-109 Docs](https://github.com/ArweaveTeam/arweave-standards/blob/ans-109/ans/ANS-109.md) 26 | -------------------------------------------------------------------------------- /src/es/concepts/bundlers.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | # Servicios de empaquetamiento 6 | 7 | --- 8 | 9 | Con los servicios de empaquetamiento, los usuarios pueden publicar sus transacciones de datos en un servicio centralizado para que se "empaqueten" con las transacciones de otros usuarios y se publiquen como una sola transacción Arweave en un bloque de Arweave próximo. 10 | 11 | ### ¿Qué es un paquete? 12 | 13 | --- 14 | 15 | Puede encontrar una descripción de los paquetes de transacción y sus beneficios [aquí](/concepts/bundles.md). 16 | 17 | ### ¿Qué es un nodo Empaquetador? 18 | 19 | --- 20 | 21 | Un empaquetador es un nodo que se encarga de aceptar transacciones o elementos de datos de los usuarios, empaquetarlos y publicarlos en la red Arweave (con la garantía de que se cargarán con un identificador de transacción específico). 22 | 23 | Que aseguran que los datos se mantengan hasta que se carguen en Arweave. 24 | 25 | ### Apoyando múltiples monedas 26 | 27 | --- 28 | 29 | Una característica clave de los servicios de empaquetamiento es que, debido a que pagan por la publicación de la transacción base de Arweave (usando tokens AR), pueden optar por habilitar pagos de tarifas de almacenamiento con una variedad de tokens diferentes. Esta es la principal vía de entrada para que otras cadenas habiliten el almacenamiento permanente de Arweave para sus usuarios. 30 | -------------------------------------------------------------------------------- /src/zh/references/specs/ans/ANS-101.md: -------------------------------------------------------------------------------- 1 | # [ANS-101:网关功能端点](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-101.md) 2 | 3 | 状态: 草案 4 | 5 | 版本: - 6 | 7 | ## 摘要 8 | 9 | 本文件描述一个 HTTP 端点与 schema,Arweave 网关应该对外揭露此端点,以便网关用户能判定该网关的功能支持情况。 10 | 11 | ## 动机 12 | 13 | 随着 Arweave 区块链入口网关生态系统的扩展,这些网关将会提供不同的功能。网关的用户需要能够判定该网关是否支持他们用于特定应用或目的所需的功能。 14 | 15 | ## 规范 16 | 17 | ### 1. HTTP 端点 18 | 19 | 遵循此规范的网关 MUST 对外提供一个 HTTP 端点,该端点在路径 `/info/capabilities` 响应对 `GET` 请求,返回一个符合第 2 节 schema 的 JSON 文档,并准确列出该网关所支持的能力。 20 | 21 | ### 2. 响应结构 22 | 23 | 端点返回的 JSON 文档 MUST 为一个对象,包含一个 `capabilities` 键,其为一个 `capability` 对象的数组。 24 | 25 | 一个 capability 对象至少具有下列结构 - 26 | 27 | - `name`:能力名称。此名称 MUST 为全局唯一名称。 28 | - `version`:能力版本。此字段 MUST 为一个 semver 版本字符串。 29 | 30 | capability 对象 MAY 遵循该能力所特有的额外 schema。 31 | 32 | 示例响应主体:(名称、版本与能力对象仅为 _示例_。) 33 | 34 | ```json 35 | { 36 | "capabilities": [ 37 | { "name": "arql", "version": "1.0.0" }, 38 | { "name": "graphql", "version": "1.0.0" }, 39 | { "name": "arweave-id-lookup", "verson": "1.0.0" }, 40 | { "name": "post-bundled-tx-json", "version": "1.0.0" }, 41 | { "name": "post-delegated-tx", "version": "1.0.0", "maxFee": "0.00125" }, 42 | { 43 | "name": "push-on-event-api", 44 | "version": "1.0.0", 45 | "platforms": ["push-android", "push-ios", "web-push-firefox", "webhook"] 46 | } 47 | ] 48 | } 49 | ``` 50 | -------------------------------------------------------------------------------- /src/zhTW/references/specs/ans/ANS-101.md: -------------------------------------------------------------------------------- 1 | # [ANS-101:網關功能端點](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-101.md) 2 | 3 | 狀態: 草案 4 | 5 | 版本: - 6 | 7 | ## 摘要 8 | 9 | 本文件描述一個 HTTP 端點與 schema,Arweave 網關應該對外揭露此端點,以便網關使用者能判定該網關的功能支援情況。 10 | 11 | ## 動機 12 | 13 | 隨著 Arweave 區塊鏈入口網關生態系的擴展,這些網關將會提供不同的功能。網關的使用者需要能判定該網關是否支援他們用於特定應用或目的所需的功能。 14 | 15 | ## 規範 16 | 17 | ### 1. HTTP 端點 18 | 19 | 遵循此規範的網關 MUST 對外提供一個 HTTP 端點,該端點在路徑 `/info/capabilities` 回應對 `GET` 請求,回傳一個符合第 2 節 schema 的 JSON 文件,並準確列出該網關所支援的能力。 20 | 21 | ### 2. 回應結構 22 | 23 | 端點回傳的 JSON 文件 MUST 為一個物件,包含一個 `capabilities` 鍵,其為一個 `capability` 物件的陣列。 24 | 25 | 一個 capability 物件至少具有下列結構 - 26 | 27 | - `name`:能力名稱。此名稱 MUST 為全域唯一名稱。 28 | - `version`:能力版本。此欄位 MUST 為一個 semver 版本字串。 29 | 30 | capability 物件 MAY 遵循該能力所特有的額外 schema。 31 | 32 | 範例回應主體:(名稱、版本與能力物件僅為 _範例_。) 33 | 34 | ```json 35 | { 36 | "capabilities": [ 37 | { "name": "arql", "version": "1.0.0" }, 38 | { "name": "graphql", "version": "1.0.0" }, 39 | { "name": "arweave-id-lookup", "verson": "1.0.0" }, 40 | { "name": "post-bundled-tx-json", "version": "1.0.0" }, 41 | { "name": "post-delegated-tx", "version": "1.0.0", "maxFee": "0.00125" }, 42 | { 43 | "name": "push-on-event-api", 44 | "version": "1.0.0", 45 | "platforms": ["push-android", "push-ios", "web-push-firefox", "webhook"] 46 | } 47 | ] 48 | } 49 | ``` 50 | -------------------------------------------------------------------------------- /src/ko/archive/concepts/vouch-system.md: -------------------------------------------------------------------------------- 1 | # Vouch 2 | 3 | ## 개요 4 | 5 | #### 동기 6 | 7 | Vouching은 Sybil 공격 방지에 대한 분산형 접근 방식을 제공합니다. Sybil 공격은 공격자가 다수의 가명 신원을 생성하여 네트워크를 교란하고 불균형적으로 큰 영향력을 확보하는 경우를 말합니다. 8 | 9 | #### Vouch 프로토콜 10 | 11 | Arweave는 ANS-109 Vouch(신원 주장) 개념을 도입했습니다. 이는 특정 트랜잭션 형식과 몇몇 태그를 사용하여 permaweb 상의 누구나 어떤 Arweave 주소의 신원과 인간성을 "vouch"(보증)할 수 있도록 하는 표준입니다. 12 | 13 | ANS-109와 같은 표준을 permaweb에 추가하면 Sybil 공격 및 악성 행위자를 최소화하는 데 도움이 되어 permaweb 사용자에게 더 안전한 경험을 제공합니다. 14 | 15 | ## ANS-109 트랜잭션 형식 16 | 17 | | 태그 이름 | _선택 여부?_ | 태그 값 | 18 | | ------------------- | ------------ | ---------------------------------------------------------------------- | 19 | | App-Name | False | `Vouch` | 20 | | Vouch-For | False | Arweave `address` that is being vouched for in this transaction | 21 | | App-Version | True | `0.1` | 22 | | Verification-Method | True | 사람의 신원 확인 방법. 예시 - `Twitter`/`In-Person`/`Gmail`/`Facebook` | 23 | | User-Identifier | True | 검증 방법에 기반한 사용자 식별자. 예시 - `abhav@arweave.org` | 24 | 25 | ## 리소스 26 | 27 | - [ANS-109 문서](https://github.com/ArweaveTeam/arweave-standards/blob/ans-109/ans/ANS-109.md) 28 | -------------------------------------------------------------------------------- /src/es/guides/posting-transactions/dispatch.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # Publicar una Transacción usando Dispatch 5 | Las carteras de Arweave en el navegador tienen el concepto de despachar transacciones. ¡Si la transacción tiene un tamaño menor a 100KB se puede publicar de forma gratuita! 6 | ## Despachando una Transacción 7 | Esto se puede hacer sin ninguna dependencia de paquetes para la aplicación del cliente. Siempre y cuando el usuario tenga una cartera activa en el navegador y los datos sean menores a 100KB, las transacciones despachadas son gratuitas y se garantiza que serán confirmadas en la red. 8 | 9 | ```js:no-line-numbers 10 | // usar arweave-js para crear una transacción 11 | let tx = await arweave.createTransaction({ data:"¡Hola Mundo!" }) 12 | 13 | // agregar algunas etiquetas personalizadas a la transacción 14 | tx.addTag('App-Name', 'PublicSquare') 15 | tx.addTag('Content-Type', 'text/plain') 16 | tx.addTag('Version', '1.0.1') 17 | tx.addTag('Type', 'post') 18 | 19 | // usar la cartera del navegador para despachar() la transacción 20 | let result = await window.arweaveWallet.dispatch(tx); 21 | 22 | // registrar el ID de la transacción 23 | console.log(result.id); 24 | ``` 25 | 26 | ## Recursos 27 | * Para una visión general de todas las formas en las que se pueden publicar transacciones, consulta la sección [Publicar Transacciones](../../concepts/post-transactions.md) del libro de cocina. -------------------------------------------------------------------------------- /src/zh/fundamentals/gateways/graphql.md: -------------------------------------------------------------------------------- 1 | # GraphQL 查询 2 | 3 | GraphQL 在寻找交易或区块的 **元数据**(例如交易 ID、标签等)时特别有用。 4 | 5 | 当您需要访问与交易相关的实际数据时,请使用 HTTP API 或其他相关的 API/SDK。 6 | 7 | ## 概览 8 | 9 | 随着时间推移,实现 GraphQL 接口的索引服务已成为在 Arweave 上查询交易数据的首选方法。索引服务会在交易与区块被加入网络时读取它们的标头(通常来自该服务所操作的完整 Arweave 节点)。读取后,标头信息会插入到可供索引与高效查询的数据库中。索引服务使用这个数据库为客户端提供一个 GraphQL 端点以供查询。 10 | 11 | GraphQL 有几项优势,使其非常适合检索查询数据集。它让索引服务能建立单一端点来查询各类类型的数据。该服务能在单一请求中返回多个资源,而不是像使用 REST API 时为每个资源发出一次 HTTP 请求。通过 GraphQL,客户端可以在单次往返中批量多个请求,并精确指定所需的数据,从而提高性能。 12 | 13 | ## 基本查询范例 14 | 15 | 以下 GraphQL 示例会查询来自指定拥有者钱包地址且具有一个值为 "manifest" 的 "Type" 标签的所有交易 ID。欲了解更多关于标签的信息,请阅读 [交易标签](../transactions/tags.md) 指南。 16 | 17 | ```js:no-line-numbers 18 | const queryObject = { 19 | query: 20 | `{ 21 | transactions ( 22 | owners:["${address}"], 23 | tags: [ 24 | { 25 | name: "Type", 26 | values: ["manifest"] 27 | } 28 | ] 29 | ) { 30 | edges { 31 | node { 32 | id 33 | } 34 | } 35 | } 36 | }` 37 | }; 38 | const results = await arweave.api.post('/graphql', queryObject); 39 | ``` 40 | 41 | ## 公开的索引服务 42 | 43 | [https://arweave.net/graphql](https://arweave.net/graphql) 44 | 45 | [https://arweave-search.goldsky.com/graphql](https://arweave-search.goldsky.com/graphql) 46 | 47 | ## 资源 48 | 49 | - [查询 Arweave 指南](../../guides/querying-arweave/querying-arweave.md) 50 | - [ar-gql 套件](../../guides/querying-arweave/ar-gql.md) 51 | - [GraphQL 参考](../../references/gql.md) 52 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/gateways/graphql.md: -------------------------------------------------------------------------------- 1 | # GraphQL 查詢 2 | 3 | GraphQL 在尋找交易或區塊的 **元資料**(例如交易 ID、標籤等)時特別有用。 4 | 5 | 當您需要存取與交易相關的實際資料時,請使用 HTTP API 或其他相關的 API/SDK。 6 | 7 | ## 概覽 8 | 9 | 隨著時間推移,實作 GraphQL 介面的索引服務已成為在 Arweave 上查詢交易資料的首選方法。索引服務會在交易與區塊被加入網路時讀取它們的標頭(通常來自該服務所操作的完整 Arweave 節點)。讀取後,標頭資訊會插入到可供索引與高效率查詢的資料庫中。索引服務使用這個資料庫為用戶端提供一個 GraphQL 端點以供查詢。 10 | 11 | GraphQL 有幾項優勢,使其非常適合擷取查詢資料集。它讓索引服務能建立單一端點來查詢各種類型的資料。該服務能在單一請求中回傳多個資源,而不是像使用 REST API 時為每個資源發出一次 HTTP 請求。透過 GraphQL,用戶端可以在單次往返中批次多個請求,並精確指定所需的資料,從而提高效能。 12 | 13 | ## 基本查詢範例 14 | 15 | 以下 GraphQL 範例會查詢來自指定擁有者錢包位址且具有一個值為 "manifest" 的 "Type" 標籤的所有交易 ID。欲了解更多關於標籤的資訊,請閱讀 [交易標籤](../transactions/tags.md) 指南。 16 | 17 | ```js:no-line-numbers 18 | const queryObject = { 19 | query: 20 | `{ 21 | transactions ( 22 | owners:["${address}"], 23 | tags: [ 24 | { 25 | name: "Type", 26 | values: ["manifest"] 27 | } 28 | ] 29 | ) { 30 | edges { 31 | node { 32 | id 33 | } 34 | } 35 | } 36 | }` 37 | }; 38 | const results = await arweave.api.post('/graphql', queryObject); 39 | ``` 40 | 41 | ## 公開的索引服務 42 | 43 | [https://arweave.net/graphql](https://arweave.net/graphql) 44 | 45 | [https://arweave-search.goldsky.com/graphql](https://arweave-search.goldsky.com/graphql) 46 | 47 | ## 資源 48 | 49 | - [查詢 Arweave 指南](../../guides/querying-arweave/querying-arweave.md) 50 | - [ar-gql 套件](../../guides/querying-arweave/ar-gql.md) 51 | - [GraphQL 參考](../../references/gql.md) 52 | -------------------------------------------------------------------------------- /src/id/guides/exm/js-sdk/sdk-intro.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # SDK Execution Machine 6 | 7 | SDK JavaScript memungkinkan penggunaan Execution Machine (EXM) dalam aplikasi JavaScript dan TypeScript. Untuk menggunakan SDK, langkah-langkah pengaturan berikut diperlukan. 8 | 9 | ## Instalasi 10 | 11 | Untuk menginstal EXM dalam proyek Anda, Anda dapat menggunakan `npm` atau `yarn`. 12 | 13 | 14 | 15 | 16 | ```bash 17 | npm install @execution-machine/sdk 18 | ``` 19 | 20 | 21 | 22 | 23 | ```bash 24 | yarn add @execution-machine/sdk 25 | ``` 26 | 27 | 28 | 29 | 30 | ## Impor 31 | 32 | Saat menggunakan EXM dengan proyek Anda, paket harus diimpor sebagai berikut. 33 | 34 | 35 | 36 | 37 | ```js 38 | import { Exm } from '@execution-machine/sdk'; 39 | ``` 40 | 41 | 42 | 43 | ## Membuat Instance 44 | 45 | Untuk berinteraksi dengan EXM setelah instalasi dan impor, sebuah instance harus dibuat. 46 | 47 | 48 | 49 | 50 | ```js 51 | const exmInstance = new Exm({ token: 'MY_EXM_TOKEN' }); 52 | ``` 53 | 54 | 55 | 56 | ## Ringkasan 57 | 58 | Panduan-panduan berikut akan menunjukkan cara mendeploy fungsi tanpa server menggunakan EXM JS SDK, dan bagaimana berinteraksi dengan mereka. -------------------------------------------------------------------------------- /src/ko/fundamentals/transactions/bundles.md: -------------------------------------------------------------------------------- 1 | # Transaction Bundles 2 | 3 | 트랜잭션 번들은 여러 다른 트랜잭션 및/또는 데이터 항목을 하나로 그룹화할 수 있는 Arweave의 특수한 유형의 트랜잭션입니다. 4 | 5 | 트랜잭션 번들은 다수의 중첩된 트랜잭션을 포함하고 있기 때문에, 초당 수천 건의 트랜잭션을 처리할 수 있는 Arweave의 확장성에 핵심적입니다. 6 | 7 | 사용자는 [Turbo](https://ardrive.io/turbo-bundler/)와 같은 번들링 서비스에 트랜잭션을 제출하면, 해당 서비스가 이를 다른 트랜잭션들과 함께 ‘번들’로 결합하여 네트워크에 게시합니다. 8 | 9 | ## 번들이 Arweave에 어떻게 도움이 되는가? 10 | 11 | ### 가용성 12 | 13 | 번들링 서비스는 번들된 트랜잭션이 누락 없이 안정적으로 Arweave에 게시되도록 보장합니다. 14 | 15 | 번들된 트랜잭션의 트랜잭션 ID는 즉시 제공되므로, 데이터가 이미 Arweave 네트워크에 있는 것처럼 즉시 액세스할 수 있습니다. 16 | 17 | ### 신뢰성 18 | 19 | Arweave에 게시된 트랜잭션은 높은 네트워크 활동 등 여러 이유로 확인에 실패(드롭된 트랜잭션)할 수 있습니다. 이러한 경우 트랜잭션은 메모리풀(mempool)에 갇혀 결국 제거되어 **고립(orphaned)** 상태가 될 수 있습니다. 20 | 21 | 번들러는 번들된 데이터를 Arweave에 지속적으로 재시도하여 게시함으로써, 실패하거나 메모리풀에 갇히지 않도록 보장합니다. 22 | 23 | ### 확장성 24 | 25 | 번들은 최대 2256개의 트랜잭션을 저장할 수 있으며, 이들 각각은 Arweave에서 단일 트랜잭션으로 정산됩니다. 이는 Arweave의 블록스페이스가 거의 모든 사용 사례를 지원하도록 확장될 수 있게 합니다. 26 | 27 | ## 중첩 번들이란 무엇인가? 28 | 29 | 번들은 Arweave에 업로드할 데이터 항목을 포함할 수 있으며, 그 데이터 항목 자체가 또 다른 번들일 수 있습니다. 30 | 31 | 즉, 번들의 번들을 업로드할 수 있으며, 다시 말해 **중첩 번들**이 가능합니다. 32 | 33 | 중첩 번들의 중첩 깊이에는 이론적 제한이 없으므로 트랜잭션 처리량을 대폭 증가시킬 수 있습니다. 34 | 35 | 중첩 번들은 서로 함께 동시에 Arweave에 도달해야 함을 보장하고 싶은 서로 다른 그룹의 번들된 데이터를 다룰 때 유용할 수 있습니다. 36 | 37 | ## 출처 및 추가 자료: 38 | 39 | [ArDrive Turbo](https://ardrive.io/turbo-bundler/) 40 | 41 | [ANS-104 Standard](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md) 42 | -------------------------------------------------------------------------------- /src/zh/guides/graphql/ar-gql.md: -------------------------------------------------------------------------------- 1 | # ar-gql 2 | 3 | 此套件是在 GraphQL 之上的一个最小封装层,支持使用查询变量的参数化查询,并实现分页结果的管理。 4 | 5 | ## 安装 6 | 7 | 要安装 `ar-gql`,请执行 8 | 9 | 10 | 11 | ```console:no-line-numbers 12 | npm i ar-gql 13 | ``` 14 | 15 | 16 | 17 | 18 | ```console:no-line-numbers 19 | yarn add ar-gql 20 | ``` 21 | 22 | 23 | 24 | 25 | ## 示例 26 | 27 | ```js:no-line-numbers 28 | import { arGql } from "ar-gql" 29 | 30 | const argql = arGql() 31 | 32 | (async () => { 33 | let results = await argql.run(`query( $count: Int ){ 34 | transactions( 35 | first: $count, 36 | tags: [ 37 | { 38 | name: "App-Name", 39 | values: ["PublicSquare"] 40 | }, 41 | { 42 | name: "Content-Type", 43 | values: ["text/plain"] 44 | }, 45 | ] 46 | ) { 47 | edges { 48 | node { 49 | id 50 | owner { 51 | address 52 | } 53 | data { 54 | size 55 | } 56 | block { 57 | height 58 | timestamp 59 | } 60 | tags { 61 | name, 62 | value 63 | } 64 | } 65 | } 66 | } 67 | }`, {count: 1}); 68 | console.log(results); 69 | })(); 70 | ``` 71 | 72 | ## 资源 73 | 74 | - [ar-gql 的 GitHub 页面](https://github.com/johnletey/arGql) 75 | -------------------------------------------------------------------------------- /src/zhTW/guides/graphql/ar-gql.md: -------------------------------------------------------------------------------- 1 | # ar-gql 2 | 3 | 此套件是在 GraphQL 之上的一個最小封裝層,支援使用查詢變數的參數化查詢,並實作分頁結果的管理。 4 | 5 | ## 安裝 6 | 7 | 要安裝 `ar-gql`,請執行 8 | 9 | 10 | 11 | ```console:no-line-numbers 12 | npm i ar-gql 13 | ``` 14 | 15 | 16 | 17 | 18 | ```console:no-line-numbers 19 | yarn add ar-gql 20 | ``` 21 | 22 | 23 | 24 | 25 | ## 範例 26 | 27 | ```js:no-line-numbers 28 | import { arGql } from "ar-gql" 29 | 30 | const argql = arGql() 31 | 32 | (async () => { 33 | let results = await argql.run(`query( $count: Int ){ 34 | transactions( 35 | first: $count, 36 | tags: [ 37 | { 38 | name: "App-Name", 39 | values: ["PublicSquare"] 40 | }, 41 | { 42 | name: "Content-Type", 43 | values: ["text/plain"] 44 | }, 45 | ] 46 | ) { 47 | edges { 48 | node { 49 | id 50 | owner { 51 | address 52 | } 53 | data { 54 | size 55 | } 56 | block { 57 | height 58 | timestamp 59 | } 60 | tags { 61 | name, 62 | value 63 | } 64 | } 65 | } 66 | } 67 | }`, {count: 1}); 68 | console.log(results); 69 | })(); 70 | ``` 71 | 72 | ## 資源 73 | 74 | - [ar-gql 的 GitHub 頁面](https://github.com/johnletey/arGql) 75 | -------------------------------------------------------------------------------- /src/es/guides/exm/js-sdk/sdk-intro.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # SDK de la Máquina de Ejecución 5 | 6 | El SDK de JavaScript permite el uso de la Máquina de Ejecución (EXM) en aplicaciones JavaScript y TypeScript. Para utilizar el SDK, se necesitan realizar los siguientes pasos de configuración. 7 | 8 | ## Instalación 9 | 10 | Para instalar EXM en tu proyecto, puedes utilizar `npm` o `yarn`. 11 | 12 | 13 | 14 | 15 | ```bash 16 | npm install @execution-machine/sdk 17 | ``` 18 | 19 | 20 | 21 | ```bash 22 | yarn add @execution-machine/sdk 23 | ``` 24 | 25 | 26 | 27 | ## Importación 28 | 29 | Cuando utilizas EXM con tu proyecto, el paquete debe ser importado de la siguiente manera. 30 | 31 | 32 | 33 | 34 | ```js 35 | import { Exm } from '@execution-machine/sdk'; 36 | ``` 37 | 38 | 39 | 40 | ## Creación de una instancia 41 | 42 | Para interactuar con EXM después de la instalación y la importación, se debe crear una instancia. 43 | 44 | 45 | 46 | 47 | ```js 48 | const exmInstance = new Exm({ token: 'MI_TOKEN_EXM' }); 49 | ``` 50 | 51 | 52 | 53 | ## Resumen 54 | 55 | Las siguientes guías mostrarán cómo desplegar funciones sin servidor utilizando el SDK de EXM JS y cómo interactuar con ellas. -------------------------------------------------------------------------------- /src/ja/fundamentals/transactions/bundles.md: -------------------------------------------------------------------------------- 1 | # トランザクションバンドル 2 | 3 | トランザクションバンドルは、複数の他のトランザクションやデータアイテムをその中にグループ化できる特殊な種類の Arweave トランザクションです。 4 | 5 | トランザクションバンドルは多くのネストされたトランザクションを含むため、Arweave が毎秒数千件のトランザクションにスケールする能力の要となります。 6 | 7 | ユーザーはトランザクションをバンドリングサービス(例: [Turbo](https://ardrive.io/turbo-bundler/))に送信し、バンドラーがそれらを他のトランザクションとまとめて 'bundle' を作成し、ネットワークに投稿します。 8 | 9 | ## バンドルは Arweave にどのように役立つか? 10 | 11 | ### 可用性 12 | 13 | バンドリングサービスは、バンドルされたトランザクションがドロップされることなく確実に Arweave に投稿されることを保証します。 14 | 15 | バンドルされたトランザクションのトランザクション ID は直ちに利用可能になり、データはまるで既に Arweave ネットワーク上にあるかのように即座にアクセスできます。 16 | 17 | ### 信頼性 18 | 19 | Arweave に投稿されたトランザクションは、ネットワークの高負荷などの理由で確認に失敗することがあり(結果としてトランザクションが取りこぼされる)、その場合トランザクションは**孤立**する、すなわちメムプールに滞留して最終的に削除されることがあります。 20 | 21 | バンドラーは、バンドル化されたデータの投稿を継続的に試みることでこの問題を解決し、メムプールでスタックしたり投稿に失敗したりしないよう保証します。 22 | 23 | ### スケーラビリティ 24 | 25 | バンドルは最大で 2256 件のトランザクションを格納でき、それぞれは Arweave 上では単一のトランザクションとして決済されます。これにより Arweave のブロックスペースはほぼあらゆるユースケースをサポートできる規模にスケールします。 26 | 27 | ## ネストされたバンドルとは? 28 | 29 | バンドルは Arweave にアップロードするためのデータアイテムを含めることができ、これらのデータアイテム自体がさらにバンドルであることもあります。 30 | 31 | つまり、バンドルのバンドル、言い換えれば **ネストされたバンドル** をアップロードすることが可能です。 32 | 33 | ネストされたバンドルはネストの深さに理論上の制限がなく、トランザクションスループットを大幅に引き上げることができます。 34 | 35 | ネストされたバンドルは、異なるグループのバンドル化されたデータが「まとめてかつ同時に」確実に Arweave に到達することを保証したい場合に有用です。 36 | 37 | ## 参考および関連リンク: 38 | 39 | [ArDrive Turbo](https://ardrive.io/turbo-bundler/) 40 | 41 | [ANS-104 標準](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md) 42 | -------------------------------------------------------------------------------- /src/ko/guides/graphql/ar-gql.md: -------------------------------------------------------------------------------- 1 | # ar-gql 2 | 3 | 이 패키지는 GraphQL 위에 얇게 얹는 최소한의 레이어로, 쿼리 변수를 사용하는 매개변수화된 쿼리를 지원합니다. 또한 페이징된 결과의 관리를 구현합니다. 4 | 5 | ## 설치 6 | 7 | `ar-gql`을 설치하려면 다음을 실행하세요 8 | 9 | 10 | 11 | ```console:no-line-numbers 12 | npm i ar-gql 13 | ``` 14 | 15 | 16 | 17 | 18 | ```console:no-line-numbers 19 | yarn add ar-gql 20 | ``` 21 | 22 | 23 | 24 | 25 | ## 예제 26 | 27 | ```js:no-line-numbers 28 | import { arGql } from "ar-gql" 29 | 30 | const argql = arGql() 31 | 32 | (async () => { 33 | let results = await argql.run(`query( $count: Int ){ 34 | transactions( 35 | first: $count, 36 | tags: [ 37 | { 38 | name: "App-Name", 39 | values: ["PublicSquare"] 40 | }, 41 | { 42 | name: "Content-Type", 43 | values: ["text/plain"] 44 | }, 45 | ] 46 | ) { 47 | edges { 48 | node { 49 | id 50 | owner { 51 | address 52 | } 53 | data { 54 | size 55 | } 56 | block { 57 | height 58 | timestamp 59 | } 60 | tags { 61 | name, 62 | value 63 | } 64 | } 65 | } 66 | } 67 | }`, {count: 1}); 68 | console.log(results); 69 | })(); 70 | ``` 71 | 72 | ## 리소스 73 | 74 | - [ar-gql GitHub 페이지](https://github.com/johnletey/arGql) 75 | -------------------------------------------------------------------------------- /src/ja/guides/graphql/ar-gql.md: -------------------------------------------------------------------------------- 1 | # ar-gql 2 | 3 | このパッケージは GraphQL の上に構築された最小限のレイヤーで、クエリ変数を使用したパラメータ化クエリに対応しています。ページングされた結果の管理も実装しています。 4 | 5 | ## インストール 6 | 7 | `ar-gql` をインストールするには次を実行してください 8 | 9 | 10 | 11 | ```console:no-line-numbers 12 | npm i ar-gql 13 | ``` 14 | 15 | 16 | 17 | 18 | ```console:no-line-numbers 19 | yarn add ar-gql 20 | ``` 21 | 22 | 23 | 24 | 25 | ## 例 26 | 27 | ```js:no-line-numbers 28 | import { arGql } from "ar-gql" 29 | 30 | const argql = arGql() 31 | 32 | (async () => { 33 | let results = await argql.run(`query( $count: Int ){ 34 | transactions( 35 | first: $count, 36 | tags: [ 37 | { 38 | name: "App-Name", 39 | values: ["PublicSquare"] 40 | }, 41 | { 42 | name: "Content-Type", 43 | values: ["text/plain"] 44 | }, 45 | ] 46 | ) { 47 | edges { 48 | node { 49 | id 50 | owner { 51 | address 52 | } 53 | data { 54 | size 55 | } 56 | block { 57 | height 58 | timestamp 59 | } 60 | tags { 61 | name, 62 | value 63 | } 64 | } 65 | } 66 | } 67 | }`, {count: 1}); 68 | console.log(results); 69 | })(); 70 | ``` 71 | 72 | ## リソース 73 | 74 | - [ar-gql GitHub ページ](https://github.com/johnletey/arGql) 75 | -------------------------------------------------------------------------------- /src/zh/references/specs/arfs/arfs.md: -------------------------------------------------------------------------------- 1 | --- 2 | 下一篇: "data-model.md" 3 | --- 4 | 5 | # ArFS 协议:在 Arweave 上的去中心化文件系统 6 | 7 | Arweave File System(简称“ArFS”)是一套数据建模、存储与检索协议,旨在模拟常见的文件系统操作,并在 [Arweave](https://ardrive.io/what-is-arweave/) 这类以永久、不可变且公开为特性的 blockweave 上,为你的数据层级提供某些可变性的机制。 8 | 9 | 由于 Arweave 的数据具有永久、不可变且公开的特性,传统的文件系统操作(例如权限管理、文件/文件夹重命名与移动,以及文件更新)无法通过单纯更新链上数据模型来完成。 10 | 11 | ArFS 通过实现一套隐私与加密模式,并利用 Arweave 交易标头内的标签来定义一个仅追加(append-only)的交易数据模型,从而实现上述功能的替代方案,避免直接修改原始链上数据。 12 | 13 | ## 主要功能 14 | 15 | ### 文件结构 16 | 17 | ArFS 使用分层结构来组织文件与文件夹。文件以单独交易(transactions)的形式存储在 Arweave 区块链上,而文件夹则为引用这些文件交易的元数据。 18 | 19 | ### 元数据 20 | 21 | 每个文件与文件夹都具有相关的元数据,例如名称、类型、大小与修改时间戳。ArFS 利用 Arweave 的标签系统以标准化格式存储这些元数据,便于查询与组织。 22 | 23 | ### 文件权限 24 | 25 | ArFS 支持公开与私有文件权限。公开文件可供网络上的任何人访问;私有文件则使用所有者的私钥进行加密,确保只有所有者可以解密与访问内容。 26 | 27 | ### 文件版本管理 28 | 29 | ArFS 支持文件版本管理,允许用户存储文件的多个版本并在任何时间访问先前版本。这是通过在元数据标签中将新文件交易与先前版本关联来实现的。 30 | 31 | ### 数据去重 32 | 33 | 为了降低存储冗余与成本,ArFS 采用数据去重(deduplication)技术。如果用户尝试存储一个已存在于网络上的文件,协议将仅建立对现有文件的引用,而不是再存储重复的副本。 34 | 35 | ### 搜索与发现 36 | 37 | ArFS 让用户可依据元数据(例如文件名、类型与标签)来搜索与发现文件。这是通过对存储在 Arweave 区块链内的元数据进行索引来实现的。 38 | 39 | ### 互通性 40 | 41 | ArFS 在设计上可以与建立于 Arweave 网络上的其他去中心化应用与服务互通,允许不同应用与用户之间进行无缝集成与协作。 42 | 43 | ## 开始使用 44 | 45 | 要开始使用 ArFS,你需要熟悉 Arweave 生态系统、获取用于支付存储成本的 AR 代币,并选择兼容的客户端或库来与 ArFS 协议交互。 46 | 47 | ## 资源 48 | 49 | 欲取得更多信息、文档与社区支持,请参考下列资源: 50 | 51 | - [Arweave 官方网站](https://www.arweave.org/) 52 | - [Arweave 开发者文档](https://docs.arweave.org/) 53 | - [Arweave 社区论坛](https://community.arweave.org/) 54 | -------------------------------------------------------------------------------- /src/zhTW/references/specs/arfs/arfs.md: -------------------------------------------------------------------------------- 1 | --- 2 | 下一篇: "data-model.md" 3 | --- 4 | 5 | # ArFS 協定:在 Arweave 上的去中心化檔案系統 6 | 7 | Arweave File System(簡稱「ArFS」)是一套資料建模、儲存與檢索協定,旨在模擬常見的檔案系統操作,並在 [Arweave](https://ardrive.io/what-is-arweave/) 這類以永久、不可變且公開為特性的 blockweave 上,為你的資料階層提供某些可變動性的機制。 8 | 9 | 由於 Arweave 的資料具有永久、不可變且公開的特性,傳統的檔案系統操作(例如權限管理、檔案/資料夾重新命名與移動,以及檔案更新)無法透過單純更新鏈上資料模型來完成。 10 | 11 | ArFS 透過實作一套隱私與加密模式,並利用 Arweave 交易標頭內的標籤來定義一個僅追加(append-only)的交易資料模型,來達成上述功能的替代方案,避免直接修改原始鏈上資料。 12 | 13 | ## 主要功能 14 | 15 | ### 檔案結構 16 | 17 | ArFS 使用階層式結構來組織檔案與資料夾。檔案以個別交易(transactions)的形式儲存在 Arweave 區塊鏈上,而資料夾則為參照這些檔案交易的元資料。 18 | 19 | ### 元資料 20 | 21 | 每個檔案與資料夾都具有相關的元資料,例如名稱、類型、大小與修改時間戳。ArFS 利用 Arweave 的標籤系統以標準化格式儲存這些元資料,便於查詢與組織。 22 | 23 | ### 檔案權限 24 | 25 | ArFS 支援公開與私人檔案權限。公開檔案可供網路上的任何人存取;私人檔案則使用擁有者的私鑰進行加密,確保只有擁有者可以解密與存取內容。 26 | 27 | ### 檔案版本管理 28 | 29 | ArFS 支援檔案版本管理,允許使用者儲存檔案的多個版本並在任何時間存取先前版本。這是透過在元資料標籤中將新檔案交易與先前版本連結來實現的。 30 | 31 | ### 資料去重 32 | 33 | 為了降低儲存冗餘與成本,ArFS 採用資料去重(deduplication)技術。如果使用者嘗試儲存一個已存在於網路上的檔案,協定將僅建立對現有檔案的參考,而不是再儲存重複的副本。 34 | 35 | ### 搜尋與發現 36 | 37 | ArFS 讓使用者可依據元資料(例如檔名、類型與標籤)來搜尋與發現檔案。這是透過對儲存在 Arweave 區塊鏈內的元資料進行索引來實現的。 38 | 39 | ### 互通性 40 | 41 | ArFS 設計上可與建立於 Arweave 網路上的其他去中心化應用與服務互通,允許不同應用與使用者之間進行無縫整合與協作。 42 | 43 | ## 開始使用 44 | 45 | 要開始使用 ArFS,你需要熟悉 Arweave 生態系、取得用於支付儲存成本的 AR 代幣,並選擇相容的用戶端或函式庫來與 ArFS 協定互動。 46 | 47 | ## 資源 48 | 49 | 欲取得更多資訊、文件與社群支援,請參考下列資源: 50 | 51 | - [Arweave 官方網站](https://www.arweave.org/) 52 | - [Arweave 開發者文件](https://docs.arweave.org/) 53 | - [Arweave 社群論壇](https://community.arweave.org/) 54 | -------------------------------------------------------------------------------- /src/guides/wallets-and-keyfiles/creating-a-wallet.md: -------------------------------------------------------------------------------- 1 | # Creating a Wallet 2 | 3 | Users should do their due diligence and research before deciding how to interact with Arweave. 4 | 5 | Users can create Arweave and AO wallets without requiring any technical knowledge by using solutions like [Wander](https://wander.app) or [Beacon](https://beaconwallet.app). 6 | 7 | Arweave wallets can also be generated programatically, using libraries such as Arweave JS or CLI tools such as `ardrive-cli`. 8 | 9 | ## Creating a wallet with Arweave JS 10 | 11 | ```sh 12 | npm install arweave 13 | ``` 14 | 15 | ```js 16 | arweave.wallets.generate().then((key) => { 17 | console.log(key); 18 | // { 19 | // "kty": "RSA", 20 | // "n": "3WquzP5IVTIsv3XYJjfw5L-t4X34WoWHwOuxb9V8w...", 21 | // "e": ... 22 | }); 23 | ``` 24 | 25 | ## Creating a wallet from the command line 26 | 27 | If you would prefer to create an Arweave wallet through a command-line application, you can use the [ArDrive CLI](https://github.com/ardriveapp/ardrive-cli). 28 | 29 | ```sh 30 | npm install -g ardrive-cli 31 | ``` 32 | 33 | You can generate a seed phrase with the command `generate-seedphrase`: 34 | 35 | ```sh 36 | # Generate seed-phrase 37 | ardrive generate-seedphrase 38 | "this is an example twelve word seed phrase that you could use" 39 | ``` 40 | 41 | Or, you can generate a wallet file using `generate-wallet`: 42 | 43 | ```sh 44 | # Generate a wallet and store it in a chosen output file 45 | ardrive generate-wallet > /path/to/wallet/file.json 46 | ``` 47 | -------------------------------------------------------------------------------- /src/guides/graphql/ar-gql.md: -------------------------------------------------------------------------------- 1 | # ar-gql 2 | This package is a minimal layer on top of GraphQL, it supports parameterized queries with query variables. It also implements management of paged results. 3 | 4 | ## Installation 5 | 6 | To install `ar-gql` run 7 | 8 | 9 | 10 | ```console:no-line-numbers 11 | npm i ar-gql 12 | ``` 13 | 14 | 15 | 16 | ```console:no-line-numbers 17 | yarn add ar-gql 18 | ``` 19 | 20 | 21 | 22 | ## Example 23 | ```js:no-line-numbers 24 | import { arGql } from "ar-gql" 25 | 26 | const argql = arGql() 27 | 28 | (async () => { 29 | let results = await argql.run(`query( $count: Int ){ 30 | transactions( 31 | first: $count, 32 | tags: [ 33 | { 34 | name: "App-Name", 35 | values: ["PublicSquare"] 36 | }, 37 | { 38 | name: "Content-Type", 39 | values: ["text/plain"] 40 | }, 41 | ] 42 | ) { 43 | edges { 44 | node { 45 | id 46 | owner { 47 | address 48 | } 49 | data { 50 | size 51 | } 52 | block { 53 | height 54 | timestamp 55 | } 56 | tags { 57 | name, 58 | value 59 | } 60 | } 61 | } 62 | } 63 | }`, {count: 1}); 64 | console.log(results); 65 | })(); 66 | ``` 67 | 68 | ## Resources 69 | * [ar-gql github page](https://github.com/johnletey/arGql) 70 | -------------------------------------------------------------------------------- /src/ja/fundamentals/gateways/index.md: -------------------------------------------------------------------------------- 1 | # Arweave ネットワークにおけるゲートウェイ 2 | 3 | ゲートウェイは Arweave ネットワークとエンドユーザーのインターフェースとして機能し、標準的なウェブブラウザを通じて Permaweb のデータに容易にアクセスできるようにします。 4 | 5 | しばしば「Permaweb への玄関口」と表現されるこれらのサービスは、ユーザーがブロックチェーン上に格納されたコンテンツと従来のウェブに似た体験でやり取りできるようにします。 6 | 7 | Arweave 上のコンテンツにアクセスする際、通常次のような URL 構造を使用します: 8 | 9 | ``` 10 | https:/// 11 | ``` 12 | 13 | これにより HTML ファイルがウェブページとしてレンダリングされ、画像が正しく表示され、その他のデータ型も適切に配信される — コンテンツが分散型ネットワーク上に格納されているにもかかわらず、従来のウェブに似た体験が得られます。 14 | 15 | ## ゲートウェイの主要な機能 16 | 17 | ゲートウェイは基本的なコンテンツ配信を超えて、いくつかの重要なサービスを提供します: 18 | 19 | - **コンテンツキャッシュ**:頻繁にアクセスされるトランザクションを保存してパフォーマンスを向上させる 20 | - **データのインデックス作成**:タグやメタデータによるトランザクションのクエリ用 GraphQL インターフェースを提供する 21 | - **ネットワークシーディング**:Arweave ネットワーク全体にトランザクションを配布するのを支援する 22 | - **コンテンツモデレーション**:どのデータを配信するかを決定するためのコンテンツポリシーを適用する 23 | 24 | ## コアプロトコルとの関係 25 | 26 | ゲートウェイは**Arweave のコアプロトコルの一部ではない**ことを理解することが重要です。この区別にはいくつかの意味があります: 27 | 28 | - ゲートウェイの運営はネットワークを保護するノードの運用とは別である 29 | - ゲートウェイ運営者向けのプロトコルレベルのインセンティブ構造は組み込まれていない 30 | - ゲートウェイサービスは独自の経済モデルやインセンティブを実装できる 31 | - アプリケーションはパフォーマンス向上のために独自のゲートウェイを運用できる 32 | 33 | この分離により、異なるゲートウェイ運営者がさまざまなサービスモデルを試験できる、より柔軟で分散化されたエコシステムが可能になります。 34 | 35 | ## 主要なゲートウェイサービス 36 | 37 | 現在、Arweave エコシステムにはいくつかのゲートウェイサービスが存在します: 38 | 39 | - [arweave.net](https://arweave.net/) - Arweave チームが運営 40 | - [g8way.io](https://g8way.io) 41 | 42 | [AR.IO](https://ar.io/)プロジェクトはゲートウェイ運用をより利用しやすくする取り組みを行っており、これによりネットワークへのアクセスポイントの分散化が進む可能性があります。 43 | 44 | ## 参考資料 45 | 46 | - [ArWiki ゲートウェイドキュメント](https://arwiki.wiki/#/en/gateways) 47 | - [AR.IO プロジェクト](https://ar.io/) 48 | -------------------------------------------------------------------------------- /src/archive/concepts/vouch-zh.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: zh 3 | --- 4 | # Vouch(背书) 5 | ## 概述 6 | #### Vouch 协议 7 | Arweave 引入了 ANS-109 Vouch(身份声明)的概念。它是一种使用特定的交易格式和一些标签的标准,允许 permaweb 上的任何人为任何 Arweave 地址的身份和人性提供“背书”。 8 | 9 | 将 ANS-109 这样的标准添加到 permaweb 中将有助于最小化 Sybil 攻击和恶意行为者,使 permaweb 用户体验更加安全。 10 | 11 | #### VouchDAO 12 | VouchDAO 是一个由社区领导的、建立在 Vouch 标准之上的分散验证层。开发者创建背书服务,VouchDAO 社区的成员投票决定哪些验证服务值得信赖。 13 | 14 | 一旦创建了新的服务,其地址将在 [VouchDAO community.xyz](https://community.xyz/#_z0ch80z_daDUFqC9jHjfOL8nekJcok4ZRkE_UesYsk) 接口上进行投票。如果投票通过,它将被添加为经过验证的背书。 15 | 16 | 17 | 18 | ## 工作原理 19 | 开发者可以创建不同的 Vouch 服务,根据给定的一组要求对用户的 Arweave 钱包进行证明。当前的一个例子是 Twitter 服务,这是第一个背书服务,迄今已为超过180个 Arweave 地址提供了背书。 20 | 21 | VouchDAO 智能合约状态具有一个 `vouched` 属性。每当用户进行验证时,状态将会更新。`vouched` 对象以以下格式存储一系列接受背书的地址: 22 | ``` 23 | VOUCH_USER_ADDRESS:[ 24 | { 25 | service:"SERVICE_ADDRESS_1" 26 | transaction:"TX_ID" 27 | }, 28 | { 29 | service:"SERVICE_ADDRESS_2" 30 | transaction:"TX_ID" 31 | } 32 | ] 33 | ``` 34 | 35 | 获得验证的用户将在他们的钱包中收到 ANS-109 令牌,表示该钱包已经由该服务进行了背书。 36 | 37 | ## ANS-109 交易格式 38 | | 标签名 | _是否可选_ | 标签值 | 39 | |---|---|---| 40 | |App-Name|否|`Vouch`| 41 | |Vouch-For|否|正在此交易中为其提供背书的 Arweave `address`| 42 | |App-Version|是|`0.1`| 43 | |Verification-Method|是|验证此人的身份的方法。例如 - `Twitter`/`In-Person`/`Gmail`/`Facebook`| 44 | |User-Identifier|是|基于验证方法的用户标识符。例如 - `abhav@arweave.org`| 45 | 46 | ## 资源 47 | * [VouchDAO](https://vouch-dao.arweave.net) 48 | * [VouchDAO 合约](https://sonar.warp.cc/?#/app/contract/_z0ch80z_daDUFqC9jHjfOL8nekJcok4ZRkE_UesYsk) -------------------------------------------------------------------------------- /src/es/getting-started/quick-starts/hw-no-code.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | # Hola Mundo (Sin Código) 6 | 7 | En este tutorial rápido vamos a subir una imagen al permaweb sin tener que escribir código. 8 | 9 | ## Requisitos 10 | 11 | - Computadora 12 | - Internet 13 | - Navegador web moderno 14 | 15 | ## Crea una billetera con algunos AR 16 | 17 | [https://faucet.arweave.net/](https://faucet.arweave.net/) 18 | 19 | Visite el grifo de Arweave y genera una billetera con AR, esto requiere una cuenta de Twitter. Se te pedirá descargar tu archivo de claves como `file.json`. 20 | 21 | ![faucet](https://arweave.net/aO-L2ZAhqUC6H1xThrY8-b9TwQykRcRhZkPaeF9tTuo/) 22 | 23 | ## Añadiendo el archivo de claves a la billetera Arweave.app 24 | 25 | https://arweave.app/add 26 | 27 | Haga clic en el botón Importar claves. Y cargue su archivo de claves en la billetera de la aplicación. 28 | 29 | ![add keyfile](https://arweave.net/urFQ0X2pBHmDRk9v8zeog4yDGmj1mYA16nS_7shpJSE/) 30 | 31 | ## Enviar algunos datos a Arweave 32 | 33 | Cuando se haya importado el archivo de claves, se le dirigirá a la vista de la billetera, haga clic en el botón Enviar y seleccione un archivo para cargar. Luego haga clic en el botón `Enviar`. 34 | 35 | ![send data](https://arweave.net/UnT4rcnGUgkJgggVFUVXA6M2e0IrWs-VzNnpJ4mJr3M) 36 | 37 | ## ¡Felicidades!! 38 | 39 | Acabas de publicar algunos datos en Arweave sin escribir código. 40 | 41 | ## ¡Verlo en acción! 42 | 43 | - [Arcademy](https://arcademy.arweave.net/#/AtomicPlayground/xMVuQ5BKy__EccnMu0Ji_0rPk3f6yCtIRdHwvjSweB4) 44 | - [Youtube](https://youtu.be/T6wJ3m5ABSU) 45 | -------------------------------------------------------------------------------- /src/getting-started/index.md: -------------------------------------------------------------------------------- 1 | # Getting Started 2 | 3 | Welcome to the Permaweb Cookbook! This book contains concepts, guides, and snippets to help you get started building decentralized applications on Arweave. 4 | 5 | ## What is the Permaweb? 6 | 7 | The Permaweb is a global, community-owned web that anyone can contribute to or get paid to maintain. It's built on top of Arweave, a decentralized storage network that permanently stores data. 8 | 9 | Creating and deploying applications on Arweave is similar to creating traditional applications - with the key difference that applications uploaded to Arweave are immutable, decentralized, and cannot be individually removed. These properties can make building on Arweave challenging, but rewarding. 10 | 11 | This cookbook aims to make the process of learning and building simpler. 12 | 13 | ## Getting Started 14 | 15 | The [Quick Start guides](./quick-starts/hw-cli.md) in the next chapter aim to give a brief overview of what it looks like to deploy a "Hello World" application to Arweave, using both CLI tools and code. 16 | 17 | ## Next Steps 18 | 19 | Once you've completed the getting started guide, explore: 20 | - [Fundamentals](../fundamentals/index.md) to understand how Arweave works 21 | - [Guides](../guides/index.md) for step-by-step tutorials 22 | - [References](../references/index.md) for references and specifications 23 | 24 | ## Contributing 25 | 26 | If you're interested in contributing to the cookbook, you can read the guidelines in the the GitHub repository [here](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md). 27 | -------------------------------------------------------------------------------- /src/zh/fundamentals/gateways/data-retrieval.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 从 Arweave 获取数据 3 | --- 4 | 5 | # 从 Arweave 获取数据 6 | 7 | 当您拥有交易 ID(txid)或 ArNS 名称时,有多种方法可以从 Arweave 网络检索相关数据。此指南涵盖开发者可用的主要方式。 8 | 9 | ## 概览 10 | 11 | 当您需要获取存储在 Arweave 的数据时,根据使用情境有多种选择: 12 | 13 | - **HTTP API**:向网关端点发送直接的 HTTP 请求 14 | - **Arweave.js**:用于程序化访问的 JavaScript/TypeScript SDK 15 | - **ARIO Wayfinder**:具备智能路由与验证功能的协议 16 | 17 | ## 可用方法 18 | 19 | ### [HTTP API](./http-api.md) 20 | 21 | 使用标准 HTTP 请求访问 Arweave 网关的最简单方法。非常适合基本数据检索且希望最小化依赖的情况。 22 | 23 | 最适合: 24 | 25 | - 简单的数据检索 26 | - 服务器端应用程序 27 | - 想要避免额外依赖时 28 | 29 | ### [Arweave.js](./arweave-js.md) 30 | 31 | 官方的 JavaScript/TypeScript SDK,提供对 Arweave 网络的完整接口。 32 | 33 | 最适合: 34 | 35 | - JavaScript/TypeScript 应用程序 36 | - 复杂的 Arweave 操作 37 | - 当您需要交易的 metadata 与数据时 38 | 39 | ### [ARIO Wayfinder](./wayfinder.md) 40 | 41 | 一个提供去中心化、经密码学验证的访问并具备智能网关路由功能的协议。 42 | 43 | 最适合: 44 | 45 | - 需要可靠性的生产环境应用程序 46 | - 当您需要自动选择网关时 47 | - 需要数据验证的应用程序 48 | 49 | ## 快速比较 50 | 51 | | 方法 | 复杂度 | 依赖项 | 功能 | 52 | | ---------- | ------ | ----------------------- | -------------- | 53 | | HTTP API | 低 | 无 | 基本的数据获取 | 54 | | Arweave.js | 中 | `arweave` package | 完整的交易访问 | 55 | | Wayfinder | 中 | `@ar.io/wayfinder-core` | 智能路由、验证 | 56 | 57 | (表格列说明:Method = 方法,Complexity = 复杂度,Dependencies = 依赖项,Features = 功能) 58 | 59 | ## 开始使用 60 | 61 | 选择最适合您需求的方法: 62 | 63 | 1. **从 HTTP API 开始**,如果您想要最简单的方式 64 | 2. **使用 Arweave.js**,如果您正在构建 JavaScript/TypeScript 应用程序 65 | 3. **考虑 Wayfinder**,如果您需要生产级别的可靠性与验证 66 | 67 | 每个方法页面都包含安装说明、基本使用示例,以及链接到更详细的文档。 68 | -------------------------------------------------------------------------------- /src/zh/fundamentals/transactions/tags.md: -------------------------------------------------------------------------------- 1 | # 交易元数据(标签) 2 | 3 | Arweave 上的交易具有唯一的 ID、签名,以及拥有者地址(即签署并支付该笔交易发布费用的地址)。 4 | 5 | 除了这些标头值外,Arweave 协议允许用户为交易加入自定义标签。这些标签以一组 `key: value` 配对的形式附加到交易中。 6 | 7 | 自定义标签让查询 Arweave 并找出包含特定标签(或多个标签)的所有交易成为可能。查询与筛选交易的能力对于支持构建在 Arweave 上的应用程序至关重要。 8 | 9 | ## 什么是交易标签? 10 | 11 | 交易标签是键值对(key-value pairs),其中以 Base64URL 编码的键与值的组合,对于原生 Arweave 交易而言,其总和必须小于 2048 字节的上限。 12 | 13 | 一些常见的交易标签示例包括: 14 | 15 | - `Content-Type`: 用于指定内容的 MIME 类型,以便在 Permaweb 上呈现。 16 | - `App-Name`: 此标签描述正在写入数据的应用程序。 17 | - `App-Version`: 与 App-Name 配对,表示该应用程序的版本。 18 | - `Unix-Time`: 该标签为 Unix 时间戳,**自 Epoch 起的秒数**。 19 | - `Title`: 用于为交易中存储的内容指定名称或简短描述。 20 | - `Description`: 用于提供内容的较长描述。 21 | 22 | 交易标签可用于各种目的,例如为搜索建立交易索引、将交易分类,或提供关于交易中所存储内容的元数据。 23 | 24 | ## 关于交易标签的重要信息 25 | 26 | 交易标签的键与值皆以 Base64URL 编码的字符串表示。这使得可以将字节数组作为键或值发布,并安全地通过 HTTP 传输。虽然未解码时对人类不可读,但不应被视为加密。 27 | 28 | 直接发布到 Arweave 的交易标签总大小上限为 2048 字节。此大小由所有标签键与所有标签值串接后的长度决定。 29 | 30 | 交易标签可以用于 GraphQL 查询中,以返回经过筛选的交易项目集合。 31 | 32 | ## 示例 33 | 34 | ```ts 35 | const tx = await arweave.createTransaction({ data: mydata }); 36 | 37 | tx.addTag("Content-Type", "text/html"); 38 | tx.addTag("Title", "My incredible post about Transaction Tags"); 39 | tx.addTag("Description", "This is one post you do not want to miss!"); 40 | tx.addTag("Topic:Amazing", "Amazing"); 41 | tx.addTag("Type", "blog-post"); 42 | 43 | await arweave.transactions.sign(tx, jwk); 44 | await arweave.transactions.post(tx); 45 | ``` 46 | 47 | ## 摘要 48 | 49 | 标签提供一种工具,用以采用与建立通用的数据标准与模式,从而在 Permaweb 上促进非竞争性(non-rivalrous)的数据体验。 50 | 51 | 其结果使生态系统的用户可以选择不同的应用程序来消费或创建内容,因为数据始终属于用户,而非应用程序。 52 | -------------------------------------------------------------------------------- /src/ja/archive/concepts/vouch-system.md: -------------------------------------------------------------------------------- 1 | # Vouch 2 | 3 | ## 概要 4 | 5 | #### 動機 6 | 7 | Vouching は Sybil 耐性に対する分散型のアプローチを提供します。Sybil 攻撃とは、攻撃者が多数の仮名のアイデンティティを作成して不釣り合いに大きな影響力を得ることでネットワークを破壊する行為です。 8 | 9 | #### Vouch プロトコル 10 | 11 | Arweave は ANS-109 Vouch (Assertion of Identity) の概念を導入しました。これは特定のトランザクション形式といくつかのタグを用いる標準で、permaweb 上の誰でも任意の Arweave アドレスのアイデンティティと人間性を "vouch" できるようにします。 12 | 13 | ANS-109 のような標準を permaweb に追加することで、Sybil 攻撃や悪意のあるアクターを最小化し、permaweb ユーザーにとってより安全な体験を提供します。 14 | 15 | ## ANS-109 トランザクション形式 16 | 17 | | タグ名 | _任意?_ | タグ値 | 18 | | ------------------- | ------- | ----------------------------------------------------------------------------------------------------- | 19 | | App-Name | False | `Vouch` | 20 | | Vouch-For | False | Arweave `address` that is being vouched for in this transaction | 21 | | App-Version | True | `0.1` | 22 | | Verification-Method | True | Method of verification of identity for the person. Example - `Twitter`/`In-Person`/`Gmail`/`Facebook` | 23 | | User-Identifier | True | An identifier for the user based on the Verification Method. Example - `abhav@arweave.org` | 24 | 25 | ## リソース 26 | 27 | - [ANS-109 ドキュメント](https://github.com/ArweaveTeam/arweave-standards/blob/ans-109/ans/ANS-109.md) 28 | -------------------------------------------------------------------------------- /src/ko/references/specs/ans/ANS-101.md: -------------------------------------------------------------------------------- 1 | # [ANS-101: 게이트웨이 기능 엔드포인트](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-101.md) 2 | 3 | 상태: 초안 4 | 5 | 버전: - 6 | 7 | ## 개요 8 | 9 | 이 문서는 Arweave 게이트웨이가 게이트웨이 사용자가 해당 게이트웨이의 기능을 판별할 수 있도록 노출해야 하는 HTTP 엔드포인트와 스키마를 설명합니다. 10 | 11 | ## 동기 12 | 13 | Arweave 블록체인으로의 게이트웨이 생태계가 확장됨에 따라, 각 게이트웨이는 서로 다른 기능을 제공하게 됩니다. 게이트웨이 사용자는 특정 애플리케이션을 실행하거나 특정 목적에 사용하기 위해 게이트웨이가 요구하는 기능을 지원하는지 확인할 수 있어야 합니다. 14 | 15 | ## 명세 16 | 17 | ### 1. HTTP 엔드포인트 18 | 19 | 이 사양을 준수하는 게이트웨이는 경로 `/info/capabilities` 에 대한 GET 요청에 대해 섹션 2의 스키마를 준수하는 JSON 문서를 반환하는 HTTP 엔드포인트를 반드시(MUST) 노출해야 하며, 해당 문서에는 게이트웨이가 지원하는 기능이 정확하게 나열되어 있어야 합니다. 20 | 21 | ### 2. 응답 스키마 22 | 23 | 엔드포인트가 반환하는 JSON 문서는 `capabilities` 키를 가진 객체여야 하며, 이 키는 `capability` 객체들의 배열입니다. 24 | 25 | 기능(`capability`) 객체는 최소한 다음과 같은 스키마를 가져야 합니다 - 26 | 27 | - `name` capability name. 이 값은 전역적으로 고유한 이름이어야 합니다. 28 | - `version` capability version. 이 값은 semver 버전 문자열이어야 합니다. 29 | 30 | 기능 객체는 해당 기능에 특정한 추가 스키마를 가질 수 있습니다(MAY). 31 | 32 | 예시 응답 본문: ( 이름, 버전 및 기능 객체는 *예시*일 뿐입니다. ) 33 | 34 | ```json 35 | { 36 | "capabilities": [ 37 | { "name": "arql", "version": "1.0.0" }, 38 | { "name": "graphql", "version": "1.0.0" }, 39 | { "name": "arweave-id-lookup", "verson": "1.0.0" }, 40 | { "name": "post-bundled-tx-json", "version": "1.0.0" }, 41 | { "name": "post-delegated-tx", "version": "1.0.0", "maxFee": "0.00125" }, 42 | { 43 | "name": "push-on-event-api", 44 | "version": "1.0.0", 45 | "platforms": ["push-android", "push-ios", "web-push-firefox", "webhook"] 46 | } 47 | ] 48 | } 49 | ``` 50 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/transactions/tags.md: -------------------------------------------------------------------------------- 1 | # 交易元資料(標籤) 2 | 3 | Arweave 上的交易具有唯一的 ID、簽名,以及擁有者位址(即簽署並支付該筆交易發布費用的位址)。 4 | 5 | 除了這些標頭值外,Arweave 協議允許使用者為交易加入自訂標籤。這些標籤以一組 `key: value` 配對的形式附加到交易中。 6 | 7 | 自訂標籤讓查詢 Arweave 並找出包含特定標籤(或多個標籤)的所有交易成為可能。查詢與篩選交易的能力對於支援建立在 Arweave 上的應用程式至關重要。 8 | 9 | ## 什麼是交易標籤? 10 | 11 | 交易標籤是鍵值對(key-value pairs),其中以 base64URL 編碼的鍵與值的組合,對於原生 Arweave 交易而言,其總和必須小於 2048 位元組的上限。 12 | 13 | 一些常見的交易標籤範例包括: 14 | 15 | - `Content-Type`: 用於指定內容的 MIME 類型,以便在 Permaweb 上呈現。 16 | - `App-Name`: 此標籤描述正在寫入資料的應用程式。 17 | - `App-Version`: 與 App-Name 配對,表示該應用程式的版本。 18 | - `Unix-Time`: 該標籤為 Unix 時間戳,**自 Epoch 起的秒數**。 19 | - `Title`: 用於為交易中儲存的內容指定名稱或簡短描述。 20 | - `Description`: 用於提供內容的較長描述。 21 | 22 | 交易標籤可用於各種目的,例如為搜尋建立交易索引、將交易分類,或提供關於交易中所儲存內容的元資料。 23 | 24 | ## 關於交易標籤的重要資訊 25 | 26 | 交易標籤的鍵與值皆以 Base64URL 編碼的字串表示。這使得可以將位元組陣列作為鍵或值發布,並安全地透過 http 傳輸。雖然未解碼時對人類不可讀,但不應被視為加密。 27 | 28 | 直接發布到 Arweave 的交易標籤總大小上限為 2048 位元組。此大小由所有標籤鍵與所有標籤值串接後的長度決定。 29 | 30 | 交易標籤可以用在 GraphQL 查詢中,以回傳經過篩選的交易項目集合。 31 | 32 | ## 範例 33 | 34 | ```ts 35 | const tx = await arweave.createTransaction({ data: mydata }); 36 | 37 | tx.addTag("Content-Type", "text/html"); 38 | tx.addTag("Title", "My incredible post about Transaction Tags"); 39 | tx.addTag("Description", "This is one post you do not want to miss!"); 40 | tx.addTag("Topic:Amazing", "Amazing"); 41 | tx.addTag("Type", "blog-post"); 42 | 43 | await arweave.transactions.sign(tx, jwk); 44 | await arweave.transactions.post(tx); 45 | ``` 46 | 47 | ## 摘要 48 | 49 | 標籤提供一種工具,用以採用與建立共通的資料標準與模式,從而在 Permaweb 上促進非競爭性(non-rivalrous)的資料體驗。 50 | 51 | 其結果讓生態系統的使用者可以選擇不同的應用程式來消費或創建內容,因為資料始終屬於使用者,而非應用程式。 52 | -------------------------------------------------------------------------------- /src/es/guides/querying-arweave/ar-gql.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | # ar-gql 5 | Este paquete es una capa mínima encima de GraphQL, admite consultas parametrizadas con variables de consulta. También implementa la gestión de resultados paginados. 6 | 7 | ## Instalación 8 | 9 | Para instalar `ar-gql`, ejecuta 10 | 11 | 12 | 13 | ```console:no-line-numbers 14 | npm i ar-gql 15 | ``` 16 | 17 | 18 | 19 | ```console:no-line-numbers 20 | yarn add ar-gql 21 | ``` 22 | 23 | 24 | 25 | ## Ejemplo 26 | ```js:no-line-numbers 27 | import { arGql } from "ar-gql" 28 | 29 | const argql = arGql() 30 | 31 | (async () => { 32 | let results = await argql.run(`query( $count: Int ){ 33 | transactions( 34 | first: $count, 35 | tags: [ 36 | { 37 | name: "App-Name", 38 | values: ["PublicSquare"] 39 | }, 40 | { 41 | name: "Content-Type", 42 | values: ["text/plain"] 43 | }, 44 | ] 45 | ) { 46 | edges { 47 | node { 48 | id 49 | owner { 50 | address 51 | } 52 | data { 53 | size 54 | } 55 | block { 56 | height 57 | timestamp 58 | } 59 | tags { 60 | name, 61 | value 62 | } 63 | } 64 | } 65 | } 66 | }`, {count: 1}); 67 | console.log(results); 68 | })(); 69 | ``` 70 | 71 | ## Recursos 72 | * [Página de Github de ar-gql](https://github.com/johnletey/arGql) -------------------------------------------------------------------------------- /src/id/guides/querying-arweave/ar-gql.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # ar-gql 6 | Paket ini adalah lapisan minimal di atas GraphQL, mendukung kueri berparameter dengan variabel kueri. Ini juga mengimplementasikan pengelolaan hasil berhalaman. 7 | 8 | ## Instalasi 9 | 10 | Untuk menginstal `ar-gql`, jalankan 11 | 12 | 13 | 14 | ```console:no-line-numbers 15 | npm i ar-gql 16 | ``` 17 | 18 | 19 | 20 | ```console:no-line-numbers 21 | yarn add ar-gql 22 | ``` 23 | 24 | 25 | 26 | ## Contoh 27 | ```js:no-line-numbers 28 | import { arGql } from "ar-gql" 29 | 30 | const argql = arGql() 31 | 32 | (async () => { 33 | let results = await argql.run(`query( $count: Int ){ 34 | transactions( 35 | first: $count, 36 | tags: [ 37 | { 38 | name: "App-Name", 39 | values: ["PublicSquare"] 40 | }, 41 | { 42 | name: "Content-Type", 43 | values: ["text/plain"] 44 | }, 45 | ] 46 | ) { 47 | edges { 48 | node { 49 | id 50 | owner { 51 | address 52 | } 53 | data { 54 | size 55 | } 56 | block { 57 | height 58 | timestamp 59 | } 60 | tags { 61 | name, 62 | value 63 | } 64 | } 65 | } 66 | } 67 | }`, {count: 1}); 68 | console.log(results); 69 | })(); 70 | ``` 71 | 72 | ## Sumber Daya 73 | * [Halaman github ar-gql](https://github.com/johnletey/arGql) -------------------------------------------------------------------------------- /src/es/concepts/atomic-tokens.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | - For more information and examples for creating Atomic Tokens. 5 | 6 | # Concepto y principios de Token Atómico 7 | 8 | ![https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A](https://arweave.net/bcHI0TW_nH-iTfZnobD9Wt6d0Qe6thWfPrGhnvi1m1A) 9 | 10 | Un Token Atómico es un único identificador permanente que hace referencia a los datos y un Contrato SmartWeave en el Permaweb. 11 | 12 | ## Especificaciones 13 | 14 | Los datos DEBEN almacenarse en la red de arweave y referenciables mediante un Identificador de Transacción. 15 | 16 | El Contrato DEBE implementar un objeto "balances" que represente la propiedad del Token Atómico. 17 | 18 | El Contrato DEBE implementar una función "transfer" que tenga los siguientes argumentos: 19 | - objetivo {WalletAddress o Contracto} 20 | - qty {Número} 21 | 22 | > La función de transferencia debería transferir la propiedad del llamador al objetivo. 23 | 24 | ## Opciones 25 | 26 | _Estas son opciones de implementación que pueden hacer que el Token Atómico sea descubrible y comerciable en el Permaweb_ 27 | 28 | [Verto Flex](https://github.com/useverto/flex) - La Biblioteca Flex permite que su token atómico sea vendido o comprado sin confiar en un intercambio. 29 | 30 | [Etiquetas de descubrimiento - ANS 110](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-110.md) - Estas etiquetas adicionales pueden ayudar a las aplicaciones y servicios del Permaweb a descubrir su token. 31 | 32 | [Echa un vistazo a la Guía](../guides/atomic-tokens/intro.md) - Para obtener más información y ejemplos para crear Tokens Atómicos. -------------------------------------------------------------------------------- /src/ja/references/specs/ans/ANS-101.md: -------------------------------------------------------------------------------- 1 | # [ANS-101: ゲートウェイ機能エンドポイント](https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-101.md) 2 | 3 | ステータス: 草案 4 | 5 | バージョン: - 6 | 7 | ## 概要 8 | 9 | 本ドキュメントは、ゲートウェイ利用者がゲートウェイの機能を判別できるように、Arweave ゲートウェイが公開すべき HTTP エンドポイントとスキーマを記述します。 10 | 11 | ## 動機 12 | 13 | Arweave ブロックチェーンへのゲートウェイのエコシステムが拡大するにつれて、各ゲートウェイは異なる機能を提供するようになります。ゲートウェイの利用者は、特定のアプリを動かすため、あるいは特定の目的で使用するために、そのゲートウェイが必要な機能をサポートしているかどうかを判別できる必要があります。 14 | 15 | ## 仕様 16 | 17 | ### 1. HTTP エンドポイント 18 | 19 | この仕様に準拠するゲートウェイは、`/info/capabilities` パスに対する GET リクエストに応答する HTTP エンドポイントを公開し、セクション 2 のスキーマに準拠した JSON ドキュメントでゲートウェイがサポートする機能を正確に列挙しなければなりません(MUST)。 20 | 21 | ### 2. レスポンススキーマ 22 | 23 | エンドポイントが返す JSON ドキュメントは、`capabilities` キーを持つオブジェクトでなければならず(MUST)、その値は `capability` オブジェクトの配列でなければなりません。 24 | 25 | capability オブジェクトは少なくとも以下のスキーマを持ちます - 26 | 27 | - `name` — 機能名。これはグローバルに一意の名前でなければなりません(MUST)。 28 | - `version` — 機能のバージョン。これは semver のバージョン文字列でなければなりません(MUST)。 29 | 30 | capability オブジェクトは、その機能に特有の追加スキーマに準拠していてもよい(MAY)。 31 | 32 | 例のレスポンス本文:(名前、バージョン、及び capability オブジェクトは*例*に過ぎません。) 33 | 34 | ```json 35 | { 36 | "capabilities": [ 37 | { "name": "arql", "version": "1.0.0" }, 38 | { "name": "graphql", "version": "1.0.0" }, 39 | { "name": "arweave-id-lookup", "verson": "1.0.0" }, 40 | { "name": "post-bundled-tx-json", "version": "1.0.0" }, 41 | { "name": "post-delegated-tx", "version": "1.0.0", "maxFee": "0.00125" }, 42 | { 43 | "name": "push-on-event-api", 44 | "version": "1.0.0", 45 | "platforms": ["push-android", "push-ios", "web-push-firefox", "webhook"] 46 | } 47 | ] 48 | } 49 | ``` 50 | -------------------------------------------------------------------------------- /src/references/specs/arfs/content-types.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "entity-types.md" 3 | next: "privacy.md" 4 | --- 5 | 6 | # Content Types 7 | 8 | All transaction types in ArFS leverage a specific metadata tag for the Content-Type (also known as mime-type) of the data that is included in the transaction. ArFS clients must determine what the mime-type of the data is, in order for Arweave gateways and browswers to render this content appropriately. 9 | 10 | All public drive, folder, and file (metadata only) entity transactions all use a JSON standard, therefore they must have the following content type tag: 11 | 12 | ```json 13 | Content-Type: '' 14 | ``` 15 | 16 | However, a file's data transaction must have its mime-type determined. This is stored in the file's corresponding metadata transaction JSON's `dataContentType` as well as the content type tag in the data transaction itself. 17 | 18 | ```json 19 | Content-Type: "" 20 | ``` 21 | 22 | All private drive, folder, and file entity transactions must have the following content type, since they are encrypted: 23 | 24 | ```json 25 | Content-Type: '' 26 | ``` 27 | 28 | [ArDrive-Core](https://github.com/ardriveapp/ardrive-core-js) includes methods to determine a file's content type. 29 | 30 | 31 | ## Other Tags 32 | 33 | ArFS enabled clients should include the following tags on their transactions to identify their application 34 | 35 | ```json 36 | App-Name: ", Sam Williams 6 | 7 | ## 摘要 8 | 9 | 本文件描述一种交易格式,Arweave 网络的使用者可用以请求矿工对某些类型的数据不进行存储(基于各种理由)。为了请求不存储,需上传一笔包含相关数据交易 `Txn ID` 的交易,并附上此处规定的标签。节点在收到此数据后,将独立决定是否接受该请求。 10 | 11 | ## 动机 12 | 13 | Arweave 的永久存储协议实现了对媒体与文件的真正永久数字保存。 14 | 15 | 可能有各种原因使个人或实体希望将某些数据从网络中移除,包括隐私、政府法规及著作权侵害。通过上传符合本标准的交易,网络用户可确保其请求被广播至所有相关的存储节点运营者。 16 | 17 | ## 规范 18 | 19 | ### 交易格式 20 | 21 | Do-Not-Store Request 交易必须是一笔带有以下标签的交易: 22 | 23 | | 标签名称 | 是否可选? | 标签值 | 24 | | ------------ | ---------- | ---------------------------------------------------------------------------- | 25 | | App-Name | 否 | `Do-Not-Store` | 26 | | Do-Not-Store | 否 | Arweave `Txn ID` of the data in question | 27 | | Category | 是 | `Category-Tag` | 28 | | Geography | 是 | 如果要求在特定国家/地区移除,请包含 2 位 `Country-Code`(Alpha-2, ISO 3166) | 29 | | Content-Type | 是 | 用于指示交易正文中所含内容类型的指南,以便于渲染。 | 30 | 31 | 交易的内容(body)必须包含一份文字描述,说明案件理由与为何该数据不应被存储。可加入多个 Do-Not-Store 标签以同时请求对多个数据项不存储。 32 | 33 | ### Category-Tags 34 | 35 | Category 标签是指定移除理由的简短方式。常见标签包括 `Private`、`Regulation`、`Copyright`。可视情况使用自定义的 category 标签。自定义标签不得超过 50 个字符。 36 | 37 | ## 未来工作 38 | 39 | 未来可能需要根据数据的各种属性或与之相关的标签来请求移除。本标准可扩展以允许交易清单及/或相关的过滤条件。 40 | -------------------------------------------------------------------------------- /src/es/getting-started/welcome.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: es 3 | --- 4 | 5 | # Desarrollar en la Permaweb 6 | 7 | ## Bienvenido a la Permaweb 8 | 9 | Crear aplicaciones en la permaweb, que está construida sobre el protocolo Arweave, es similar a construir aplicaciones web tradicionales pero con algunas diferencias clave. 10 | 11 | Una de las principales diferencias es que los datos se almacenan en la permaweb de forma permanente, tal y como sugiere el nombre, en lugar de almacenarse en un servidor centralizado. Esto significa que una vez que los datos se cargan a la permaweb, no se pueden eliminar ni alterar. Esto puede ser beneficioso para aplicaciones que requieren almacenamiento de datos inalterables, como los sistemas de gestión de la cadena de suministro o de votación. 12 | 13 | Otra diferencia es que la permaweb es descentralizada, lo que significa que no hay un punto central de control o falla. Esto puede proporcionar mayor seguridad y fiabilidad para las aplicaciones. 14 | 15 | Además, la permaweb usa un token único, llamado AR, para pagar el almacenamiento de datos en la red. Esto puede agregar una nueva capa de complejidad al desarrollo de aplicaciones, ya que los desarrolladores deben considerar cómo integrar AR en sus aplicaciones y manejar los pagos. 16 | 17 | En general, la experiencia de crear aplicaciones en la permaweb puede ser desafiante, pero también puede ser gratificante ya que ofrece beneficios únicos en comparación con el desarrollo web tradicional. 18 | 19 | ## Hola Mundos 20 | 21 | - [Hola Mundo (Sin código)](./quick-starts/hw-no-code.md) 22 | - [Hola Mundo (CLI)](./quick-starts/hw-cli.md) 23 | - [Hola Mundo (Node.js)](./quick-starts/hw-node.md) 24 | -------------------------------------------------------------------------------- /src/ja/fundamentals/gateways/graphql.md: -------------------------------------------------------------------------------- 1 | # GraphQL クエリ 2 | 3 | GraphQL は、トランザクションやブロックのメタデータ(トランザクション ID、タグなど)を検索する必要がある場合に特に有用です。 4 | 5 | トランザクションに関連付けられた実際のデータにアクセスする必要がある場合は、HTTP API やその他の関連する API/SDK を使用してください。 6 | 7 | ## 概要 8 | 9 | 時間の経過とともに、GraphQL インターフェースを実装するインデックスサービスは、Arweave 上のトランザクションデータをクエリするための主流の手法になりました。インデックスサービスは、ネットワークに追加されるトランザクションおよびブロックのヘッダーを(通常はサービスが運用するフル Arweave ノードから)読み取り、そのヘッダー情報をデータベースに挿入してインデックス化および効率的なクエリが可能にします。インデックスサービスはこのデータベースを利用して、クライアントがクエリを実行できる GraphQL エンドポイントを提供します。 10 | 11 | GraphQL には、クエリデータセットの取得に適したいくつかの利点があります。これにより、インデックスサービスはあらゆる種類のデータをクエリできる単一のエンドポイントを作成できます。サービスは各リソースごとに HTTP リクエストを行う(REST API のように)代わりに、単一のリクエストで複数のリソースを返すことができます。GraphQL を使用すると、クライアントは複数のリクエストを単一の往復でバッチ処理でき、必要なデータを正確に指定できるため、パフォーマンスが向上します。 12 | 13 | ## 基本的なクエリ例 14 | 15 | 次の GraphQL 例は、ある所有者のウォレットアドレスから、"Type" タグの値が "manifest" であるすべてのトランザクション ID をクエリします。タグの詳細については、[トランザクションタグ](../transactions/tags.md) のガイドを参照してください。 16 | 17 | ```js:no-line-numbers 18 | const queryObject = { 19 | query: 20 | `{ 21 | transactions ( 22 | owners:["${address}"], 23 | tags: [ 24 | { 25 | name: "Type", 26 | values: ["manifest"] 27 | } 28 | ] 29 | ) { 30 | edges { 31 | node { 32 | id 33 | } 34 | } 35 | } 36 | }` 37 | }; 38 | const results = await arweave.api.post('/graphql', queryObject); 39 | ``` 40 | 41 | ## 公開インデックスサービス 42 | 43 | [https://arweave.net/graphql](https://arweave.net/graphql) 44 | 45 | [https://arweave-search.goldsky.com/graphql](https://arweave-search.goldsky.com/graphql) 46 | 47 | ## リソース 48 | 49 | - [Arweave のクエリガイド](../../guides/graphql/index.md) 50 | - [ar-gql パッケージ](../../guides/graphql/ar-gql.md) 51 | -------------------------------------------------------------------------------- /src/zhTW/getting-started/contributing.md: -------------------------------------------------------------------------------- 1 | # 貢獻工作流程 2 | 3 | 任何社群成員都歡迎為 Permaweb Cookbook 做出貢獻;作為社群成員,我們希望建立一份高品質的參考指南,由許多小而精的資訊片段組成。以下說明任何人如何逐步為此專案貢獻的工作流程。 4 | 5 | ## 你需要知道什麼? 6 | 7 | - Git 和 GitHub — 將內容發佈到 github.com。 8 | - Markdown — Markdown 是一種以純文字為基礎的標記語言,可轉換為 HTML。 9 | - Arweave 與 Permaweb — 對 Permaweb 有一定了解並願意分享。 10 | 11 | ## 貢獻步驟 12 | 13 | ![流程圖](https://www.websequencediagrams.com/cgi-bin/cdraw?lz=dGl0bGUgQ29udHJpYnV0aW5nIHRvIFBlcm1hd2ViIENvb2tib29rCgoAGglvciAtPiBSZXBvIDogQ2hlY2sgT3V0IG9mIEZvcmsAFAVzaXRvcnkKbm90ZSBvdmVyAFYKb3IgOiBDcmVhdGUgTWFya2Rvd24gRG9jdW1lbnQAFxpvbW1pdCBDaGFuZ2VzAHQXUHVzaCBCcmFuY2gAYRljAHQGUHVsbCBSZXF1ZXMAWxphc3NpZ24gcmV2aWV3ZXIocykKUgAFBwCBdgsADQYAOhgAKAk6IEFwcHJvdmUgUFIAgjQXbWVyZ2UgdG8gbWFpbg&s=mscgen) 14 | 15 | ## 提交工作 16 | 17 | 本倉庫採用 [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) 規範。 18 | 19 | 一般貢獻流程: 20 | 21 | 1. 在 GitHub 上 fork 該倉庫 22 | 2. 將專案 clone 到你的機器 23 | 3. 在你自己的分支上提交變更 24 | 4. 將你的工作推回到你的 fork 25 | 5. 提交 Pull Request,讓我們能夠審查你的變更 26 | 27 | **注意**:在建立 Pull Request 之前,務必從「upstream」合併最新變更! 28 | 29 | ## 風格 30 | 31 | 以下是部分貢獻者對語氣與風格的一些建議: 32 | 33 | ::: tip 34 | 在撰寫這些內容時,我開始對每種類型適合的語氣有些感覺。 35 | CoreConcepts 應該比較像教科書式,採中性語氣、客觀陳述。 「This is how Arweave works」 36 | 對於 Guides,我覺得使用較具個人風格的語氣是可以的。以「你」稱呼讀者,並以協作的語調來寫,例如「接下來我們會看看...」 37 | 這可能只是個人偏好,但整體而言,我覺得這種語氣在閱讀較長的教學時,更能給讀者支持感並降低閱讀障礙。 38 | 事實上,這也是其他生態系中大多數受歡迎教學使用的語氣。 39 | 至於 Resources,我認為其語氣應與 CoreConcepts 類似,並偏好簡潔。 40 | dmac 41 | ::: 42 | 43 | ::: tip 44 | 概念性與參考性資料應採較冷靜、科學化的語調;指南類則應採取支持性甚至帶點幽默的語氣。較長篇的內容需要吸引讀者,避免讓讀者走神。 45 | Arch_Druid 46 | ::: 47 | 48 | ## 想瞭解更多關於貢獻的資訊,請查看倉庫風格指南 49 | 50 | [CONTRIBUTING](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md) 51 | -------------------------------------------------------------------------------- /src/ko/fundamentals/gateways/index.md: -------------------------------------------------------------------------------- 1 | # Arweave 네트워크의 게이트웨이 2 | 3 | 게이트웨이는 Arweave 네트워크와 최종 사용자 사이의 인터페이스 역할을 하며, Permaweb 데이터를 표준 웹 브라우저를 통해 쉽게 접근할 수 있도록 합니다. 4 | 5 | 종종 "Permaweb의 현관"으로 불리는 이러한 서비스는 사용자가 블록체인에 저장된 콘텐츠와 친숙한 웹 경험처럼 상호작용할 수 있게 해줍니다. 6 | 7 | Arweave에서 콘텐츠에 접근할 때는 일반적으로 다음과 같은 URL 구조를 사용합니다: 8 | 9 | ``` 10 | https:/// 11 | ``` 12 | 13 | 이를 통해 HTML 파일이 웹 페이지로 렌더링되고, 이미지가 제대로 표시되며, 다른 데이터 유형도 적절히 제공되어 분산 네트워크에 저장된 콘텐츠임에도 불구하고 전통적인 웹과 유사한 경험을 생성합니다. 14 | 15 | ## 게이트웨이의 주요 기능 16 | 17 | 게이트웨이는 기본 콘텐츠 전달을 넘어서 여러 중요한 서비스를 제공합니다: 18 | 19 | - **콘텐츠 캐싱**: 자주 접근되는 트랜잭션을 저장하여 성능을 향상 20 | - **데이터 인덱싱**: 태그 및 메타데이터로 트랜잭션을 쿼리할 수 있는 GraphQL 인터페이스 제공 21 | - **네트워크 시딩**: 트랜잭션을 Arweave 네트워크 전반에 전파하는 데 도움 22 | - **콘텐츠 중재**: 어떤 데이터를 제공할지 결정하기 위한 콘텐츠 정책 적용 23 | 24 | ## 코어 프로토콜과의 관계 25 | 26 | 게이트웨이는 **Arweave 코어 프로토콜의 일부가 아님**을 이해하는 것이 중요합니다. 이 구분은 몇 가지 함의를 가집니다: 27 | 28 | - 게이트웨이 운영은 네트워크를 보호하는 노드를 운영하는 것과 별개입니다 29 | - 게이트웨이 운영자에 대한 프로토콜 수준의 내장 인센티브 구조는 존재하지 않습니다 30 | - 게이트웨이 서비스는 자체적인 경제 모델과 인센티브를 구현할 수 있습니다 31 | - 애플리케이션은 성능 향상을 위해 자체 게이트웨이를 운영할 수 있습니다 32 | 33 | 이러한 분리는 다양한 게이트웨이 운영자가 여러 서비스 모델을 실험할 수 있는 보다 유연하고 분산된 생태계를 허용합니다. 34 | 35 | ## 주요 게이트웨이 서비스 36 | 37 | 다음은 현재 Arweave 생태계에서 서비스하는 몇몇 게이트웨이입니다: 38 | 39 | - [arweave.net](https://arweave.net/) - Arweave 팀에서 운영 40 | - [arweave.world](https://cookbook.arweave.world/) 41 | - [arweave.asia](https://cookbook.arweave.asia) 42 | - [arweave.live](https://arweave.live/) 43 | - [g8way.io](https://g8way.io) 44 | 45 | [AR.IO](https://ar.io/) 프로젝트는 게이트웨이 운영을 보다 접근하기 쉽게 만들어 네트워크 접근 지점의 분산화를 촉진하려는 작업을 진행 중입니다. 46 | 47 | ## 추가 자료 48 | 49 | - [ArWiki 게이트웨이 문서](https://arwiki.wiki/#/en/gateways) 50 | - [AR.IO 프로젝트](https://ar.io/) 51 | -------------------------------------------------------------------------------- /src/ko/getting-started/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | --- 3 | 4 | # Permaweb로 요리하기 5 | 6 | Permaweb 요리책은 Arweave 위에 애플리케이션을 구축하기 위한 필수 개념과 참고 자료를 제공하는 개발자 리소스입니다. 각 개념과 참고 자료는 Permaweb 개발 생태계의 특정 측면에 초점을 맞추고 추가 세부사항과 사용 예제를 제공합니다. 7 | 8 | 특히 스마트 계약을 생성하는 데 관심이 있는 분들은 AO 위에 구축된 탈중앙화 컴퓨팅 플랫폼을 다루는 [AO 요리책](https://cookbook_ao.arweave.net)을 확인해 보시기 바랍니다. 9 | 10 | ## 개발자 11 | 12 | 영원히 블록체인에 새겨지는 과거와 무한한 가능성이 열려 있는 미래가 공존하는 Arweave 개발 커뮤니티에 오신 것을 환영합니다. 함께 탈중앙화 웹을 구축해 봅시다! 13 | 14 | [자세히 읽기](welcome.md) 15 | 16 | ## 기여하기 17 | 18 | 요리책은 새로운 Permaweb 개발자가 기여하기 쉽도록 설계되어 있습니다. 어떤 것을 하는 방법을 모른다 하더라도, 요리책에 기여하는 것은 배우기에 좋은 방법입니다! 19 | 20 | 모든 오픈 이슈는 [여기](https://github.com/twilson63/permaweb-cookbook/issues)에서 확인하세요. 기여 가이드는 [여기](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md)에 있습니다. 요리책에 개념, 가이드 또는 참고 자료가 누락되어 있다면 이슈를 추가해 주세요. 21 | 22 | [자세히 읽기](contributing.md) 23 | 24 | ## 요리책 읽는 법 25 | 26 | Permaweb 요리책은 서로 다른 목표를 가진 여러 섹션으로 나뉘어 있습니다. 27 | 28 | | 섹션 | 설명 | 29 | | ------------------------- | ---------------------------------------------------------------------- | 30 | | 핵심 개념 (Core Concepts) | 개발에 알아두면 좋은 Permaweb의 구성 요소 | 31 | | 가이드 (Guides) | 개발을 위한 다양한 도구에 대한 간단한 가이드 | 32 | | 참조 (References) | 자주 필요로 하는 코드 스니펫에 대한 참조 | 33 | | 스타터 킷 (Starter Kits) | Permaweb에서 빠르게 개발을 시작할 수 있는 프론트엔드 프레임워크 스타터 | 34 | 35 | ## 빠른 시작 36 | 37 | 다음은 모든 수준의 개발자가 Permaweb에 코드를 배포하는 데 도움이 되는 짧은 가이드입니다. 38 | 39 | - [Hello World (No Code)](quick-starts/hw-no-code.md) 40 | - [Hello World (CLI)](quick-starts/hw-cli.md) 41 | -------------------------------------------------------------------------------- /src/ko/fundamentals/gateways/graphql.md: -------------------------------------------------------------------------------- 1 | # GraphQL 쿼리 2 | 3 | GraphQL은 트랜잭션 ID, 태그 등 트랜잭션이나 블록의 메타데이터를 찾아야 할 때 특히 유용합니다. 4 | 5 | 트랜잭션에 연결된 실제 데이터에 접근해야 하는 경우에는 HTTP API 또는 기타 관련 API/SDK를 사용하세요. 6 | 7 | ## 개요 8 | 9 | 시간이 지나면서 GraphQL 인터페이스를 구현한 인덱싱 서비스는 Arweave에서 트랜잭션 데이터를 쿼리하는 선호되는 방법이 되었습니다. 인덱싱 서비스는 네트워크에 추가되는 대로(보통 서비스가 운영하는 풀 Arweave 노드로부터) 트랜잭션 및 블록 헤더를 읽습니다. 읽은 헤더 정보는 인덱싱 및 효율적인 조회가 가능하도록 데이터베이스에 삽입됩니다. 인덱싱 서비스는 이 데이터베이스를 사용하여 클라이언트가 쿼리할 수 있는 GraphQL 엔드포인트를 제공합니다. 10 | 11 | GraphQL은 쿼리 데이터 세트를 검색하는 데 적합한 몇 가지 장점이 있습니다. 인덱싱 서비스는 단일 엔드포인트를 생성하여 모든 유형의 데이터를 쿼리할 수 있게 합니다. 또한 서비스는 각 리소스마다 HTTP 요청을 하는 것(REST API에서와 같이)과 달리 단일 요청으로 여러 리소스를 반환할 수 있습니다. GraphQL을 사용하면 클라이언트가 여러 요청을 단일 왕복으로 배치하고 필요한 데이터를 정확히 지정할 수 있어 성능이 향상됩니다. 12 | 13 | ## 기본 쿼리 예시 14 | 15 | 다음 GraphQL 예시는 특정 소유자 지갑 주소의 모든 트랜잭션 ID 중에서 "Type" 태그의 값이 "manifest"인 것들을 쿼리합니다. 태그에 대한 자세한 내용은 [트랜잭션 태그](../transactions/tags.md) 가이드를 참조하세요. 16 | 17 | ```js:no-line-numbers 18 | const queryObject = { 19 | query: 20 | `{ 21 | transactions ( 22 | owners:["${address}"], 23 | tags: [ 24 | { 25 | name: "Type", 26 | values: ["manifest"] 27 | } 28 | ] 29 | ) { 30 | edges { 31 | node { 32 | id 33 | } 34 | } 35 | } 36 | }` 37 | }; 38 | const results = await arweave.api.post('/graphql', queryObject); 39 | ``` 40 | 41 | ## 공용 인덱싱 서비스 42 | 43 | [https://arweave.net/graphql](https://arweave.net/graphql) 44 | 45 | [https://arweave-search.goldsky.com/graphql](https://arweave-search.goldsky.com/graphql) 46 | 47 | ## 자료 48 | 49 | - [Arweave 쿼리 가이드](../../guides/querying-arweave/querying-arweave.md) 50 | - [ar-gql 패키지](../../guides/querying-arweave/ar-gql.md) 51 | - [GraphQL 참조](../../references/gql.md) 52 | -------------------------------------------------------------------------------- /src/zh/getting-started/contributing.md: -------------------------------------------------------------------------------- 1 | # 贡献工作流程 2 | 3 | 任何社区成员都欢迎为 Permaweb Cookbook 做出贡献;作为社区成员,我们希望建立一份高质量的参考指南,由许多小而精的信息片段组成。以下说明任何人如何逐步为此项目贡献的工作流程。 4 | 5 | ## 你需要知道什么? 6 | 7 | - Git 和 GitHub — 将内容发布到 github.com。 8 | - Markdown — Markdown 是一种以纯文本为基础的标记语言,可转换为 HTML。 9 | - Arweave 与 Permaweb — 对 Permaweb 有一定了解并愿意分享。 10 | 11 | ## 贡献步骤 12 | 13 | ![流程图](https://www.websequencediagrams.com/cgi-bin/cdraw?lz=dGl0bGUgQ29udHJpYnV0aW5nIHRvIFBlcm1hd2ViIENvb2tib29rCgoAGglvciAtPiBSZXBvIDogQ2hlY2sgT3V0IG9mIEZvcmsAFAVzaXRvcnkKbm90ZSBvdmVyAFYKb3IgOiBDcmVhdGUgTWFya2Rvd24gRG9jdW1lbnQAFxpvbW1pdCBDaGFuZ2VzAHQXUHVzaCBCcmFuY2gAYRljAHQGUHVsbCBSZXF1ZXMAWxphc3NpZ24gcmV2aWV3ZXIocykKUgAFBwCBdgsADQYAOhgAKAk6IEFwcHJvdmUgUFIAgjQXbWVyZ2UgdG8gbWFpbg&s=mscgen) 14 | 15 | ## 提交工作 16 | 17 | 本仓库采用 [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) 规范。 18 | 19 | 一般贡献流程: 20 | 21 | 1. 在 GitHub 上 fork(派生)该仓库 22 | 2. 将项目 clone(克隆)到你的机器 23 | 3. 在你自己的分支上提交变更 24 | 4. 将你的工作推回到你的 fork 25 | 5. 提交 Pull Request,让我们能够审查你的变更 26 | 27 | **注意**:在创建 Pull Request 之前,务必从 upstream 合并最新更改! 28 | 29 | ## 风格 30 | 31 | 以下是部分贡献者对语气与风格的一些建议: 32 | 33 | ::: tip 34 | 在撰写这些内容时,我开始对每种类型适合的语气有些感觉。 35 | CoreConcepts 应该比较像教科书式,采用中性语气、客观陈述。 “这就是 Arweave 的工作方式” 36 | 对于 Guides,我觉得使用较具个人风格的语气是可以的。以“你”称呼读者,并以协作的语调来写,例如“接下来我们会看看...” 37 | 这可能只是个人偏好,但整体而言,我觉得这种语气在阅读较长的教学时,更能给读者支持感并降低阅读障碍。 38 | 事实上,这也是其他生态中大多数受欢迎教学使用的语气。 39 | 至于 Resources,我认为其语气应与 CoreConcepts 类似,并偏好简洁。 40 | dmac 41 | ::: 42 | 43 | ::: tip 44 | 概念性与参考性资料应采用较冷静、科学化的语调;指南类则应采取支持性甚至带点幽默的语气。较长篇的内容需要吸引读者,避免让读者走神。 45 | Arch_Druid 46 | ::: 47 | 48 | ## 想了解更多关于贡献的信息,请查看仓库风格指南 49 | 50 | [CONTRIBUTING](https://github.com/twilson63/permaweb-cookbook/blob/main/CONTRIBUTING.md) 51 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: publish cookbook 2 | 3 | on: 4 | push: 5 | branches: 6 | - "main" 7 | 8 | jobs: 9 | publish: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - name: ⬇️ Checkout repo 13 | uses: actions/checkout@v4 14 | with: 15 | fetch-depth: 0 16 | - name: ⎔ Setup Node 17 | uses: actions/setup-node@v4 18 | with: 19 | node-version: 20.x 20 | - name: 📥 Download deps 21 | run: npm ci 22 | - name: 🛠 Build Docs 23 | id: build_artifacts 24 | run: | 25 | npm run build 26 | 27 | echo "artifacts_output_dir=src/.vuepress/dist" >> $GITHUB_OUTPUT 28 | env: 29 | OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} 30 | SPECIAL_ACCESS_TOKEN: ${{ secrets.SPECIAL_ACCESS_TOKEN }} 31 | - name: 💾 Publish to Arweave 32 | id: publish_artifacts 33 | run: | 34 | npx permaweb-deploy \ 35 | --ant-process=${ANT_PROCESS} \ 36 | --undername=${UNDERNAME} \ 37 | --arns-name=cookbook \ 38 | --deploy-folder=${ARTIFACTS_OUTPUT_DIR} \ 39 | --ttl-seconds=900 40 | env: 41 | DEPLOY_KEY: ${{ secrets.COOKBOOK }} 42 | ARTIFACTS_OUTPUT_DIR: ${{ steps.build_artifacts.outputs.artifacts_output_dir }} 43 | ANT_PROCESS: tP8uMeEQR-zodP_jHRyLJf1K7TZtACUsBrn8wdYlGuc 44 | UNDERNAME: "@" 45 | - name: Discord Notification 46 | uses: Ilshidur/action-discord@master 47 | env: 48 | DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} 49 | with: 50 | args: "The project {{ EVENT_PAYLOAD.repository.full_name }} has been deployed." 51 | -------------------------------------------------------------------------------- /src/zh/references/specs/arfs/data-model.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "arfs.md" 3 | next: "entity-types.md" 4 | --- 5 | 6 | # 数据模型 7 | 8 | 由于 Arweave 的永久性与不可变更性,传统的文件结构操作(例如重命名或移动文件或文件夹)无法仅通过更新链上数据来完成。ArFS 通过基于 Arweave [交易头](https://docs.arweave.org/developers/server/http-api#transaction-format) 中元数据标签所定义的仅追加(append-only)交易数据模型来解决此问题。 9 | 10 | 此模型采用自下而上的引用方法,可避免文件系统更新时的竞争条件。每个文件包含指向父文件夹的元数据,而每个文件夹包含指向其父 Drive 的元数据。若采用自上而下的数据模型,则父模型(例如文件夹)必须存储其子项的引用。 11 | 12 | 这些已定义的实体允许客户端构建 Drive 的状态,使其在外观与使用感受上类似于文件系统 13 | 14 | - Drive 实体包含文件夹与文件 15 | 16 | - Folder 实体包含其他文件夹或文件 17 | 18 | - File 实体同时包含文件数据与元数据 19 | 20 | - Snapshot 实体包含整个 Drive 内所有文件与文件夹元数据的状态汇总 21 | 22 | ## 实体关系 23 | 24 | 下图显示 Drive、Folder、File 实体以及其相关数据之间的高阶关系。各实体类型的更详细信息可见[此处](./entity-types.md)。 25 | 26 | 27 | 28 |
实体关系图
29 | 30 | 如图所示,每个文件与文件夹都包含指向父文件夹与父 Drive 的元数据。Drive 实体包含关于自身的元数据,但不包含子项内容。因此,客户端必须从最低层开始构建 Drive 状态,逐层向上组合。 31 | 32 | ## 元数据格式 33 | 34 | 存储在任一 Arweave 交易标签中的元数据将以以下方式定义: 35 | 36 | ```json 37 | { "name": "Example-Tag", "value": "example-data" } 38 | ``` 39 | 40 | 存储在交易数据有效载荷(Transaction Data Payload)中的元数据将遵循以下 JSON 格式: 41 | 42 | ```json 43 | { 44 | "exampleField": "exampleData" 45 | } 46 | ``` 47 | 48 | 带有 `?` 后缀的字段为可选。 49 | 50 | ```json 51 | { 52 | "name": "My Project", 53 | "description": "This is a sample project.", 54 | "version?": "1.0.0", 55 | "author?": "John Doe" 56 | } 57 | ``` 58 | 59 | 枚举字段值(必须遵循特定值者)以 "value 1 | value 2" 格式定义。 60 | 61 | 所有用于实体 ID 的 UUID 均基于[通用唯一识别码](https://en.wikipedia.org/wiki/Universally_unique_identifier) 标准。 62 | 63 | 不需要以任何特定顺序列出 ArFS 标签。 64 | -------------------------------------------------------------------------------- /src/id/concepts/bundlers.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Layanan Bundling 6 | 7 | --- 8 | 9 | Dengan layanan bundling, pengguna dapat mengirimkan transaksi data mereka ke layanan bundling untuk "dibundle" bersama dengan transaksi pengguna lain dan dikirimkan sebagai satu transaksi Arweave tunggal dalam blok Arweave yang akan datang. 10 | 11 | ### Mengirimkan ke layanan bundling 12 | 13 | --- 14 | 15 | Anda dapat membaca lebih lanjut tentang cara mengirimkan transaksi Anda ke layanan bundling [di sini](/guides/posting-transactions/irys.md). 16 | 17 | ### Apa itu Bundle? 18 | 19 | --- 20 | 21 | Deskripsi bundle transaksi dan manfaatnya dapat ditemukan [di sini](/concepts/bundles.md). 22 | 23 | ### Apa itu node Bundler? 24 | 25 | --- 26 | 27 | Seorang bundler adalah node yang bertanggung jawab untuk menerima transaksi atau item data dari pengguna, mem-bundlenya, dan mengirimkannya ke jaringan Arweave (dengan jaminan bahwa mereka akan diunggah dengan ID transaksi tertentu). 28 | 29 | Pionir layanan bundling dan bundler terbesar saat ini adalah [irys.xyz](https://irys.xyz). Node Irys menjalankan: 30 | 31 | - Proksi terbalik NGINX 32 | - Proses API HTTP 33 | - Cache Redis 34 | - Database SQL (Postgres) 35 | - Proses pekerja 36 | 37 | Semuanya memastikan bahwa data dipertahankan hingga diunggah ke Arweave. 38 | 39 | ### Mendukung berbagai mata uang 40 | 41 | --- 42 | 43 | Fitur utama dari layanan bundling adalah bahwa karena mereka membayar untuk transaksi dasar Arweave yang akan dikirimkan (menggunakan token AR), mereka dapat memilih untuk mengaktifkan pembayaran biaya penyimpanan dengan berbagai jenis token yang berbeda. Ini adalah titik masuk utama bagi rantai lain untuk mengaktifkan penyimpanan permanen Arweave untuk pengguna mereka. 44 | -------------------------------------------------------------------------------- /src/zhTW/fundamentals/gateways/data-retrieval.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 從 Arweave 取得資料 3 | --- 4 | 5 | # 從 Arweave 取得資料 6 | 7 | 當您擁有交易 ID(txid)或 ArNS 名稱時,有多種方法可以從 Arweave 網路擷取相關資料。此指南涵蓋開發者可用的主要方式。 8 | 9 | ## 概覽 10 | 11 | 當您需要取得儲存在 Arweave 的資料時,根據使用情境有多種選擇: 12 | 13 | - **HTTP API**:對網關端點發送直接的 HTTP 請求 14 | - **Arweave.js**:用於程式化存取的 JavaScript/TypeScript SDK 15 | - **ARIO Wayfinder**:具智慧路由與驗證功能的協議 16 | 17 | ## 可用方法 18 | 19 | ### [HTTP API](./http-api.md) 20 | 21 | 使用標準 HTTP 請求存取 Arweave 網關的最簡單方法。非常適合基本資料擷取且希望最小化依賴的情況。 22 | 23 | 最適合: 24 | 25 | - 簡單的資料擷取 26 | - 伺服器端應用程式 27 | - 想要避免額外套件時 28 | 29 | ### [Arweave.js](./arweave-js.md) 30 | 31 | 官方的 JavaScript/TypeScript SDK,提供對 Arweave 網路的完整介面。 32 | 33 | 最適合: 34 | 35 | - JavaScript/TypeScript 應用程式 36 | - 複雜的 Arweave 操作 37 | - 當您需要交易的 metadata 與資料時 38 | 39 | ### [ARIO Wayfinder](./wayfinder.md) 40 | 41 | 一個提供去中心化、經密碼學驗證存取並具智慧型網關路由的協議。 42 | 43 | 最適合: 44 | 45 | - 需要可靠性的生產環境應用程式 46 | - 當您需要自動選擇網關時 47 | - 需要資料驗證的應用程式 48 | 49 | ## 快速比較 50 | 51 | | Method | Complexity | Dependencies | Features | 52 | | ---------- | ---------- | ----------------------- | --------------------------------- | 53 | | HTTP API | Low | None | Basic data retrieval | 54 | | Arweave.js | Medium | `arweave` package | Full transaction access | 55 | | Wayfinder | Medium | `@ar.io/wayfinder-core` | Intelligent routing, verification | 56 | 57 | (表格欄位說明:Method = 方法, Complexity = 複雜度, Dependencies = 相依性, Features = 功能) 58 | 59 | ## 開始使用 60 | 61 | 選擇最適合您需求的方法: 62 | 63 | 1. **從 HTTP API 開始**,如果您想要最簡單的方式 64 | 2. **使用 Arweave.js**,如果您正在建置 JavaScript/TypeScript 應用程式 65 | 3. **考慮 Wayfinder**,如果您需要生產等級的可靠性與驗證 66 | 67 | 每個方法頁面都包含安裝說明、基本使用範例,以及連結到更詳細的文件。 68 | -------------------------------------------------------------------------------- /src/id/guides/deployment/irys-cli.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Irys CLI (Previously Bundlr) 6 | 7 | ## Prasyarat 8 | 9 | Diperlukan dompet Arweave untuk melakukan penyebaran. Jika ukuran direktori lebih dari 100kb, diperlukan instance Irys yang telah didanai. 10 | 11 | ## Instalasi 12 | 13 | Untuk menginstal Irys CLI, jalankan perintah berikut: 14 | 15 | 16 | 17 | ```console:no-line-numbers 18 | npm install -g @irys/sdk 19 | ``` 20 | 21 | 22 | 23 | 24 | ```console:no-line-numbers 25 | yarn global add @irys/sdk 26 | ``` 27 | 28 | 29 | 30 | 31 | ## Pembangunan Statis 32 | 33 | Aplikasi Permaweb dibangun secara statis, artinya kode dan kontennya dibangun sebelumnya dan disimpan di jaringan. 34 | 35 | Di bawah ini adalah contoh situs statis. Untuk mendistribusikannya ke Permaweb, direktori `build` akan digunakan sebagai argumen untuk flag `upload-dir`. 36 | 37 | ```js 38 | |- build 39 | |- index.html 40 | |- styles.css 41 | |- index.js 42 | ``` 43 | 44 | ## Penyebaran 45 | 46 | ```console 47 | irys upload-dir [path to folder] -w [path to wallet] --index-file [index.html] -c [mata uang] -h [node Irys] 48 | ``` 49 | 50 |
51 | 52 | 53 | ## Perintah Lain 54 | 55 | #### Dana Irys 56 | 57 | ```console 58 | irys fund [jumlah] -h [node Irys] -w [path to wallet] -c [mata uang] 59 | ``` 60 | 61 | \* Mendanai instance Irys dapat memakan waktu hingga 30 menit untuk diproses 62 | 63 | #### Periksa Saldo Irys 64 | 65 | ```console 66 | irys balance [alamat dompet] -h [node Irys] -c arweave 67 | ``` 68 | -------------------------------------------------------------------------------- /src/zhTW/references/specs/arfs/data-model.md: -------------------------------------------------------------------------------- 1 | --- 2 | prev: "arfs.md" 3 | next: "entity-types.md" 4 | --- 5 | 6 | # 資料模型 7 | 8 | 由於 Arweave 的永久性與不可變更性,傳統的檔案結構操作(例如重新命名或移動檔案或資料夾)無法僅透過更新鏈上資料來完成。ArFS 透過基於 Arweave [交易標頭](https://docs.arweave.org/developers/server/http-api#transaction-format) 中後設資料標籤所定義的僅追加(append-only)交易資料模型來解決此問題。 9 | 10 | 此模型採用自下而上的參照方法,可避免檔案系統更新時的競態條件。每個檔案包含指向父資料夾的後設資料,而每個資料夾包含指向其父 Drive 的後設資料。若採用自上而下的資料模型,則父模型(例如資料夾)必須儲存其子項的參考。 11 | 12 | 這些已定義的實體允許用戶端構建 Drive 的狀態,使其在外觀與使用感受上類似於檔案系統 13 | 14 | - Drive 實體包含資料夾與檔案 15 | 16 | - Folder 實體包含其他資料夾或檔案 17 | 18 | - File 實體同時包含檔案資料與後設資料 19 | 20 | - Snapshot 實體包含整個 Drive 內所有檔案與資料夾後設資料的狀態彙總 21 | 22 | ## 實體關係 23 | 24 | 下圖顯示 Drive、Folder、File 實體以及其相關資料之間的高階關係。各實體類型的更詳細資訊可見[此處](./entity-types.md)。 25 | 26 | 27 | 28 |
實體關係圖
29 | 30 | 如圖所示,每個檔案與資料夾都包含指向父資料夾與父 Drive 的後設資料。Drive 實體包含關於自身的後設資料,但不包含子項內容。因此,用戶端必須從最低層開始構建 Drive 狀態,逐層向上組合。 31 | 32 | ## 後設資料格式 33 | 34 | 儲存在任一 Arweave 交易標籤中的後設資料將以以下方式定義: 35 | 36 | ```json 37 | { "name": "Example-Tag", "value": "example-data" } 38 | ``` 39 | 40 | 儲存在交易資料有效載荷(Transaction Data Payload)中的後設資料將遵循以下 JSON 格式: 41 | 42 | ```json 43 | { 44 | "exampleField": "exampleData" 45 | } 46 | ``` 47 | 48 | 帶有 `?` 後綴的欄位為選填。 49 | 50 | ```json 51 | { 52 | "name": "My Project", 53 | "description": "This is a sample project.", 54 | "version?": "1.0.0", 55 | "author?": "John Doe" 56 | } 57 | ``` 58 | 59 | 列舉欄位值(必須遵循特定值者)以 "value 1 | value 2" 格式定義。 60 | 61 | 所有用於實體 ID 的 UUID 均基於[通用唯一識別碼](https://en.wikipedia.org/wiki/Universally_unique_identifier) 標準。 62 | 63 | 不需要以任何特定順序列出 ArFS 標籤。 64 | -------------------------------------------------------------------------------- /src/id/guides/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: id 3 | --- 4 | 5 | # Panduan 6 | 7 | Panduan berukuran snack untuk elemen-elemen dasar Permaweb: 8 | 9 | - [ArProfile](arprofile.md) 10 | - [Integrasi DNS](dns-integration/server-side.md) 11 | - [Sisi Server](dns-integration/server-side.md) 12 | - [Spheron](dns-integration/spheron.md) 13 | - [Mengunggah Aplikasi](deployment/irys-cli.md) 14 | - [arkb](deployment/arkb.md) 15 | - [irys-cli](deployment/irys-cli.md) 16 | - [tindakan-github](deployment/github-action.md) 17 | - [Mengunggah PathManifests](deploying-manifests/deploying-manifests.md) 18 | - [arweave.app](deploying-manifests/arweave-app.md) 19 | - [ardrive](deploying-manifests/ardrive.md) 20 | - [irys.xyz](deploying-manifests/irys.md) 21 | - [Mengunggah PSTs](deploying-psts.md) 22 | - [GraphQL](querying-arweave/querying-arweave.md) 23 | - [ArDB](querying-arweave/ardb.md) 24 | - [ar-gql](querying-arweave/ar-gql.md) 25 | - [Layanan Pencarian](querying-arweave/search-indexing-service.md) 26 | - SmartWeave 27 | - [Token Atomik](atomic-tokens/intro.md) 28 | - [Vouch](vouch-system.md) 29 | - Kontrak Warp 30 | - [Pengantar](smartweave/warp/intro.md) 31 | - [Mengunggah Kontrak](smartweave/warp/deploying-contracts.md) 32 | - [Baca Status Kontrak](smartweave/warp/readstate.md) 33 | - [Interaksi Kontrak Tulis](smartweave/warp//write-interactions.md) 34 | - [Evolusi Kontrak](smartweave/warp//evolve.md) 35 | - [Pengujian](testing/arlocal.md) 36 | 37 | > Apakah Anda berpikir ada panduan Permaweb yang hilang? Buat isu di [Github](https://github.com/twilson63/permaweb-cookbook/issues) atau pertimbangkan [berkontribusi](../getting-started/contributing.md) 38 | -------------------------------------------------------------------------------- /src/archive/concepts/vouch-ja.md: -------------------------------------------------------------------------------- 1 | --- 2 | locale: ja 3 | --- 4 | # Vouch 5 | 6 | ## 概要 7 | 8 | #### 動機 9 | 10 | バウチングは、Sybil攻撃に対する分散型アプローチを提供します。Sybil攻撃とは、攻撃者が多数の擬似的なアイデンティティを作成してネットワークを侵害し、不相応に大きな影響を得ることです。 11 | 12 | #### Vouchプロトコル 13 | 14 | Arweaveは、ANS-109 Vouch(アイデンティティの主張)の概念を導入しました。これは、特定のトランザクション形式といくつかのタグを使用して、誰でもpermaweb上の任意のArweaveアドレスのアイデンティティと人間性を「保証」できるようにする標準です。 15 | 16 | ANS-109のような標準をpermawebに追加することで、Sybil攻撃や悪意のある行為者を最小限に抑え、permawebユーザーにとってより安全な体験を提供します。 17 | 18 | #### VouchDAO 19 | VouchDAOは、Vouch標準の上に構築されたコミュニティ主導の分散型検証レイヤーです。開発者は保証サービスを作成し、VouchDAOコミュニティのメンバーはこれらの検証サービスのどれが信頼できるかを投票で決定します。 20 | 21 | 22 | 23 | ## 仕組み 24 | 開発者は、特定の要件に基づいてユーザーのArweaveウォレットを保証するためのさまざまなVouchサービスを作成することができます。現在の例としては、180以上のArweaveアドレスを保証してきた最初の保証サービスであるTwitterサービスがあります。 25 | 26 | VouchDAOスマートコントラクトの状態には`vouched`という属性があります。この状態は、ユーザーが確認されるたびに更新されます。`vouched`オブジェクトは、以下の形式で保証されたアドレスのリストを保存します。 27 | 28 | 29 | ``` 30 | VOUCH_USER_ADDRESS:[ 31 | { 32 | service:"SERVICE_ADDRESS_1" 33 | transaction:"TX_ID" 34 | }, 35 | { 36 | service:"SERVICE_ADDRESS_2" 37 | transaction:"TX_ID" 38 | } 39 | ] 40 | ``` 41 | 42 | 確認されたユーザーには、そのウォレットがそのサービスによって保証されたことを示すために、ANS-109トークンが送信されます。 43 | 44 | ## ANS-109トランザクションフォーマット 45 | | タグ名 | _オプション?_ | タグ値 | 46 | |---|---|---| 47 | |App-Name|必須|`Vouch`| 48 | |Vouch-For|必須|このトランザクションで保証されるArweaveの`address`| 49 | |App-Version|オプション|`0.1`| 50 | |Verification-Method|オプション|その人のアイデンティティを確認する方法。例 - `Twitter`/`対面`/`Gmail`/`Facebook`| 51 | |User-Identifier|オプション|確認方法に基づくユーザーの識別子。例 - `abhav@arweave.org`| 52 | 53 | ## リソース 54 | * [VouchDAO](https://vouch-dao.arweave.net) 55 | * [VouchDAOコントラクト](https://sonar.warp.cc/?#/app/contract/_z0ch80z_daDUFqC9jHjfOL8nekJcok4ZRkE_UesYsk) --------------------------------------------------------------------------------