From 1698b4bc052d3e71c6299c4644d7c75aa7f24ce4 Mon Sep 17 00:00:00 2001 From: hugo-blue Date: Mon, 21 Aug 2023 15:43:40 +0000 Subject: [PATCH] deploy: 281a4673cdf19c9ba9efaa56ff3229f42a0809f5 --- 404.html | 4 ++-- assets/js/1db64337.2deb7598.js | 1 + assets/js/1db64337.d57f0da7.js | 1 - .../{935f2afb.eb63f911.js => 935f2afb.00ee3bd6.js} | 2 +- ...me~main.ab290940.js => runtime~main.7883da33.js} | 2 +- category/guides/index.html | 4 ++-- category/tutorial---basics/index.html | 4 ++-- category/tutorial---extras/index.html | 4 ++-- guides/how-to-register/index.html | 4 ++-- guides/how-to-run-prover/index.html | 4 ++-- guides/introduction/index.html | 4 ++-- index.html | 4 ++-- overview/index.html | 13 ++++--------- search-index.json | 2 +- search/index.html | 4 ++-- tutorial-basics/congratulations/index.html | 4 ++-- tutorial-basics/create-a-blog-post/index.html | 4 ++-- tutorial-basics/create-a-document/index.html | 4 ++-- tutorial-basics/create-a-page/index.html | 4 ++-- tutorial-basics/deploy-your-site/index.html | 4 ++-- tutorial-basics/markdown-features/index.html | 4 ++-- tutorial-extras/manage-docs-versions/index.html | 4 ++-- tutorial-extras/translate-your-site/index.html | 4 ++-- 23 files changed, 42 insertions(+), 47 deletions(-) create mode 100644 assets/js/1db64337.2deb7598.js delete mode 100644 assets/js/1db64337.d57f0da7.js rename assets/js/{935f2afb.eb63f911.js => 935f2afb.00ee3bd6.js} (60%) rename assets/js/{runtime~main.ab290940.js => runtime~main.7883da33.js} (97%) diff --git a/404.html b/404.html index a2de447..da9d3ab 100644 --- a/404.html +++ b/404.html @@ -4,13 +4,13 @@ Page Not Found | ZKPool Doc - +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

- + \ No newline at end of file diff --git a/assets/js/1db64337.2deb7598.js b/assets/js/1db64337.2deb7598.js new file mode 100644 index 0000000..c551466 --- /dev/null +++ b/assets/js/1db64337.2deb7598.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkzkpool_doc=self.webpackChunkzkpool_doc||[]).push([[372],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>h});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function l(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=o.createContext({}),p=function(e){var t=o.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=p(e.components);return o.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),u=p(r),m=n,h=u["".concat(s,".").concat(m)]||u[m]||d[m]||a;return r?o.createElement(h,l(l({ref:t},c),{},{components:r})):o.createElement(h,l({ref:t},c))}));function h(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,l=new Array(a);l[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:n,l[1]=i;for(var p=2;p{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>i,toc:()=>p});var o=r(7462),n=(r(7294),r(3905));const a={sidebar_position:4,slug:"/overview"},l="Overview",i={unversionedId:"overview",id:"overview",title:"Overview",description:"There has been an explosion of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.",source:"@site/docs/overview.md",sourceDirName:".",slug:"/overview",permalink:"/overview",draft:!1,editUrl:"https://github.com/aoraki-labs/zkpool-doc/tree/main/docs/overview.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{sidebar_position:4,slug:"/overview"},sidebar:"tutorialSidebar",previous:{title:"Translate your site",permalink:"/tutorial-extras/translate-your-site"},next:{title:"Guides",permalink:"/category/guides"}},s={},p=[{value:"Challenges for ZKP projects",id:"challenges-for-zkp-projects",level:2},{value:"Challenges for ZKP Prover Operators",id:"challenges-for-zkp-prover-operators",level:2},{value:"The Design Target of ZKPool",id:"the-design-target-of-zkpool",level:2},{value:"The Roadmap of ZKPool",id:"the-roadmap-of-zkpool",level:2}],c={toc:p},u="wrapper";function d(e){let{components:t,...r}=e;return(0,n.kt)(u,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"overview"},"Overview"),(0,n.kt)("p",null,"There has been an explosion of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup. "),(0,n.kt)("p",null,"ZKP computation power is different from POW. While POW requires many machines to achieve decentralization, ZKP is a service that each project needs, and its cost is an essential factor. A comparison is shown in the below table."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Aspect"),(0,n.kt)("th",{parentName:"tr",align:null},"POW Miners"),(0,n.kt)("th",{parentName:"tr",align:null},"ZKP Provers"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Computation Purpose"),(0,n.kt)("td",{parentName:"tr",align:null},"Decentralization"),(0,n.kt)("td",{parentName:"tr",align:null},"To generate a proof")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Computation Content"),(0,n.kt)("td",{parentName:"tr",align:null},"A large number of random, repeated, and similar functions."),(0,n.kt)("td",{parentName:"tr",align:null},"Complex mathematical operations with deterministic results.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Computation Redundancy"),(0,n.kt)("td",{parentName:"tr",align:null},"Necessary"),(0,n.kt)("td",{parentName:"tr",align:null},"Unnecessary")))),(0,n.kt)("p",null,"The adoption of ZKP is still facing challenges from both the ZKP projects' side and the ZKP prover operators' side due to these features."),(0,n.kt)("h2",{id:"challenges-for-zkp-projects"},"Challenges for ZKP projects"),(0,n.kt)("p",null,"Currently, each ZKP project has to make a considerable effort to build a proving system, including algorithms and infrastructure, while keeping it low-cost. Some questions that come up while building a zk-related project include:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Which proving system could be used?"),(0,n.kt)("li",{parentName:"ol"},"How to design the circuit?"),(0,n.kt)("li",{parentName:"ol"},"How to set up the proving system?"),(0,n.kt)("li",{parentName:"ol"},"What is the performance of the proving system? How can it be optimized?"),(0,n.kt)("li",{parentName:"ol"},"How much does the proving system cost? How can the overall cost be reduced?")),(0,n.kt)("h2",{id:"challenges-for-zkp-prover-operators"},"Challenges for ZKP Prover Operators"),(0,n.kt)("p",null,"The ZKP prover operators meet some new challenges other than POW miners."),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Some ZKP projects may require a gas fee to submit proof or staking as a prover, which brings cost and risk for the provers. "),(0,n.kt)("li",{parentName:"ol"},"Some projects may use bid or random selection solutions to avoid redundant computation, which may not fully utilize the prover when it hasn't won the task. It reduces the revenue a prover can have. "),(0,n.kt)("li",{parentName:"ol"},"The various ZKP projects have different algorithms and prover software, making it difficult for provers to accommodate these various projects.")),(0,n.kt)("h2",{id:"the-design-target-of-zkpool"},"The Design Target of ZKPool"),(0,n.kt)("p",null,"The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers."),(0,n.kt)("p",null,"At ZKPool, we aim to provide a solution that addresses the challenges in the proving system."),(0,n.kt)("p",null,"The ideal solution is to provide the following to the ZKP projects:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Provides fast and high-throughput performance."),(0,n.kt)("li",{parentName:"ol"},"Offers cheap and transparent costs.")),(0,n.kt)("p",null,"The design principles of ZKPool include:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit."),(0,n.kt)("li",{parentName:"ul"},"Transparency: Keep revenue distribution transparent")),(0,n.kt)("h2",{id:"the-roadmap-of-zkpool"},"The Roadmap of ZKPool"),(0,n.kt)("p",null,"The ZKPool will have the following milestones:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Centralized solution for one ZKP project"),(0,n.kt)("li",{parentName:"ul"},"Connect multiple ZKP projects with the unified ZKP provers"),(0,n.kt)("li",{parentName:"ul"},"Fully decentralized ZKP computing pool")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/1db64337.d57f0da7.js b/assets/js/1db64337.d57f0da7.js deleted file mode 100644 index dc440e9..0000000 --- a/assets/js/1db64337.d57f0da7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkzkpool_doc=self.webpackChunkzkpool_doc||[]).push([[372],{3905:(e,t,o)=>{o.d(t,{Zo:()=>c,kt:()=>m});var r=o(7294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,r)}return o}function l(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var s=r.createContext({}),p=function(e){var t=r.useContext(s),o=t;return e&&(o="function"==typeof e?e(t):l(l({},t),e)),o},c=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},h=r.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),u=p(o),h=n,m=u["".concat(s,".").concat(h)]||u[h]||d[h]||a;return o?r.createElement(m,l(l({ref:t},c),{},{components:o})):r.createElement(m,l({ref:t},c))}));function m(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,l=new Array(a);l[0]=h;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:n,l[1]=i;for(var p=2;p{o.r(t),o.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>d,frontMatter:()=>a,metadata:()=>i,toc:()=>p});var r=o(7462),n=(o(7294),o(3905));const a={sidebar_position:4,slug:"/overview"},l="Overview",i={unversionedId:"overview",id:"overview",title:"Overview",description:"There are explosions of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.",source:"@site/docs/overview.md",sourceDirName:".",slug:"/overview",permalink:"/overview",draft:!1,editUrl:"https://github.com/aoraki-labs/zkpool-doc/tree/main/docs/overview.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{sidebar_position:4,slug:"/overview"},sidebar:"tutorialSidebar",previous:{title:"Translate your site",permalink:"/tutorial-extras/translate-your-site"},next:{title:"Guides",permalink:"/category/guides"}},s={},p=[{value:"Challenges for ZKP projects",id:"challenges-for-zkp-projects",level:2},{value:"Challenges for ZKP Prover Operators",id:"challenges-for-zkp-prover-operators",level:2},{value:"The Design Target of ZKPool",id:"the-design-target-of-zkpool",level:2},{value:"The Roadmap of ZKPool",id:"the-roadmap-of-zkpool",level:2}],c={toc:p},u="wrapper";function d(e){let{components:t,...o}=e;return(0,n.kt)(u,(0,r.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"overview"},"Overview"),(0,n.kt)("p",null,"There are explosions of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup."),(0,n.kt)("p",null,"They require ZKP provers. Currently, there are challenges to make the ZKP widely adopted. The challenges come from both the ZKP projects side and the ZKP prover operators side."),(0,n.kt)("p",null,"Here the ZKP computation power is different from POW. The ZKP is a service that each project needs, and its cost is an essential factor, while the POW requires many machines to achieve decentralization. A comparison is shown in the below table.\n|Aspect |POW Miners |ZKP Provers |\n|:-|:-:|:-:|",(0,n.kt)("br",{parentName:"p"}),"\n","|Computation Purpose |Decentralization |To generate a proof |\n|Computation content |Large number of random, repeated, and similar functions. |Complex mathematical operations with deterministic results. |\n|Computation redundancy |Necessary |Unnecessary |"),(0,n.kt)("h2",{id:"challenges-for-zkp-projects"},"Challenges for ZKP projects"),(0,n.kt)("p",null,"Currently, each ZKP project has to make much effort to build a proving system, including algorithms and infrastructure, and make it low-cost. "),(0,n.kt)("p",null,"To build a zk-related project, these questions will come out:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Which proving system could be used?"),(0,n.kt)("li",{parentName:"ol"},"How to design the circuit?"),(0,n.kt)("li",{parentName:"ol"},"What\u2019s the performance of the proving system?"),(0,n.kt)("li",{parentName:"ol"},"How to set up the proving system to accelerate it?"),(0,n.kt)("li",{parentName:"ol"},"How much does it cost for this proving system?")),(0,n.kt)("p",null,"The projects not only have to consider how to optimize the solution and consider how to reduce cost but also involve much infra work, such as:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Choose prover machines, like GPU or high-performance cpu"),(0,n.kt)("li",{parentName:"ol"},"Need an infra to manage machine clusters and monitoring")),(0,n.kt)("p",null,"For ZKPool, we want to provide a solution for items 3,4&5."),(0,n.kt)("p",null,"The ideal solution is to let the projects have the following:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Fast enough and transparent proving performance "),(0,n.kt)("li",{parentName:"ol"},"Cheap & Transparent cost")),(0,n.kt)("h2",{id:"challenges-for-zkp-prover-operators"},"Challenges for ZKP Prover Operators"),(0,n.kt)("p",null,"The ZKP proving is different from POW. "),(0,n.kt)("p",null,"Firstly, some projects may require a gas fee to submit proof or staking as a prover. It brings cost and risk for provers. "),(0,n.kt)("p",null,"Secondly, some projects may use bid or random selection solutions to avoid redundant computation, the prover may not be fully utilized when it hasn\u2019t won the task."),(0,n.kt)("p",null,"It reduced the revenue a prover can have. "),(0,n.kt)("p",null,"Thirdly, the various ZKP projects have different algorithms and prover software. It\u2019s difficult for provers to accommodate these various projects."),(0,n.kt)("h2",{id:"the-design-target-of-zkpool"},"The Design Target of ZKPool"),(0,n.kt)("p",null,"The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers. "),(0,n.kt)("p",null,"The design principle of ZKPool includes:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit."),(0,n.kt)("li",{parentName:"ul"},"Transparency: Keep revenue distribution with transparency")),(0,n.kt)("h2",{id:"the-roadmap-of-zkpool"},"The Roadmap of ZKPool"),(0,n.kt)("p",null,"The ZKPool will have these milestones:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Centralized solution for one ZKP project"),(0,n.kt)("li",{parentName:"ul"},"Connect multiple ZKP projects with the unified ZKP provers"),(0,n.kt)("li",{parentName:"ul"},"Fully decentralized")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.eb63f911.js b/assets/js/935f2afb.00ee3bd6.js similarity index 60% rename from assets/js/935f2afb.eb63f911.js rename to assets/js/935f2afb.00ee3bd6.js index 54de50a..27dbad9 100644 --- a/assets/js/935f2afb.eb63f911.js +++ b/assets/js/935f2afb.00ee3bd6.js @@ -1 +1 @@ -"use strict";(self.webpackChunkzkpool_doc=self.webpackChunkzkpool_doc||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Tutorial Intro","href":"/","docId":"intro"},{"type":"category","label":"Tutorial - Basics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Create a Page","href":"/tutorial-basics/create-a-page","docId":"tutorial-basics/create-a-page"},{"type":"link","label":"Create a Document","href":"/tutorial-basics/create-a-document","docId":"tutorial-basics/create-a-document"},{"type":"link","label":"Create a Blog Post","href":"/tutorial-basics/create-a-blog-post","docId":"tutorial-basics/create-a-blog-post"},{"type":"link","label":"Markdown Features","href":"/tutorial-basics/markdown-features","docId":"tutorial-basics/markdown-features"},{"type":"link","label":"Deploy your site","href":"/tutorial-basics/deploy-your-site","docId":"tutorial-basics/deploy-your-site"},{"type":"link","label":"Congratulations!","href":"/tutorial-basics/congratulations","docId":"tutorial-basics/congratulations"}],"href":"/category/tutorial---basics"},{"type":"category","label":"Tutorial - Extras","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Manage Docs Versions","href":"/tutorial-extras/manage-docs-versions","docId":"tutorial-extras/manage-docs-versions"},{"type":"link","label":"Translate your site","href":"/tutorial-extras/translate-your-site","docId":"tutorial-extras/translate-your-site"}],"href":"/category/tutorial---extras"},{"type":"link","label":"Overview","href":"/overview","docId":"overview"},{"type":"category","label":"Guides","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Introduction","href":"/guides/introduction","docId":"guides/introduction"},{"type":"link","label":"How to Register","href":"/guides/how-to-register","docId":"guides/how-to-register"},{"type":"link","label":"How to Run a Prover","href":"/guides/how-to-run-prover","docId":"guides/how-to-run-prover"}],"href":"/category/guides"}]},"docs":{"guides/how-to-register":{"id":"guides/how-to-register","title":"How to Register","description":"","sidebar":"tutorialSidebar"},"guides/how-to-run-prover":{"id":"guides/how-to-run-prover","title":"How to Run a Prover","description":"This document represent on how to run a standalone uniform ZK Pool prover build upon multiple ZKP circuit projects.","sidebar":"tutorialSidebar"},"guides/introduction":{"id":"guides/introduction","title":"Introduction","description":"ZKPool at the moment supports users to join as an individual prover worker or a group of prover workers of Taiko Eldfell L3 (alpha-4) Testnet.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Tutorial Intro","description":"Let\'s discover Docusaurus in less than 5 minutes.","sidebar":"tutorialSidebar"},"overview":{"id":"overview","title":"Overview","description":"There are explosions of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.","sidebar":"tutorialSidebar"},"tutorial-basics/congratulations":{"id":"tutorial-basics/congratulations","title":"Congratulations!","description":"You have just learned the basics of Docusaurus and made some changes to the initial template.","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-blog-post":{"id":"tutorial-basics/create-a-blog-post","title":"Create a Blog Post","description":"Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-document":{"id":"tutorial-basics/create-a-document","title":"Create a Document","description":"Documents are groups of pages connected through:","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-page":{"id":"tutorial-basics/create-a-page","title":"Create a Page","description":"Add Markdown or React files to src/pages to create a standalone page:","sidebar":"tutorialSidebar"},"tutorial-basics/deploy-your-site":{"id":"tutorial-basics/deploy-your-site","title":"Deploy your site","description":"Docusaurus is a static-site-generator (also called Jamstack).","sidebar":"tutorialSidebar"},"tutorial-basics/markdown-features":{"id":"tutorial-basics/markdown-features","title":"Markdown Features","description":"Docusaurus supports Markdown and a few additional features.","sidebar":"tutorialSidebar"},"tutorial-extras/manage-docs-versions":{"id":"tutorial-extras/manage-docs-versions","title":"Manage Docs Versions","description":"Docusaurus can manage multiple versions of your docs.","sidebar":"tutorialSidebar"},"tutorial-extras/translate-your-site":{"id":"tutorial-extras/translate-your-site","title":"Translate your site","description":"Let\'s translate docs/intro.md to French.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkzkpool_doc=self.webpackChunkzkpool_doc||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Tutorial Intro","href":"/","docId":"intro"},{"type":"category","label":"Tutorial - Basics","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Create a Page","href":"/tutorial-basics/create-a-page","docId":"tutorial-basics/create-a-page"},{"type":"link","label":"Create a Document","href":"/tutorial-basics/create-a-document","docId":"tutorial-basics/create-a-document"},{"type":"link","label":"Create a Blog Post","href":"/tutorial-basics/create-a-blog-post","docId":"tutorial-basics/create-a-blog-post"},{"type":"link","label":"Markdown Features","href":"/tutorial-basics/markdown-features","docId":"tutorial-basics/markdown-features"},{"type":"link","label":"Deploy your site","href":"/tutorial-basics/deploy-your-site","docId":"tutorial-basics/deploy-your-site"},{"type":"link","label":"Congratulations!","href":"/tutorial-basics/congratulations","docId":"tutorial-basics/congratulations"}],"href":"/category/tutorial---basics"},{"type":"category","label":"Tutorial - Extras","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Manage Docs Versions","href":"/tutorial-extras/manage-docs-versions","docId":"tutorial-extras/manage-docs-versions"},{"type":"link","label":"Translate your site","href":"/tutorial-extras/translate-your-site","docId":"tutorial-extras/translate-your-site"}],"href":"/category/tutorial---extras"},{"type":"link","label":"Overview","href":"/overview","docId":"overview"},{"type":"category","label":"Guides","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Introduction","href":"/guides/introduction","docId":"guides/introduction"},{"type":"link","label":"How to Register","href":"/guides/how-to-register","docId":"guides/how-to-register"},{"type":"link","label":"How to Run a Prover","href":"/guides/how-to-run-prover","docId":"guides/how-to-run-prover"}],"href":"/category/guides"}]},"docs":{"guides/how-to-register":{"id":"guides/how-to-register","title":"How to Register","description":"","sidebar":"tutorialSidebar"},"guides/how-to-run-prover":{"id":"guides/how-to-run-prover","title":"How to Run a Prover","description":"This document represent on how to run a standalone uniform ZK Pool prover build upon multiple ZKP circuit projects.","sidebar":"tutorialSidebar"},"guides/introduction":{"id":"guides/introduction","title":"Introduction","description":"ZKPool at the moment supports users to join as an individual prover worker or a group of prover workers of Taiko Eldfell L3 (alpha-4) Testnet.","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Tutorial Intro","description":"Let\'s discover Docusaurus in less than 5 minutes.","sidebar":"tutorialSidebar"},"overview":{"id":"overview","title":"Overview","description":"There has been an explosion of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.","sidebar":"tutorialSidebar"},"tutorial-basics/congratulations":{"id":"tutorial-basics/congratulations","title":"Congratulations!","description":"You have just learned the basics of Docusaurus and made some changes to the initial template.","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-blog-post":{"id":"tutorial-basics/create-a-blog-post","title":"Create a Blog Post","description":"Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-document":{"id":"tutorial-basics/create-a-document","title":"Create a Document","description":"Documents are groups of pages connected through:","sidebar":"tutorialSidebar"},"tutorial-basics/create-a-page":{"id":"tutorial-basics/create-a-page","title":"Create a Page","description":"Add Markdown or React files to src/pages to create a standalone page:","sidebar":"tutorialSidebar"},"tutorial-basics/deploy-your-site":{"id":"tutorial-basics/deploy-your-site","title":"Deploy your site","description":"Docusaurus is a static-site-generator (also called Jamstack).","sidebar":"tutorialSidebar"},"tutorial-basics/markdown-features":{"id":"tutorial-basics/markdown-features","title":"Markdown Features","description":"Docusaurus supports Markdown and a few additional features.","sidebar":"tutorialSidebar"},"tutorial-extras/manage-docs-versions":{"id":"tutorial-extras/manage-docs-versions","title":"Manage Docs Versions","description":"Docusaurus can manage multiple versions of your docs.","sidebar":"tutorialSidebar"},"tutorial-extras/translate-your-site":{"id":"tutorial-extras/translate-your-site","title":"Translate your site","description":"Let\'s translate docs/intro.md to French.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.ab290940.js b/assets/js/runtime~main.7883da33.js similarity index 97% rename from assets/js/runtime~main.ab290940.js rename to assets/js/runtime~main.7883da33.js index 2122808..044b151 100644 --- a/assets/js/runtime~main.ab290940.js +++ b/assets/js/runtime~main.7883da33.js @@ -1 +1 @@ -(()=>{"use strict";var e,t,r,a,o,n={},b={};function f(e){var t=b[e];if(void 0!==t)return t.exports;var r=b[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,f),r.loaded=!0,r.exports}f.m=n,f.c=b,e=[],f.O=(t,r,a,o)=>{if(!r){var n=1/0;for(i=0;i=o)&&Object.keys(f.O).every((e=>f.O[e](r[c])))?r.splice(c--,1):(b=!1,o0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,a,o]},f.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return f.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,f.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);f.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var b=2&a&&e;"object"==typeof b&&!~t.indexOf(b);b=r(b))Object.getOwnPropertyNames(b).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,f.d(o,n),o},f.d=(e,t)=>{for(var r in t)f.o(t,r)&&!f.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},f.f={},f.e=e=>Promise.all(Object.keys(f.f).reduce(((t,r)=>(f.f[r](e,t),t)),[])),f.u=e=>"assets/js/"+({13:"fef665f4",53:"935f2afb",193:"f55d3e7a",372:"1db64337",494:"a7ba7b73",504:"822bd8ab",514:"1be78505",551:"4ab97117",568:"c2b3697b",589:"5c868d36",607:"533a09ca",618:"11b9e740",642:"c2bbb02b",671:"0e384e19",678:"759d9c7b",755:"e44a2883",792:"dff1c289",793:"b38ba991",817:"14eb3368",818:"1e4232ab",859:"18c41134",918:"17896441",920:"1a4e3797"}[e]||e)+"."+{13:"93941419",53:"eb63f911",193:"9c324a46",372:"d57f0da7",443:"346d23bf",494:"31cdbb90",504:"586f8bbe",514:"65f12fe0",525:"10f6d973",551:"ce7bbfa3",568:"2b5e19dd",589:"d1709546",607:"dd520663",618:"e3d5508b",642:"a36c4e86",671:"b87e47ce",678:"aca4e32c",755:"f48ed79d",792:"f37983e5",793:"a34c793b",817:"55135717",818:"ae8c0aea",859:"66ed8ec6",918:"a5095a0e",920:"8996efce",972:"15229a60"}[e]+".js",f.miniCssF=e=>{},f.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),f.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="zkpool-doc:",f.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var b,c;if(void 0!==r)for(var d=document.getElementsByTagName("script"),i=0;i{b.onerror=b.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],b.parentNode&&b.parentNode.removeChild(b),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),c&&document.head.appendChild(b)}},f.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.p="/",f.gca=function(e){return e={17896441:"918",fef665f4:"13","935f2afb":"53",f55d3e7a:"193","1db64337":"372",a7ba7b73:"494","822bd8ab":"504","1be78505":"514","4ab97117":"551",c2b3697b:"568","5c868d36":"589","533a09ca":"607","11b9e740":"618",c2bbb02b:"642","0e384e19":"671","759d9c7b":"678",e44a2883:"755",dff1c289:"792",b38ba991:"793","14eb3368":"817","1e4232ab":"818","18c41134":"859","1a4e3797":"920"}[e]||e,f.p+f.u(e)},(()=>{var e={303:0,532:0};f.f.j=(t,r)=>{var a=f.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(303|532)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=f.p+f.u(t),b=new Error;f.l(n,(r=>{if(f.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;b.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",b.name="ChunkLoadError",b.type=o,b.request=n,a[1](b)}}),"chunk-"+t,t)}},f.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],b=r[1],c=r[2],d=0;if(n.some((t=>0!==e[t]))){for(a in b)f.o(b,a)&&(f.m[a]=b[a]);if(c)var i=c(f)}for(t&&t(r);d{"use strict";var e,t,r,a,o,n={},b={};function f(e){var t=b[e];if(void 0!==t)return t.exports;var r=b[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,f),r.loaded=!0,r.exports}f.m=n,f.c=b,e=[],f.O=(t,r,a,o)=>{if(!r){var n=1/0;for(i=0;i=o)&&Object.keys(f.O).every((e=>f.O[e](r[c])))?r.splice(c--,1):(b=!1,o0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,a,o]},f.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return f.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,f.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);f.r(o);var n={};t=t||[null,r({}),r([]),r(r)];for(var b=2&a&&e;"object"==typeof b&&!~t.indexOf(b);b=r(b))Object.getOwnPropertyNames(b).forEach((t=>n[t]=()=>e[t]));return n.default=()=>e,f.d(o,n),o},f.d=(e,t)=>{for(var r in t)f.o(t,r)&&!f.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},f.f={},f.e=e=>Promise.all(Object.keys(f.f).reduce(((t,r)=>(f.f[r](e,t),t)),[])),f.u=e=>"assets/js/"+({13:"fef665f4",53:"935f2afb",193:"f55d3e7a",372:"1db64337",494:"a7ba7b73",504:"822bd8ab",514:"1be78505",551:"4ab97117",568:"c2b3697b",589:"5c868d36",607:"533a09ca",618:"11b9e740",642:"c2bbb02b",671:"0e384e19",678:"759d9c7b",755:"e44a2883",792:"dff1c289",793:"b38ba991",817:"14eb3368",818:"1e4232ab",859:"18c41134",918:"17896441",920:"1a4e3797"}[e]||e)+"."+{13:"93941419",53:"00ee3bd6",193:"9c324a46",372:"2deb7598",443:"346d23bf",494:"31cdbb90",504:"586f8bbe",514:"65f12fe0",525:"10f6d973",551:"ce7bbfa3",568:"2b5e19dd",589:"d1709546",607:"dd520663",618:"e3d5508b",642:"a36c4e86",671:"b87e47ce",678:"aca4e32c",755:"f48ed79d",792:"f37983e5",793:"a34c793b",817:"55135717",818:"ae8c0aea",859:"66ed8ec6",918:"a5095a0e",920:"8996efce",972:"15229a60"}[e]+".js",f.miniCssF=e=>{},f.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),f.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="zkpool-doc:",f.l=(e,t,r,n)=>{if(a[e])a[e].push(t);else{var b,c;if(void 0!==r)for(var d=document.getElementsByTagName("script"),i=0;i{b.onerror=b.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],b.parentNode&&b.parentNode.removeChild(b),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),c&&document.head.appendChild(b)}},f.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.p="/",f.gca=function(e){return e={17896441:"918",fef665f4:"13","935f2afb":"53",f55d3e7a:"193","1db64337":"372",a7ba7b73:"494","822bd8ab":"504","1be78505":"514","4ab97117":"551",c2b3697b:"568","5c868d36":"589","533a09ca":"607","11b9e740":"618",c2bbb02b:"642","0e384e19":"671","759d9c7b":"678",e44a2883:"755",dff1c289:"792",b38ba991:"793","14eb3368":"817","1e4232ab":"818","18c41134":"859","1a4e3797":"920"}[e]||e,f.p+f.u(e)},(()=>{var e={303:0,532:0};f.f.j=(t,r)=>{var a=f.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(303|532)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var n=f.p+f.u(t),b=new Error;f.l(n,(r=>{if(f.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;b.message="Loading chunk "+t+" failed.\n("+o+": "+n+")",b.name="ChunkLoadError",b.type=o,b.request=n,a[1](b)}}),"chunk-"+t,t)}},f.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,n=r[0],b=r[1],c=r[2],d=0;if(n.some((t=>0!==e[t]))){for(a in b)f.o(b,a)&&(f.m[a]=b[a]);if(c)var i=c(f)}for(t&&t(r);d Guides | ZKPool Doc - + - + \ No newline at end of file diff --git a/category/tutorial---basics/index.html b/category/tutorial---basics/index.html index 52c5c35..8744a67 100644 --- a/category/tutorial---basics/index.html +++ b/category/tutorial---basics/index.html @@ -4,13 +4,13 @@ Tutorial - Basics | ZKPool Doc - + - + \ No newline at end of file diff --git a/category/tutorial---extras/index.html b/category/tutorial---extras/index.html index ab6f781..6182694 100644 --- a/category/tutorial---extras/index.html +++ b/category/tutorial---extras/index.html @@ -4,13 +4,13 @@ Tutorial - Extras | ZKPool Doc - + - + \ No newline at end of file diff --git a/guides/how-to-register/index.html b/guides/how-to-register/index.html index f53ec86..c16c230 100644 --- a/guides/how-to-register/index.html +++ b/guides/how-to-register/index.html @@ -4,13 +4,13 @@ How to Register | ZKPool Doc - + - + \ No newline at end of file diff --git a/guides/how-to-run-prover/index.html b/guides/how-to-run-prover/index.html index 1367066..c25304d 100644 --- a/guides/how-to-run-prover/index.html +++ b/guides/how-to-run-prover/index.html @@ -4,13 +4,13 @@ How to Run a Prover | ZKPool Doc - +

How to Run a Prover

This document represent on how to run a standalone uniform ZK Pool prover build upon multiple ZKP circuit projects.

Environment requirements

  • UNIX-like OS (Ubuntu 20.04,Ubuntu22.04 recommend)
  • Rust 1.65.0+

run zkpool-prover with one command

Notice: please replace the <account_access_key> and <device_id> with your own account access key and device id.

curl -sSf -L https://zkpool-connect-1318455074.cos.na-siliconvalley.myqcloud.com/prover-client/join_zkpool_ubuntu-20.04_cpu.sh | sudo sh -s -- --access-key <account_access_key> --device-id <device_id>    

Compile and run zkpool-prover from source code

git clone https://github.com/aoraki-labs/zkpool-prover.git

cd zkpool-prover
cargo build --release
wget https://storage.googleapis.com/zkevm-circuits-keys/kzg_bn254_21.srs -P ./target/release

cd ./target/release
./zkpool-prover -k <account_access_key> -u <device_id> -p <scheduler_address>
  • zkpool-prover parameters
-k: the prover access key
-u: the prover device id (optional,program will generate one automatically if not set )
-p: the zkpool scheduler pool address
- + \ No newline at end of file diff --git a/guides/introduction/index.html b/guides/introduction/index.html index 5b07876..a842ab4 100644 --- a/guides/introduction/index.html +++ b/guides/introduction/index.html @@ -4,13 +4,13 @@ Introduction | ZKPool Doc - +

Introduction

ZKPool at the moment supports users to join as an individual prover worker or a group of prover workers of Taiko Eldfell L3 (alpha-4) Testnet.

Taiko Alpha-4 testnets comes with a new staking based prover economics. Blocks will be distributed to top 32 staked provers. To be one of the top 32 provers, a substantial amount of Taiko token and capacity of prover workers (mininum 32) are required. It's very hard for smaller and solo provers to successfully compete in this staking contest.

ZKPool aims to provide the following capabilities:

  • ZKPool gathers smaller provers' capacity together and stake as a pool
  • ZKPool operates to minimize the risks of being slashed
  • ZKPool calculates the rewards of provers
  • ZKPool makes it really easy for provers to join

At the first stage, ZKPool will stake by itself on behalf of all provers connected to the pool. Pool is open to registered provers to connect to.

In the futher stage, stakers and provers will be able to stake through ZKPool as well. It's coming.

General flow

Currently, the general flow is the following:

  1. Register on https://zkpool.io, generate the user account's unique access key

  2. Use the one command installation script to connect to ZKPool

  3. Login to https://zkpool.io to view prover workers status, rewards

Note: the rewards are calculated based on a certain interval, for example on a daily basis.

- + \ No newline at end of file diff --git a/index.html b/index.html index 562d47f..f305ca4 100644 --- a/index.html +++ b/index.html @@ -4,13 +4,13 @@ Tutorial Intro | ZKPool Doc - +

Tutorial Intro

Let's discover Docusaurus in less than 5 minutes.

Getting Started

Get started by creating a new site.

Or try Docusaurus immediately with docusaurus.new.

What you'll need

  • Node.js version 16.14 or above:
    • When installing Node.js, you are recommended to check all checkboxes related to dependencies.

Generate a new site

Generate a new Docusaurus site using the classic template.

The classic template will automatically be added to your project after you run the command:

npm init docusaurus@latest my-website classic

You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.

The command also installs all necessary dependencies you need to run Docusaurus.

Start your site

Run the development server:

cd my-website
npm run start

The cd command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.

The npm run start command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.

Open docs/intro.md (this page) and edit some lines: the site reloads automatically and displays your changes.

- + \ No newline at end of file diff --git a/overview/index.html b/overview/index.html index 9e73874..0f3d655 100644 --- a/overview/index.html +++ b/overview/index.html @@ -3,19 +3,14 @@ -Overview | ZKPool Doc - +Overview | ZKPool Doc +
-

Overview

There are explosions of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.

They require ZKP provers. Currently, there are challenges to make the ZKP widely adopted. The challenges come from both the ZKP projects side and the ZKP prover operators side.

Here the ZKP computation power is different from POW. The ZKP is a service that each project needs, and its cost is an essential factor, while the POW requires many machines to achieve decentralization. A comparison is shown in the below table. -|Aspect |POW Miners |ZKP Provers | -|:-|:-:|:-:|
-|Computation Purpose |Decentralization |To generate a proof | -|Computation content |Large number of random, repeated, and similar functions. |Complex mathematical operations with deterministic results. | -|Computation redundancy |Necessary |Unnecessary |

Challenges for ZKP projects

Currently, each ZKP project has to make much effort to build a proving system, including algorithms and infrastructure, and make it low-cost.

To build a zk-related project, these questions will come out:

  1. Which proving system could be used?
  2. How to design the circuit?
  3. What’s the performance of the proving system?
  4. How to set up the proving system to accelerate it?
  5. How much does it cost for this proving system?

The projects not only have to consider how to optimize the solution and consider how to reduce cost but also involve much infra work, such as:

  1. Choose prover machines, like GPU or high-performance cpu
  2. Need an infra to manage machine clusters and monitoring

For ZKPool, we want to provide a solution for items 3,4&5.

The ideal solution is to let the projects have the following:

  1. Fast enough and transparent proving performance
  2. Cheap & Transparent cost

Challenges for ZKP Prover Operators

The ZKP proving is different from POW.

Firstly, some projects may require a gas fee to submit proof or staking as a prover. It brings cost and risk for provers.

Secondly, some projects may use bid or random selection solutions to avoid redundant computation, the prover may not be fully utilized when it hasn’t won the task.

It reduced the revenue a prover can have.

Thirdly, the various ZKP projects have different algorithms and prover software. It’s difficult for provers to accommodate these various projects.

The Design Target of ZKPool

The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers.

The design principle of ZKPool includes:

  • Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit.
  • Transparency: Keep revenue distribution with transparency

The Roadmap of ZKPool

The ZKPool will have these milestones:

  • Centralized solution for one ZKP project
  • Connect multiple ZKP projects with the unified ZKP provers
  • Fully decentralized
- +

Overview

There has been an explosion of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup.

ZKP computation power is different from POW. While POW requires many machines to achieve decentralization, ZKP is a service that each project needs, and its cost is an essential factor. A comparison is shown in the below table.

AspectPOW MinersZKP Provers
Computation PurposeDecentralizationTo generate a proof
Computation ContentA large number of random, repeated, and similar functions.Complex mathematical operations with deterministic results.
Computation RedundancyNecessaryUnnecessary

The adoption of ZKP is still facing challenges from both the ZKP projects' side and the ZKP prover operators' side due to these features.

Challenges for ZKP projects

Currently, each ZKP project has to make a considerable effort to build a proving system, including algorithms and infrastructure, while keeping it low-cost. Some questions that come up while building a zk-related project include:

  1. Which proving system could be used?
  2. How to design the circuit?
  3. How to set up the proving system?
  4. What is the performance of the proving system? How can it be optimized?
  5. How much does the proving system cost? How can the overall cost be reduced?

Challenges for ZKP Prover Operators

The ZKP prover operators meet some new challenges other than POW miners.

  1. Some ZKP projects may require a gas fee to submit proof or staking as a prover, which brings cost and risk for the provers.
  2. Some projects may use bid or random selection solutions to avoid redundant computation, which may not fully utilize the prover when it hasn't won the task. It reduces the revenue a prover can have.
  3. The various ZKP projects have different algorithms and prover software, making it difficult for provers to accommodate these various projects.

The Design Target of ZKPool

The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers.

At ZKPool, we aim to provide a solution that addresses the challenges in the proving system.

The ideal solution is to provide the following to the ZKP projects:

  1. Provides fast and high-throughput performance.
  2. Offers cheap and transparent costs.

The design principles of ZKPool include:

  • Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit.
  • Transparency: Keep revenue distribution transparent

The Roadmap of ZKPool

The ZKPool will have the following milestones:

  • Centralized solution for one ZKP project
  • Connect multiple ZKP projects with the unified ZKP provers
  • Fully decentralized ZKP computing pool
+ \ No newline at end of file diff --git a/search-index.json b/search-index.json index 91f2ae6..da1c6e5 100644 --- a/search-index.json +++ b/search-index.json @@ -1 +1 @@ -[{"documents":[{"i":1,"t":"Tutorial Intro","u":"/","b":[]},{"i":11,"t":"How to Register","u":"/guides/how-to-register","b":["Guides"]},{"i":12,"t":"How to Run a Prover","u":"/guides/how-to-run-prover","b":["Guides"]},{"i":20,"t":"Introduction","u":"/guides/introduction","b":["Guides"]},{"i":24,"t":"Overview","u":"/overview","b":[]},{"i":34,"t":"Congratulations!","u":"/tutorial-basics/congratulations","b":["Tutorial - Basics"]},{"i":38,"t":"Create a Blog Post","u":"/tutorial-basics/create-a-blog-post","b":["Tutorial - Basics"]},{"i":42,"t":"Create a Document","u":"/tutorial-basics/create-a-document","b":["Tutorial - Basics"]},{"i":48,"t":"Create a Page","u":"/tutorial-basics/create-a-page","b":["Tutorial - Basics"]},{"i":54,"t":"Deploy your site","u":"/tutorial-basics/deploy-your-site","b":["Tutorial - Basics"]},{"i":59,"t":"Markdown Features","u":"/tutorial-basics/markdown-features","b":["Tutorial - Basics"]},{"i":73,"t":"Manage Docs Versions","u":"/tutorial-extras/manage-docs-versions","b":["Tutorial - Extras"]},{"i":81,"t":"Translate your site","u":"/tutorial-extras/translate-your-site","b":["Tutorial - Extras"]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,2.16,1,2.16]],["t/11",[2,2.749]],["t/12",[3,2.16,4,2.16]],["t/20",[5,2.749]],["t/24",[6,2.749]],["t/34",[7,2.749]],["t/38",[8,1.104,9,1.779,10,1.779]],["t/42",[8,1.341,11,2.16]],["t/48",[8,1.341,12,2.16]],["t/54",[13,2.16,14,1.666]],["t/59",[15,2.16,16,2.16]],["t/73",[17,1.779,18,1.779,19,1.779]],["t/81",[14,1.666,20,2.16]]],"invertedIndex":[["blog",{"_index":9,"t":{"38":{"position":[[9,4]]}}}],["congratul",{"_index":7,"t":{"34":{"position":[[0,16]]}}}],["creat",{"_index":8,"t":{"38":{"position":[[0,6]]},"42":{"position":[[0,6]]},"48":{"position":[[0,6]]}}}],["deploy",{"_index":13,"t":{"54":{"position":[[0,6]]}}}],["doc",{"_index":18,"t":{"73":{"position":[[7,4]]}}}],["document",{"_index":11,"t":{"42":{"position":[[9,8]]}}}],["featur",{"_index":16,"t":{"59":{"position":[[9,8]]}}}],["intro",{"_index":1,"t":{"1":{"position":[[9,5]]}}}],["introduct",{"_index":5,"t":{"20":{"position":[[0,12]]}}}],["manag",{"_index":17,"t":{"73":{"position":[[0,6]]}}}],["markdown",{"_index":15,"t":{"59":{"position":[[0,8]]}}}],["overview",{"_index":6,"t":{"24":{"position":[[0,8]]}}}],["page",{"_index":12,"t":{"48":{"position":[[9,4]]}}}],["post",{"_index":10,"t":{"38":{"position":[[14,4]]}}}],["prover",{"_index":4,"t":{"12":{"position":[[13,6]]}}}],["regist",{"_index":2,"t":{"11":{"position":[[7,8]]}}}],["run",{"_index":3,"t":{"12":{"position":[[7,3]]}}}],["site",{"_index":14,"t":{"54":{"position":[[12,4]]},"81":{"position":[[15,4]]}}}],["translat",{"_index":20,"t":{"81":{"position":[[0,9]]}}}],["tutori",{"_index":0,"t":{"1":{"position":[[0,8]]}}}],["version",{"_index":19,"t":{"73":{"position":[[12,8]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":3,"t":"Getting Started","u":"/","h":"#getting-started","p":1},{"i":5,"t":"What you'll need","u":"/","h":"#what-youll-need","p":1},{"i":7,"t":"Generate a new site","u":"/","h":"#generate-a-new-site","p":1},{"i":9,"t":"Start your site","u":"/","h":"#start-your-site","p":1},{"i":14,"t":"Environment requirements","u":"/guides/how-to-run-prover","h":"#environment-requirements","p":12},{"i":16,"t":"run zkpool-prover with one command","u":"/guides/how-to-run-prover","h":"#run-zkpool-prover-with-one-command","p":12},{"i":18,"t":"Compile and run zkpool-prover from source code","u":"/guides/how-to-run-prover","h":"#compile-and-run-zkpool-prover-from-source-code","p":12},{"i":22,"t":"General flow","u":"/guides/introduction","h":"#general-flow","p":20},{"i":26,"t":"Challenges for ZKP projects","u":"/overview","h":"#challenges-for-zkp-projects","p":24},{"i":28,"t":"Challenges for ZKP Prover Operators","u":"/overview","h":"#challenges-for-zkp-prover-operators","p":24},{"i":30,"t":"The Design Target of ZKPool","u":"/overview","h":"#the-design-target-of-zkpool","p":24},{"i":32,"t":"The Roadmap of ZKPool","u":"/overview","h":"#the-roadmap-of-zkpool","p":24},{"i":36,"t":"What's next?","u":"/tutorial-basics/congratulations","h":"#whats-next","p":34},{"i":40,"t":"Create your first Post","u":"/tutorial-basics/create-a-blog-post","h":"#create-your-first-post","p":38},{"i":44,"t":"Create your first Doc","u":"/tutorial-basics/create-a-document","h":"#create-your-first-doc","p":42},{"i":46,"t":"Configure the Sidebar","u":"/tutorial-basics/create-a-document","h":"#configure-the-sidebar","p":42},{"i":50,"t":"Create your first React Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-react-page","p":48},{"i":52,"t":"Create your first Markdown Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-markdown-page","p":48},{"i":56,"t":"Build your site","u":"/tutorial-basics/deploy-your-site","h":"#build-your-site","p":54},{"i":61,"t":"Front Matter","u":"/tutorial-basics/markdown-features","h":"#front-matter","p":59},{"i":63,"t":"Links","u":"/tutorial-basics/markdown-features","h":"#links","p":59},{"i":65,"t":"Images","u":"/tutorial-basics/markdown-features","h":"#images","p":59},{"i":67,"t":"Code Blocks","u":"/tutorial-basics/markdown-features","h":"#code-blocks","p":59},{"i":69,"t":"Admonitions","u":"/tutorial-basics/markdown-features","h":"#admonitions","p":59},{"i":71,"t":"MDX and React Components","u":"/tutorial-basics/markdown-features","h":"#mdx-and-react-components","p":59},{"i":75,"t":"Create a docs version","u":"/tutorial-extras/manage-docs-versions","h":"#create-a-docs-version","p":73},{"i":77,"t":"Add a Version Dropdown","u":"/tutorial-extras/manage-docs-versions","h":"#add-a-version-dropdown","p":73},{"i":79,"t":"Update an existing version","u":"/tutorial-extras/manage-docs-versions","h":"#update-an-existing-version","p":73},{"i":83,"t":"Configure i18n","u":"/tutorial-extras/translate-your-site","h":"#configure-i18n","p":81},{"i":85,"t":"Translate a doc","u":"/tutorial-extras/translate-your-site","h":"#translate-a-doc","p":81},{"i":87,"t":"Start your localized site","u":"/tutorial-extras/translate-your-site","h":"#start-your-localized-site","p":81},{"i":89,"t":"Add a Locale Dropdown","u":"/tutorial-extras/translate-your-site","h":"#add-a-locale-dropdown","p":81},{"i":91,"t":"Build your localized site","u":"/tutorial-extras/translate-your-site","h":"#build-your-localized-site","p":81}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/3",[0,3.476,1,2.533]],["t/5",[2,3.476,3,3.476]],["t/7",[4,2.483,5,2.969,6,1.733]],["t/9",[1,2.533,6,2.029]],["t/14",[7,3.476,8,3.476]],["t/16",[9,1.922,10,1.489,11,1.674,12,2.298,13,2.298]],["t/18",[9,1.727,10,1.338,11,1.504,14,2.065,15,2.065,16,1.727]],["t/22",[4,2.907,17,3.476]],["t/26",[18,2.483,19,2.483,20,2.969]],["t/28",[11,1.888,18,2.167,19,2.167,21,2.591]],["t/30",[10,1.924,22,2.969,23,2.969]],["t/32",[10,2.253,24,3.476]],["t/36",[25,3.476,26,3.476]],["t/40",[27,1.733,28,1.924,29,2.969]],["t/44",[27,1.733,28,1.924,30,2.163]],["t/46",[31,2.907,32,3.476]],["t/50",[27,1.512,28,1.679,33,2.167,34,2.167]],["t/52",[27,1.512,28,1.679,34,2.167,35,2.591]],["t/56",[6,2.029,36,2.907]],["t/61",[37,3.476,38,3.476]],["t/63",[39,4.193]],["t/65",[40,4.193]],["t/67",[16,2.907,41,3.476]],["t/69",[42,4.193]],["t/71",[33,2.483,43,2.969,44,2.969]],["t/75",[27,1.733,30,2.163,45,2.163]],["t/77",[45,2.163,46,2.483,47,2.483]],["t/79",[45,2.163,48,2.969,49,2.969]],["t/83",[31,2.907,50,3.476]],["t/85",[30,2.533,51,3.476]],["t/87",[1,2.163,6,1.733,52,2.163]],["t/89",[46,2.483,47,2.483,52,2.163]],["t/91",[6,1.733,36,2.483,52,2.163]]],"invertedIndex":[["add",{"_index":46,"t":{"77":{"position":[[0,3]]},"89":{"position":[[0,3]]}}}],["admonit",{"_index":42,"t":{"69":{"position":[[0,11]]}}}],["block",{"_index":41,"t":{"67":{"position":[[5,6]]}}}],["build",{"_index":36,"t":{"56":{"position":[[0,5]]},"91":{"position":[[0,5]]}}}],["challeng",{"_index":18,"t":{"26":{"position":[[0,10]]},"28":{"position":[[0,10]]}}}],["code",{"_index":16,"t":{"18":{"position":[[42,4]]},"67":{"position":[[0,4]]}}}],["command",{"_index":13,"t":{"16":{"position":[[27,7]]}}}],["compil",{"_index":14,"t":{"18":{"position":[[0,7]]}}}],["compon",{"_index":44,"t":{"71":{"position":[[14,10]]}}}],["configur",{"_index":31,"t":{"46":{"position":[[0,9]]},"83":{"position":[[0,9]]}}}],["creat",{"_index":27,"t":{"40":{"position":[[0,6]]},"44":{"position":[[0,6]]},"50":{"position":[[0,6]]},"52":{"position":[[0,6]]},"75":{"position":[[0,6]]}}}],["design",{"_index":22,"t":{"30":{"position":[[4,6]]}}}],["doc",{"_index":30,"t":{"44":{"position":[[18,3]]},"75":{"position":[[9,4]]},"85":{"position":[[12,3]]}}}],["dropdown",{"_index":47,"t":{"77":{"position":[[14,8]]},"89":{"position":[[13,8]]}}}],["environ",{"_index":7,"t":{"14":{"position":[[0,11]]}}}],["exist",{"_index":49,"t":{"79":{"position":[[10,8]]}}}],["first",{"_index":28,"t":{"40":{"position":[[12,5]]},"44":{"position":[[12,5]]},"50":{"position":[[12,5]]},"52":{"position":[[12,5]]}}}],["flow",{"_index":17,"t":{"22":{"position":[[8,4]]}}}],["front",{"_index":37,"t":{"61":{"position":[[0,5]]}}}],["gener",{"_index":4,"t":{"7":{"position":[[0,8]]},"22":{"position":[[0,7]]}}}],["get",{"_index":0,"t":{"3":{"position":[[0,7]]}}}],["i18n",{"_index":50,"t":{"83":{"position":[[10,4]]}}}],["imag",{"_index":40,"t":{"65":{"position":[[0,6]]}}}],["link",{"_index":39,"t":{"63":{"position":[[0,5]]}}}],["local",{"_index":52,"t":{"87":{"position":[[11,9]]},"89":{"position":[[6,6]]},"91":{"position":[[11,9]]}}}],["markdown",{"_index":35,"t":{"52":{"position":[[18,8]]}}}],["matter",{"_index":38,"t":{"61":{"position":[[6,6]]}}}],["mdx",{"_index":43,"t":{"71":{"position":[[0,3]]}}}],["need",{"_index":3,"t":{"5":{"position":[[12,4]]}}}],["new",{"_index":5,"t":{"7":{"position":[[11,3]]}}}],["next",{"_index":26,"t":{"36":{"position":[[7,5]]}}}],["on",{"_index":12,"t":{"16":{"position":[[23,3]]}}}],["oper",{"_index":21,"t":{"28":{"position":[[26,9]]}}}],["page",{"_index":34,"t":{"50":{"position":[[24,4]]},"52":{"position":[[27,4]]}}}],["post",{"_index":29,"t":{"40":{"position":[[18,4]]}}}],["project",{"_index":20,"t":{"26":{"position":[[19,8]]}}}],["prover",{"_index":11,"t":{"16":{"position":[[11,6]]},"18":{"position":[[23,6]]},"28":{"position":[[19,6]]}}}],["react",{"_index":33,"t":{"50":{"position":[[18,5]]},"71":{"position":[[8,5]]}}}],["requir",{"_index":8,"t":{"14":{"position":[[12,12]]}}}],["roadmap",{"_index":24,"t":{"32":{"position":[[4,7]]}}}],["run",{"_index":9,"t":{"16":{"position":[[0,3]]},"18":{"position":[[12,3]]}}}],["sidebar",{"_index":32,"t":{"46":{"position":[[14,7]]}}}],["site",{"_index":6,"t":{"7":{"position":[[15,4]]},"9":{"position":[[11,4]]},"56":{"position":[[11,4]]},"87":{"position":[[21,4]]},"91":{"position":[[21,4]]}}}],["sourc",{"_index":15,"t":{"18":{"position":[[35,6]]}}}],["start",{"_index":1,"t":{"3":{"position":[[8,7]]},"9":{"position":[[0,5]]},"87":{"position":[[0,5]]}}}],["target",{"_index":23,"t":{"30":{"position":[[11,6]]}}}],["translat",{"_index":51,"t":{"85":{"position":[[0,9]]}}}],["updat",{"_index":48,"t":{"79":{"position":[[0,6]]}}}],["version",{"_index":45,"t":{"75":{"position":[[14,7]]},"77":{"position":[[6,7]]},"79":{"position":[[19,7]]}}}],["what'",{"_index":25,"t":{"36":{"position":[[0,6]]}}}],["you'll",{"_index":2,"t":{"5":{"position":[[5,6]]}}}],["zkp",{"_index":19,"t":{"26":{"position":[[15,3]]},"28":{"position":[[15,3]]}}}],["zkpool",{"_index":10,"t":{"16":{"position":[[4,6]]},"18":{"position":[[16,6]]},"30":{"position":[[21,6]]},"32":{"position":[[15,6]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":2,"t":"Let's discover Docusaurus in less than 5 minutes.","s":"Tutorial Intro","u":"/","h":"","p":1},{"i":4,"t":"Get started by creating a new site. Or try Docusaurus immediately with docusaurus.new.","s":"Getting Started","u":"/","h":"#getting-started","p":1},{"i":6,"t":"Node.js version 16.14 or above: When installing Node.js, you are recommended to check all checkboxes related to dependencies.","s":"What you'll need","u":"/","h":"#what-youll-need","p":1},{"i":8,"t":"Generate a new Docusaurus site using the classic template. The classic template will automatically be added to your project after you run the command: npm init docusaurus@latest my-website classic You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor. The command also installs all necessary dependencies you need to run Docusaurus.","s":"Generate a new site","u":"/","h":"#generate-a-new-site","p":1},{"i":10,"t":"Run the development server: cd my-website npm run start The cd command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there. The npm run start command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/. Open docs/intro.md (this page) and edit some lines: the site reloads automatically and displays your changes.","s":"Start your site","u":"/","h":"#start-your-site","p":1},{"i":13,"t":"This document represent on how to run a standalone uniform ZK Pool prover build upon multiple ZKP circuit projects.","s":"How to Run a Prover","u":"/guides/how-to-run-prover","h":"","p":12},{"i":15,"t":"UNIX-like OS (Ubuntu 20.04,Ubuntu22.04 recommend) Rust 1.65.0+","s":"Environment requirements","u":"/guides/how-to-run-prover","h":"#environment-requirements","p":12},{"i":17,"t":"Notice: please replace the and with your own account access key and device id. curl -sSf -L https://zkpool-connect-1318455074.cos.na-siliconvalley.myqcloud.com/prover-client/join_zkpool_ubuntu-20.04_cpu.sh | sudo sh -s -- --access-key --device-id ","s":"run zkpool-prover with one command","u":"/guides/how-to-run-prover","h":"#run-zkpool-prover-with-one-command","p":12},{"i":19,"t":"git clone https://github.com/aoraki-labs/zkpool-prover.git cd zkpool-prover cargo build --release wget https://storage.googleapis.com/zkevm-circuits-keys/kzg_bn254_21.srs -P ./target/release cd ./target/release ./zkpool-prover -k -u -p zkpool-prover parameters -k: the prover access key -u: the prover device id (optional,program will generate one automatically if not set ) -p: the zkpool scheduler pool address","s":"Compile and run zkpool-prover from source code","u":"/guides/how-to-run-prover","h":"#compile-and-run-zkpool-prover-from-source-code","p":12},{"i":21,"t":"ZKPool at the moment supports users to join as an individual prover worker or a group of prover workers of Taiko Eldfell L3 (alpha-4) Testnet. Taiko Alpha-4 testnets comes with a new staking based prover economics. Blocks will be distributed to top 32 staked provers. To be one of the top 32 provers, a substantial amount of Taiko token and capacity of prover workers (mininum 32) are required. It's very hard for smaller and solo provers to successfully compete in this staking contest. ZKPool aims to provide the following capabilities: ZKPool gathers smaller provers' capacity together and stake as a pool ZKPool operates to minimize the risks of being slashed ZKPool calculates the rewards of provers ZKPool makes it really easy for provers to join At the first stage, ZKPool will stake by itself on behalf of all provers connected to the pool. Pool is open to registered provers to connect to. In the futher stage, stakers and provers will be able to stake through ZKPool as well. It's coming.","s":"Introduction","u":"/guides/introduction","h":"","p":20},{"i":23,"t":"Currently, the general flow is the following: Register on https://zkpool.io, generate the user account's unique access key Use the one command installation script to connect to ZKPool Login to https://zkpool.io to view prover workers status, rewards Note: the rewards are calculated based on a certain interval, for example on a daily basis.","s":"General flow","u":"/guides/introduction","h":"#general-flow","p":20},{"i":25,"t":"There are explosions of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup. They require ZKP provers. Currently, there are challenges to make the ZKP widely adopted. The challenges come from both the ZKP projects side and the ZKP prover operators side. Here the ZKP computation power is different from POW. The ZKP is a service that each project needs, and its cost is an essential factor, while the POW requires many machines to achieve decentralization. A comparison is shown in the below table. |Aspect |POW Miners |ZKP Provers | |:-|:-:|:-:| |Computation Purpose |Decentralization |To generate a proof | |Computation content |Large number of random, repeated, and similar functions. |Complex mathematical operations with deterministic results. | |Computation redundancy |Necessary |Unnecessary |","s":"Overview","u":"/overview","h":"","p":24},{"i":27,"t":"Currently, each ZKP project has to make much effort to build a proving system, including algorithms and infrastructure, and make it low-cost. To build a zk-related project, these questions will come out: Which proving system could be used? How to design the circuit? What’s the performance of the proving system? How to set up the proving system to accelerate it? How much does it cost for this proving system? The projects not only have to consider how to optimize the solution and consider how to reduce cost but also involve much infra work, such as: Choose prover machines, like GPU or high-performance cpu Need an infra to manage machine clusters and monitoring For ZKPool, we want to provide a solution for items 3,4&5. The ideal solution is to let the projects have the following: Fast enough and transparent proving performance Cheap & Transparent cost","s":"Challenges for ZKP projects","u":"/overview","h":"#challenges-for-zkp-projects","p":24},{"i":29,"t":"The ZKP proving is different from POW. Firstly, some projects may require a gas fee to submit proof or staking as a prover. It brings cost and risk for provers. Secondly, some projects may use bid or random selection solutions to avoid redundant computation, the prover may not be fully utilized when it hasn’t won the task. It reduced the revenue a prover can have. Thirdly, the various ZKP projects have different algorithms and prover software. It’s difficult for provers to accommodate these various projects.","s":"Challenges for ZKP Prover Operators","u":"/overview","h":"#challenges-for-zkp-prover-operators","p":24},{"i":31,"t":"The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers. The design principle of ZKPool includes: Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit. Transparency: Keep revenue distribution with transparency","s":"The Design Target of ZKPool","u":"/overview","h":"#the-design-target-of-zkpool","p":24},{"i":33,"t":"The ZKPool will have these milestones: Centralized solution for one ZKP project Connect multiple ZKP projects with the unified ZKP provers Fully decentralized","s":"The Roadmap of ZKPool","u":"/overview","h":"#the-roadmap-of-zkpool","p":24},{"i":35,"t":"You have just learned the basics of Docusaurus and made some changes to the initial template. Docusaurus has much more to offer! Have 5 more minutes? Take a look at versioning and i18n. Anything unclear or buggy in this tutorial? Please report it!","s":"Congratulations!","u":"/tutorial-basics/congratulations","h":"","p":34},{"i":37,"t":"Read the official documentation Modify your site configuration with docusaurus.config.js Add navbar and footer items with themeConfig Add a custom Design and Layout Add a search bar Find inspirations in the Docusaurus showcase Get involved in the Docusaurus Community","s":"What's next?","u":"/tutorial-basics/congratulations","h":"#whats-next","p":34},{"i":39,"t":"Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...","s":"Create a Blog Post","u":"/tutorial-basics/create-a-blog-post","h":"","p":38},{"i":41,"t":"Create a file at blog/2021-02-28-greetings.md: blog/2021-02-28-greetings.md --- slug: greetings title: Greetings! authors: - name: Joel Marcey title: Co-creator of Docusaurus 1 url: https://github.com/JoelMarcey image_url: https://github.com/JoelMarcey.png - name: Sébastien Lorber title: Docusaurus maintainer url: https://sebastienlorber.com image_url: https://github.com/slorber.png tags: [greetings] --- Congratulations, you have made your first post! Feel free to play around and edit this post as much you like. A new blog post is now available at http://localhost:3000/blog/greetings.","s":"Create your first Post","u":"/tutorial-basics/create-a-blog-post","h":"#create-your-first-post","p":38},{"i":43,"t":"Documents are groups of pages connected through: a sidebar previous/next navigation versioning","s":"Create a Document","u":"/tutorial-basics/create-a-document","h":"","p":42},{"i":45,"t":"Create a Markdown file at docs/hello.md: docs/hello.md # Hello This is my **first Docusaurus document**! A new document is now available at http://localhost:3000/docs/hello.","s":"Create your first Doc","u":"/tutorial-basics/create-a-document","h":"#create-your-first-doc","p":42},{"i":47,"t":"Docusaurus automatically creates a sidebar from the docs folder. Add metadata to customize the sidebar label and position: docs/hello.md --- sidebar_label: 'Hi!' sidebar_position: 3 --- # Hello This is my **first Docusaurus document**! It is also possible to create your sidebar explicitly in sidebars.js: sidebars.js module.exports = { tutorialSidebar: [ 'intro', 'hello', { type: 'category', label: 'Tutorial', items: ['tutorial-basics/create-a-document'], }, ], };","s":"Configure the Sidebar","u":"/tutorial-basics/create-a-document","h":"#configure-the-sidebar","p":42},{"i":49,"t":"Add Markdown or React files to src/pages to create a standalone page: src/pages/index.js → localhost:3000/ src/pages/foo.md → localhost:3000/foo src/pages/foo/bar.js → localhost:3000/foo/bar","s":"Create a Page","u":"/tutorial-basics/create-a-page","h":"","p":48},{"i":51,"t":"Create a file at src/pages/my-react-page.js: src/pages/my-react-page.js import React from 'react'; import Layout from '@theme/Layout'; export default function MyReactPage() { return (

My React page

This is a React page

); } A new page is now available at http://localhost:3000/my-react-page.","s":"Create your first React Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-react-page","p":48},{"i":53,"t":"Create a file at src/pages/my-markdown-page.md: src/pages/my-markdown-page.md # My Markdown page This is a Markdown page A new page is now available at http://localhost:3000/my-markdown-page.","s":"Create your first Markdown Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-markdown-page","p":48},{"i":55,"t":"Docusaurus is a static-site-generator (also called Jamstack). It builds your site as simple static HTML, JavaScript and CSS files.","s":"Deploy your site","u":"/tutorial-basics/deploy-your-site","h":"","p":54},{"i":57,"t":"Build your site for production: npm run build The static files are generated in the build folder.","s":"Build your site","u":"/tutorial-basics/deploy-your-site","h":"#build-your-site","p":54},{"i":58,"t":"Test your production build locally: npm run serve The build folder is now served at http://localhost:3000/. You can now deploy the build folder almost anywhere easily, for free or very small cost (read the Deployment Guide).","s":"Deploy your site","u":"/tutorial-basics/deploy-your-site","h":"#deploy-your-site-1","p":54},{"i":60,"t":"Docusaurus supports Markdown and a few additional features.","s":"Markdown Features","u":"/tutorial-basics/markdown-features","h":"","p":59},{"i":62,"t":"Markdown documents have metadata at the top called Front Matter: my-doc.md --- id: my-doc-id title: My document title description: My document description slug: /my-custom-url --- ## Markdown heading Markdown text with [links](./hello.md)","s":"Front Matter","u":"/tutorial-basics/markdown-features","h":"#front-matter","p":59},{"i":64,"t":"Regular Markdown links are supported, using url paths or relative file paths. Let's see how to [Create a page](/create-a-page). Let's see how to [Create a page](./create-a-page.md). Result: Let's see how to Create a page.","s":"Links","u":"/tutorial-basics/markdown-features","h":"#links","p":59},{"i":66,"t":"Regular Markdown images are supported. You can use absolute paths to reference images in the static directory (static/img/docusaurus.png): ![Docusaurus logo](/img/docusaurus.png) You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them: ![Docusaurus logo](./img/docusaurus.png)","s":"Images","u":"/tutorial-basics/markdown-features","h":"#images","p":59},{"i":68,"t":"Markdown code blocks are supported with Syntax highlighting. ```jsx title=\"src/components/HelloDocusaurus.js\" function HelloDocusaurus() { return (

Hello, Docusaurus!

) } ``` src/components/HelloDocusaurus.js function HelloDocusaurus() { return

Hello, Docusaurus!

; }","s":"Code Blocks","u":"/tutorial-basics/markdown-features","h":"#code-blocks","p":59},{"i":70,"t":"Docusaurus has a special syntax to create admonitions and callouts: :::tip My tip Use this awesome feature option ::: :::danger Take care This action is dangerous ::: My tip Use this awesome feature option Take care This action is dangerous","s":"Admonitions","u":"/tutorial-basics/markdown-features","h":"#admonitions","p":59},{"i":72,"t":"MDX can make your documentation more interactive and allows using any React components inside Markdown: export const Highlight = ({children, color}) => ( { alert(`You clicked the color ${color} with label ${children}`) }}> {children} ); This is Docusaurus green ! This is Facebook blue ! This is Docusaurus green ! This is Facebook blue !","s":"MDX and React Components","u":"/tutorial-basics/markdown-features","h":"#mdx-and-react-components","p":59},{"i":74,"t":"Docusaurus can manage multiple versions of your docs.","s":"Manage Docs Versions","u":"/tutorial-extras/manage-docs-versions","h":"","p":73},{"i":76,"t":"Release a version 1.0 of your project: npm run docusaurus docs:version 1.0 The docs folder is copied into versioned_docs/version-1.0 and versions.json is created. Your docs now have 2 versions: 1.0 at http://localhost:3000/docs/ for the version 1.0 docs current at http://localhost:3000/docs/next/ for the upcoming, unreleased docs","s":"Create a docs version","u":"/tutorial-extras/manage-docs-versions","h":"#create-a-docs-version","p":73},{"i":78,"t":"To navigate seamlessly across versions, add a version dropdown. Modify the docusaurus.config.js file: docusaurus.config.js module.exports = { themeConfig: { navbar: { items: [ { type: 'docsVersionDropdown', }, ], }, }, }; The docs version dropdown appears in your navbar:","s":"Add a Version Dropdown","u":"/tutorial-extras/manage-docs-versions","h":"#add-a-version-dropdown","p":73},{"i":80,"t":"It is possible to edit versioned docs in their respective folder: versioned_docs/version-1.0/hello.md updates http://localhost:3000/docs/hello docs/hello.md updates http://localhost:3000/docs/next/hello","s":"Update an existing version","u":"/tutorial-extras/manage-docs-versions","h":"#update-an-existing-version","p":73},{"i":82,"t":"Let's translate docs/intro.md to French.","s":"Translate your site","u":"/tutorial-extras/translate-your-site","h":"","p":81},{"i":84,"t":"Modify docusaurus.config.js to add support for the fr locale: docusaurus.config.js module.exports = { i18n: { defaultLocale: 'en', locales: ['en', 'fr'], }, };","s":"Configure i18n","u":"/tutorial-extras/translate-your-site","h":"#configure-i18n","p":81},{"i":86,"t":"Copy the docs/intro.md file to the i18n/fr folder: mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/ cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md Translate i18n/fr/docusaurus-plugin-content-docs/current/intro.md in French.","s":"Translate a doc","u":"/tutorial-extras/translate-your-site","h":"#translate-a-doc","p":81},{"i":88,"t":"Start your site on the French locale: npm run start -- --locale fr Your localized site is accessible at http://localhost:3000/fr/ and the Getting Started page is translated. caution In development, you can only use one locale at a same time.","s":"Start your localized site","u":"/tutorial-extras/translate-your-site","h":"#start-your-localized-site","p":81},{"i":90,"t":"To navigate seamlessly across languages, add a locale dropdown. Modify the docusaurus.config.js file: docusaurus.config.js module.exports = { themeConfig: { navbar: { items: [ { type: 'localeDropdown', }, ], }, }, }; The locale dropdown now appears in your navbar:","s":"Add a Locale Dropdown","u":"/tutorial-extras/translate-your-site","h":"#add-a-locale-dropdown","p":81},{"i":92,"t":"Build your site for a specific locale: npm run build -- --locale fr Or build your site to include all the locales at once: npm run build","s":"Build your localized site","u":"/tutorial-extras/translate-your-site","h":"#build-your-localized-site","p":81}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/2",[0,3.85,1,5.106,2,1.464,3,5.106,4,4.349,5,4.349]],["t/4",[2,1.406,6,3.697,7,1.885,8,2.612,9,2.434,10,4.903,11,4.903,12,4.903]],["t/6",[13,5.746,14,2.465,15,4.627,16,4.627,17,3.489,18,3.941,19,4.627,20,4.627,21,3.941,22,3.941]],["t/8",[2,1.276,8,1.678,9,1.564,17,2.375,22,2.683,23,1.809,24,1.462,25,5.16,26,3.79,27,2.146,28,3.15,29,1.564,30,2.209,31,4.228,32,1.678,33,3.15,34,3.15,35,2.683,36,2.146,37,3.15,38,3.15,39,3.79,40,3.15,41,2.683,42,3.15,43,2.683,44,2.146]],["t/10",[2,0.783,6,3.028,7,1.05,9,1.994,27,1.86,30,2.364,31,3.028,32,2.14,35,3.42,39,2.327,44,1.86,45,3.42,46,4.016,47,3.42,48,3.42,49,2.327,50,2.732,51,3.42,52,2.732,53,2.732,54,2.732,55,1.86,56,1.268,57,1.569,58,2.327,59,2.06,60,2.732,61,2.327,62,2.327,63,2.327,64,2.06,65,1.356,66,2.06,67,2.732,68,2.732,69,2.732]],["t/13",[29,2.175,30,2.175,56,2.033,70,2.334,71,4.381,72,3.731,73,4.381,74,3.303,75,3.303,76,2.033,77,4.381,78,3.303,79,2.516,80,3.303]],["t/15",[18,4.26,81,5.002,82,5.002,83,5.002,84,5.002,85,5.002,86,5.002]],["t/17",[87,3.459,88,2.946,89,3.459,90,4.046,91,4.046,92,3.459,93,3.235,94,3.582,95,4.046,96,3.582,97,3.459,98,3.459,99,3.459,100,3.459,101,2.155,102,3.459,103,3.459,104,3.459,105,3.459,106,1.051,107,3.459,108,3.459,109,3.459]],["t/19",[23,1.552,27,1.84,47,3.393,56,1.254,75,2.037,76,2.585,80,2.037,90,2.301,91,2.301,93,1.84,94,2.037,95,2.301,96,2.037,106,0.821,110,2.702,111,2.702,112,2.702,113,2.702,114,2.702,115,2.999,116,2.702,117,2.301,118,2.702,119,2.702,120,2.702,121,4.03,122,3.983,123,3.983,124,3.983,125,2.702,126,2.702,127,2.702,128,1.683,129,2.301,130,2.702,131,2.702]],["t/21",[8,0.863,59,1.221,63,1.38,75,2.567,76,2.742,101,1.662,115,2.981,128,1.009,132,1.62,133,0.93,134,1.38,135,2.669,136,1.62,137,2.899,138,1.38,139,3.404,140,1.62,141,1.62,142,2.669,143,2.669,144,2.669,145,2.013,146,4.001,147,1.38,148,1.38,149,1.38,150,1.38,151,2.273,152,3.404,153,1.62,154,1.62,155,1.62,156,2.669,157,1.62,158,1.103,159,2.669,160,1.38,161,1.62,162,2.669,163,1.62,164,1.62,165,1.62,166,1.62,167,1.62,168,1.38,169,1.221,170,1.62,171,1.62,172,1.62,173,1.38,174,1.62,175,1.38,176,1.62,177,1.62,178,1.38,179,1.38,180,1.009,181,1.62,182,1.62,183,1.103,184,2.669,185,1.62,186,1.62,187,1.38,188,1.62,189,1.62,190,1.38]],["t/23",[17,2.406,23,2.579,24,1.481,31,2.406,61,2.718,76,1.481,93,2.173,94,2.406,101,1.987,115,1.833,128,1.987,134,2.718,137,2.718,147,2.718,169,2.406,178,2.718,179,3.825,187,2.718,191,1.987,192,2.718,193,4.491,194,3.191,195,3.191,196,3.191,197,3.191,198,3.191,199,3.191,200,3.191,201,3.191,202,3.191,203,3.191,204,3.191]],["t/25",[23,1.071,29,1.486,43,1.588,44,1.27,74,2.257,76,1.74,79,3.147,106,1.665,145,1.406,158,2.038,173,2.549,180,1.161,191,1.161,205,1.865,206,1.588,207,1.588,208,2.257,209,1.588,210,2.993,211,1.865,212,1.865,213,2.993,214,1.865,215,1.865,216,1.865,217,2.993,218,1.865,219,3.655,220,1.865,221,1.588,222,3.193,223,1.865,224,1.406,225,1.161,226,1.865,227,1.865,228,1.865,229,1.588,230,1.865,231,2.549,232,1.865,233,1.865,234,1.865,235,1.865,236,1.865,237,1.865,238,1.865,239,1.588,240,1.865,241,1.865,242,1.588,243,1.865,244,1.865,245,1.406,246,1.865,247,1.865,248,1.865,249,1.588,250,1.588,251,1.865]],["t/27",[21,1.651,24,0.899,29,2.178,44,1.32,51,1.651,56,1.433,74,1.461,76,0.899,79,1.113,80,1.461,106,0.589,115,1.113,129,1.651,145,1.461,168,1.651,169,1.461,180,1.922,191,1.207,224,1.461,225,2.732,229,2.629,252,2.9,253,1.938,254,4.346,255,4.08,256,1.461,257,1.651,258,1.938,259,1.651,260,1.938,261,1.938,262,1.461,263,1.938,264,3.847,265,1.938,266,1.938,267,3.087,268,1.938,269,2.9,270,1.651,271,1.651,272,3.087,273,1.938,274,1.938,275,1.938,276,1.938,277,1.938,278,1.651,279,1.938,280,1.938,281,1.938,282,1.207,283,1.938,284,1.938,285,1.938,286,1.938,287,2.629,288,1.938]],["t/29",[24,1.24,29,2.579,76,2.693,79,2.269,146,2.276,158,1.82,175,2.276,208,2.015,219,2.276,221,3.366,222,2.276,225,1.665,242,2.276,250,2.276,254,2.276,257,2.276,269,2.015,270,2.276,289,2.673,290,2.673,291,2.673,292,2.673,293,2.673,294,2.673,295,2.673,296,2.673,297,2.673,298,2.276,299,2.673,300,2.673,301,2.673,302,2.673,303,2.276,304,2.673,305,3.952,306,2.673,307,2.673,308,2.673,309,2.673]],["t/31",[29,1.488,56,1.391,76,1.391,79,3.149,115,2.467,148,2.553,150,2.553,158,2.041,180,1.867,192,2.553,206,2.553,207,2.553,208,2.26,209,2.553,225,1.867,256,2.26,259,2.553,262,2.26,287,3.659,303,2.553,310,2.997,311,2.997,312,2.997,313,2.997,314,2.997,315,4.295,316,2.997,317,2.997,318,2.553,319,2.997,320,2.997,321,2.997,322,2.997,323,2.997]],["t/33",[29,2.696,76,1.964,78,3.19,79,3.444,101,2.635,115,2.43,128,2.635,231,3.603,269,3.19,298,3.603,324,4.23,325,4.23,326,4.23]],["t/35",[2,1.431,4,3.168,5,3.168,14,1.982,26,3.168,48,3.168,88,3.168,252,2.805,327,3.72,328,3.72,329,3.168,330,3.72,331,4.25,332,3.72,333,3.168,334,3.72,335,3.168,336,3.72,337,3.72,338,3.72,339,3.168,340,3.72]],["t/37",[2,1.403,9,1.793,70,1.924,262,2.723,271,3.076,282,2.249,318,3.076,341,3.076,342,3.611,343,2.46,344,3.611,345,2.46,346,3.186,347,2.723,348,3.611,349,2.723,350,2.723,351,3.076,352,3.611,353,3.611,354,3.611,355,3.611,356,3.611]],["t/39",[2,1.279,7,1.715,65,2.788,224,3.363,255,3.798,357,4.782,358,3.798,359,4.46,360,3.798,361,4.46,362,4.46]],["t/41",[2,1.081,7,0.965,8,1.337,66,1.892,183,1.709,252,1.892,329,2.137,357,2.137,358,3.857,360,2.137,363,0.965,364,3.77,365,3.77,366,3.77,367,3.77,368,2.137,369,4.529,370,3.857,371,2.509,372,3.77,373,2.509,374,2.509,375,2.509,376,2.509,377,2.509,378,2.843,379,2.509,380,3.77,381,2.509,382,2.509,383,2.509,384,2.509,385,2.509,386,2.509,387,2.509,388,2.509,389,2.137,390,2.509,391,2.509,392,1.337,393,1.709,394,2.509]],["t/43",[14,2.561,55,3.274,59,3.625,65,2.387,70,2.561,101,2.994,138,4.094,395,4.094,396,4.807]],["t/45",[2,1.234,7,1.655,8,2.293,70,2.925,106,1.308,183,2.931,363,1.655,392,2.293,393,2.931,397,1.998,398,4.14,399,3.666,400,3.666]],["t/47",[2,1.161,7,1.557,27,1.881,36,1.881,70,2.157,106,1.891,183,1.881,282,1.72,339,3.448,346,1.586,350,2.083,395,4.082,398,2.083,399,3.448,401,1.586,402,1.586,403,2.353,404,3.448,405,2.762,406,2.762,407,2.762,408,2.762,409,2.762,410,2.353,411,2.762,412,4.049,413,1.881,414,2.762,415,2.762,416,2.762,417,2.762]],["t/49",[7,1.599,65,2.065,72,3.542,106,1.808,346,2.389,363,1.599,397,1.93,418,3.136,419,4.159,420,4.159,421,4.159,422,4.159,423,4.159,424,4.159,425,4.159]],["t/51",[7,1.181,8,1.637,65,2.17,106,1.685,245,2.316,351,4.335,363,1.181,392,1.637,393,2.092,418,4.724,426,3.723,427,4.372,428,4.372,429,3.072,430,2.616,431,3.072,432,3.072,433,2.616,434,3.072,435,3.072,436,3.072,437,3.072,438,2.616]],["t/53",[7,1.522,8,2.109,65,3.062,106,1.203,363,1.522,392,2.109,393,2.696,397,2.974,426,4.43,438,3.372,439,4.43]],["t/55",[2,1.256,9,2.756,23,2.516,56,2.033,363,1.684,440,4.186,441,3.731,442,4.381,443,4.381,444,4.381,445,4.381,446,4.381]],["t/57",[9,2.297,23,2.657,30,2.297,32,2.465,56,2.901,363,1.779,402,2.657,440,3.489,447,3.941]],["t/58",[30,1.819,32,1.953,56,2.594,57,2.105,58,4.208,62,3.121,160,3.121,225,2.283,341,3.121,389,3.121,392,2.632,402,2.837,447,3.121,448,3.665,449,4.941,450,3.665,451,3.665,452,3.665,453,3.665]],["t/60",[2,1.464,133,2.932,397,2.37,454,5.106,455,5.106,456,4.349]],["t/62",[70,2.955,96,3.688,106,1.097,151,3.076,350,2.723,368,3.076,370,4.166,378,2.723,397,2.575,401,2.074,403,3.076,441,3.076,457,3.611,458,3.611,459,3.611,460,4.892,461,3.611,462,3.611,463,3.611]],["t/64",[0,4.214,7,2.149,24,1.701,65,2.453,133,2.105,249,3.121,363,1.409,378,2.763,397,1.701,439,3.121,464,3.121,465,3.665,466,4.208,467,3.121,468,5.589,469,3.665,470,3.665]],["t/66",[2,1.349,24,2.5,49,2.906,133,1.959,190,2.906,191,2.125,363,1.809,397,2.184,440,2.572,464,2.906,466,2.906,467,2.906,471,5.806,472,3.412,473,4.705,474,3.412,475,3.412,476,3.412,477,3.412,478,3.412,479,3.412]],["t/68",[41,3.076,106,1.991,133,2.074,149,3.076,245,3.688,397,1.676,433,4.166,480,3.076,481,3.076,482,3.611,483,3.611,484,4.892,485,4.892,486,4.892,487,3.611]],["t/70",[2,1.006,7,1.349,24,2.226,106,1.458,333,4.085,456,4.085,480,2.988,488,3.509,489,3.509,490,3.509,491,5.465,492,4.796,493,4.796,494,5.465,495,4.796,496,4.796]],["t/72",[2,0.698,24,1.13,70,1.297,106,1.958,180,1.517,331,2.074,397,1.13,404,2.074,418,1.836,430,2.074,481,3.788,497,2.435,498,2.435,499,2.435,500,2.435,501,2.435,502,2.435,503,4.447,504,5.328,505,3.686,506,2.435,507,2.435,508,2.435,509,2.435,510,2.435,511,2.435,512,2.435,513,2.435,514,2.435,515,2.435,516,2.435,517,2.435,518,2.435,519,2.435,520,2.435,521,2.435,522,2.435,523,2.435,524,2.435]],["t/74",[2,1.495,14,2.778,78,3.931,278,4.44,401,2.994]],["t/76",[2,0.978,7,1.312,14,2.869,29,1.694,30,1.694,32,1.818,117,2.906,191,2.125,392,1.818,401,3.334,402,1.959,525,6.091,526,3.412,527,2.906,528,2.906,529,3.412,530,3.412,531,3.412,532,3.412,533,3.412,534,3.412]],["t/78",[14,2.828,36,2.261,55,2.261,106,2.062,282,2.068,343,2.261,345,3.144,346,1.907,347,3.481,349,2.503,363,1.276,401,1.907,413,2.261,535,2.827,536,3.932,537,3.32,538,2.827]],["t/80",[14,2.376,66,3.363,398,3.363,400,3.798,401,2.561,402,2.561,410,3.798,528,3.798,539,4.46,540,4.46,541,5.615,542,4.46]],["t/82",[0,4.016,64,4.016,543,4.016,544,4.016]],["t/84",[57,3.019,106,1.957,133,2.311,335,3.427,343,2.74,345,3.58,346,2.311,413,2.74,545,3.963,546,4.023,547,5.256]],["t/86",[64,3.801,121,3.217,239,4.833,363,1.452,402,2.169,527,3.217,543,2.848,544,2.848,548,3.777,549,3.777,550,5.675,551,5.675,552,3.777,553,3.777,554,5.041]],["t/88",[6,4.246,9,2.477,24,1.727,30,1.847,32,1.982,45,3.168,57,3.456,65,1.847,93,2.534,128,2.317,543,2.805,544,2.805,545,2.805,555,3.72,556,3.72,557,3.72,558,3.72,559,3.72]],["t/90",[36,2.261,55,2.261,57,2.652,106,2.062,282,2.068,343,2.261,345,3.144,346,1.907,347,3.481,349,2.503,363,1.276,392,1.769,413,2.261,535,2.827,536,3.932,538,2.827,560,3.32,561,3.32]],["t/92",[9,2.666,30,2.666,32,2.861,56,2.918,57,3.416,256,3.136,545,3.136,562,4.159,563,4.159]]],"invertedIndex":[["",{"_index":106,"t":{"17":{"position":[[239,1]]},"19":{"position":[[426,1]]},"25":{"position":[[566,1],[568,2],[571,2],[574,3],[578,2],[641,1],[783,1],[833,1]]},"27":{"position":[[842,1]]},"45":{"position":[[55,1]]},"47":{"position":[[186,1],[333,1],[335,1],[354,1],[374,1],[459,2],[462,2],[465,2]]},"49":{"position":[[89,1],[124,1],[166,1]]},"51":{"position":[[173,1],[182,1],[254,2],[257,1]]},"53":{"position":[[78,1]]},"62":{"position":[[180,2]]},"68":{"position":[[137,1],[146,1],[176,1],[178,1],[180,3],[245,1],[283,1]]},"70":{"position":[[114,3],[163,3]]},"72":{"position":[[127,1],[149,2],[152,1],[266,2],[281,2],[284,1],[349,3],[372,2],[439,1],[502,1],[529,1],[553,1]]},"78":{"position":[[138,1],[140,1],[155,1],[165,1],[174,1],[176,1],[207,2],[210,2],[213,2],[216,2],[219,2]]},"84":{"position":[[98,1],[100,1],[108,1],[154,2],[157,2]]},"90":{"position":[[138,1],[140,1],[155,1],[165,1],[174,1],[176,1],[202,2],[205,2],[208,2],[211,2],[214,2]]}}}],["02",{"_index":365,"t":{"41":{"position":[[27,2],[57,2]]}}}],["1",{"_index":377,"t":{"41":{"position":[[175,1]]}}}],["1.0",{"_index":525,"t":{"76":{"position":[[18,3],[71,3],[129,3],[194,3],[245,3]]}}}],["1.0/hello.md",{"_index":540,"t":{"80":{"position":[[89,12]]}}}],["1.65.0",{"_index":86,"t":{"15":{"position":[[55,7]]}}}],["10px",{"_index":512,"t":{"72":{"position":[[239,7]]}}}],["1318455074.cos.na",{"_index":102,"t":{"17":{"position":[[148,17]]}}}],["16.14",{"_index":15,"t":{"6":{"position":[[16,5]]}}}],["2",{"_index":530,"t":{"76":{"position":[[182,1]]}}}],["20.04,ubuntu22.04",{"_index":84,"t":{"15":{"position":[[21,17]]}}}],["20.04_cpu.sh",{"_index":105,"t":{"17":{"position":[[226,12]]}}}],["20px",{"_index":509,"t":{"72":{"position":[[207,7]]}}}],["28",{"_index":366,"t":{"41":{"position":[[30,2],[60,2]]}}}],["3",{"_index":409,"t":{"47":{"position":[[180,1]]}}}],["3,4&5",{"_index":283,"t":{"27":{"position":[[719,6]]}}}],["32",{"_index":152,"t":{"21":{"position":[[249,2],[289,2],[377,3]]}}}],["4",{"_index":143,"t":{"21":{"position":[[131,2],[155,1]]}}}],["5",{"_index":4,"t":{"2":{"position":[[39,1]]},"35":{"position":[[134,1]]}}}],["abov",{"_index":16,"t":{"6":{"position":[[25,6]]}}}],["absolut",{"_index":472,"t":{"66":{"position":[[51,8]]}}}],["acceler",{"_index":266,"t":{"27":{"position":[[349,10]]}}}],["access",{"_index":93,"t":{"17":{"position":[[86,6],[257,6]]},"19":{"position":[[329,6]]},"23":{"position":[[112,6]]},"88":{"position":[[90,10]]}}}],["accommod",{"_index":309,"t":{"29":{"position":[[478,11]]}}}],["account",{"_index":92,"t":{"17":{"position":[[78,7]]}}}],["account'",{"_index":194,"t":{"23":{"position":[[95,9]]}}}],["account_access_key",{"_index":90,"t":{"17":{"position":[[27,20],[268,20]]},"19":{"position":[[230,20]]}}}],["achiev",{"_index":230,"t":{"25":{"position":[[465,7]]}}}],["action",{"_index":496,"t":{"70":{"position":[[143,6],[221,6]]}}}],["ad",{"_index":28,"t":{"8":{"position":[[102,5]]}}}],["add",{"_index":346,"t":{"37":{"position":[[89,3],[134,3],[165,3]]},"47":{"position":[[65,3]]},"49":{"position":[[0,3]]},"78":{"position":[[40,3]]},"84":{"position":[[31,3]]},"90":{"position":[[41,3]]}}}],["addit",{"_index":455,"t":{"60":{"position":[[39,10]]}}}],["address",{"_index":131,"t":{"19":{"position":[[458,7]]}}}],["admonit",{"_index":489,"t":{"70":{"position":[[42,11]]}}}],["adopt",{"_index":215,"t":{"25":{"position":[[192,8]]}}}],["aim",{"_index":167,"t":{"21":{"position":[[495,4]]}}}],["alert(`y",{"_index":516,"t":{"72":{"position":[[286,10]]}}}],["algorithm",{"_index":257,"t":{"27":{"position":[[89,10]]},"29":{"position":[[416,10]]}}}],["allow",{"_index":499,"t":{"72":{"position":[[53,6]]}}}],["alpha",{"_index":142,"t":{"21":{"position":[[124,6],[149,5]]}}}],["amount",{"_index":154,"t":{"21":{"position":[[315,6]]}}}],["anyth",{"_index":336,"t":{"35":{"position":[[186,8]]}}}],["anywher",{"_index":450,"t":{"58":{"position":[[151,8]]}}}],["appear",{"_index":538,"t":{"78":{"position":[[248,7]]},"90":{"position":[[241,7]]}}}],["applic",{"_index":209,"t":{"25":{"position":[[51,12]]},"31":{"position":[[127,12]]}}}],["around",{"_index":391,"t":{"41":{"position":[[474,6]]}}}],["aspect",{"_index":236,"t":{"25":{"position":[[533,7]]}}}],["author",{"_index":371,"t":{"41":{"position":[[114,8]]}}}],["automat",{"_index":27,"t":{"8":{"position":[[85,13]]},"10":{"position":[[432,13]]},"19":{"position":[[401,13]]},"47":{"position":[[11,13]]}}}],["avail",{"_index":393,"t":{"41":{"position":[[541,9]]},"45":{"position":[[127,9]]},"51":{"position":[[277,9]]},"53":{"position":[[139,9]]}}}],["avoid",{"_index":297,"t":{"29":{"position":[[230,5]]}}}],["awesom",{"_index":492,"t":{"70":{"position":[[91,7],[183,7]]}}}],["backgroundcolor",{"_index":507,"t":{"72":{"position":[[169,16]]}}}],["balanc",{"_index":319,"t":{"31":{"position":[[226,7]]}}}],["bar",{"_index":353,"t":{"37":{"position":[[178,3]]}}}],["base",{"_index":147,"t":{"21":{"position":[[191,5]]},"23":{"position":[[283,5]]}}}],["basi",{"_index":204,"t":{"23":{"position":[[335,6]]}}}],["basic",{"_index":328,"t":{"35":{"position":[[26,6]]}}}],["basics/cr",{"_index":417,"t":{"47":{"position":[[431,13]]}}}],["be",{"_index":176,"t":{"21":{"position":[[650,5]]}}}],["behalf",{"_index":186,"t":{"21":{"position":[[804,6]]}}}],["below",{"_index":234,"t":{"25":{"position":[[520,5]]}}}],["between",{"_index":315,"t":{"31":{"position":[[115,7],[234,7]]}}}],["bid",{"_index":295,"t":{"29":{"position":[[193,3]]}}}],["block",{"_index":149,"t":{"21":{"position":[[215,6]]},"68":{"position":[[14,6]]}}}],["blog",{"_index":357,"t":{"39":{"position":[[35,4],[57,4]]},"41":{"position":[[524,4]]}}}],["blog/2021",{"_index":364,"t":{"41":{"position":[[17,9],[47,9]]}}}],["blue",{"_index":524,"t":{"72":{"position":[[548,4]]}}}],["bluefacebook",{"_index":520,"t":{"72":{"position":[[460,24]]}}}],["color=\"#25c2a0\">docusauru",{"_index":518,"t":{"72":{"position":[[394,26]]}}}],["come",{"_index":145,"t":{"21":{"position":[[166,5],[991,7]]},"25":{"position":[[216,4]]},"27":{"position":[[194,4]]}}}],["command",{"_index":31,"t":{"8":{"position":[[142,8],[215,7],[228,7],[324,7]]},"10":{"position":[[63,7],[234,7]]},"23":{"position":[[135,7]]}}}],["commun",{"_index":356,"t":{"37":{"position":[[258,9]]}}}],["comparison",{"_index":232,"t":{"25":{"position":[[493,10]]}}}],["compet",{"_index":165,"t":{"21":{"position":[[455,7]]}}}],["complex",{"_index":246,"t":{"25":{"position":[[722,8]]}}}],["compon",{"_index":500,"t":{"72":{"position":[[76,10]]}}}],["comput",{"_index":219,"t":{"25":{"position":[[301,11],[581,12],[643,12],[785,12]]},"29":{"position":[[246,12]]}}}],["configur",{"_index":344,"t":{"37":{"position":[[49,13]]}}}],["congratul",{"_index":387,"t":{"41":{"position":[[408,16]]}}}],["connect",{"_index":101,"t":{"17":{"position":[[140,7]]},"21":{"position":[[826,9],[887,7]]},"23":{"position":[[166,7]]},"33":{"position":[[80,7]]},"43":{"position":[[30,9]]}}}],["consid",{"_index":267,"t":{"27":{"position":[[441,8],[483,8]]}}}],["const",{"_index":502,"t":{"72":{"position":[[111,5]]}}}],["content",{"_index":239,"t":{"25":{"position":[[656,7]]},"86":{"position":[[86,7],[151,7],[217,7]]}}}],["contest",{"_index":166,"t":{"21":{"position":[[479,8]]}}}],["copi",{"_index":527,"t":{"76":{"position":[[94,6]]},"86":{"position":[[0,4]]}}}],["cost",{"_index":225,"t":{"25":{"position":[[396,4]]},"27":{"position":[[136,5],[381,4],[506,4],[856,4]]},"29":{"position":[[134,4]]},"31":{"position":[[280,4]]},"58":{"position":[[191,4]]}}}],["cp",{"_index":553,"t":{"86":{"position":[[108,2]]}}}],["cpu",{"_index":277,"t":{"27":{"position":[[607,3]]}}}],["creat",{"_index":7,"t":{"4":{"position":[[15,8]]},"10":{"position":[[147,7]]},"39":{"position":[[11,7]]},"41":{"position":[[0,6]]},"45":{"position":[[0,6]]},"47":{"position":[[25,7],[259,6]]},"49":{"position":[[44,6]]},"51":{"position":[[0,6]]},"53":{"position":[[0,6]]},"64":{"position":[[95,7],[145,7],[207,6]]},"70":{"position":[[35,6]]},"76":{"position":[[154,8]]}}}],["creator",{"_index":376,"t":{"41":{"position":[[153,7]]}}}],["css",{"_index":446,"t":{"55":{"position":[[120,3]]}}}],["curl",{"_index":97,"t":{"17":{"position":[[112,4]]}}}],["current",{"_index":191,"t":{"23":{"position":[[0,10]]},"25":{"position":[[137,10]]},"27":{"position":[[0,10]]},"66":{"position":[[220,7]]},"76":{"position":[[254,7]]}}}],["cursor",{"_index":513,"t":{"72":{"position":[[247,7]]}}}],["custom",{"_index":350,"t":{"37":{"position":[[140,6]]},"47":{"position":[[81,9]]},"62":{"position":[[165,6]]}}}],["daili",{"_index":203,"t":{"23":{"position":[[329,5]]}}}],["danger",{"_index":494,"t":{"70":{"position":[[118,9],[153,9],[231,9]]}}}],["decentr",{"_index":231,"t":{"25":{"position":[[473,17],[602,17]]},"33":{"position":[[145,13]]}}}],["default",{"_index":431,"t":{"51":{"position":[[142,7]]}}}],["defaultlocal",{"_index":546,"t":{"84":{"position":[[110,14]]}}}],["depend",{"_index":22,"t":{"6":{"position":[[112,13]]},"8":{"position":[[360,12]]}}}],["deploy",{"_index":449,"t":{"58":{"position":[[120,6],[206,10]]}}}],["descript",{"_index":460,"t":{"62":{"position":[[118,12],[143,11]]}}}],["design",{"_index":262,"t":{"27":{"position":[[247,6]]},"31":{"position":[[161,6]]},"37":{"position":[[147,6]]}}}],["determinist",{"_index":248,"t":{"25":{"position":[[760,13]]}}}],["develop",{"_index":45,"t":{"10":{"position":[[8,11],[294,11]]},"88":{"position":[[185,12]]}}}],["devic",{"_index":95,"t":{"17":{"position":[[101,6],[291,6]]},"19":{"position":[[355,6]]}}}],["device_id",{"_index":91,"t":{"17":{"position":[[52,11],[301,11]]},"19":{"position":[[254,11]]}}}],["differ",{"_index":221,"t":{"25":{"position":[[322,9]]},"29":{"position":[[19,9],[406,9]]}}}],["difficult",{"_index":308,"t":{"29":{"position":[[453,9]]}}}],["digit",{"_index":312,"t":{"31":{"position":[[65,7]]}}}],["directori",{"_index":49,"t":{"10":{"position":[[83,9]]},"66":{"position":[[100,9]]}}}],["discov",{"_index":1,"t":{"2":{"position":[[6,8]]}}}],["display",{"_index":69,"t":{"10":{"position":[[450,8]]}}}],["distribut",{"_index":150,"t":{"21":{"position":[[230,11]]},"31":{"position":[[344,12]]}}}],["doc",{"_index":401,"t":{"47":{"position":[[52,4]]},"62":{"position":[[86,3]]},"74":{"position":[[48,5]]},"76":{"position":[[79,4],[168,4],[249,4],[327,4]]},"78":{"position":[[226,4]]},"80":{"position":[[33,4]]}}}],["doc.md",{"_index":459,"t":{"62":{"position":[[68,6]]}}}],["docs/curr",{"_index":552,"t":{"86":{"position":[[94,13]]}}}],["docs/current/intro.md",{"_index":554,"t":{"86":{"position":[[159,21],[225,21]]}}}],["docs/hello.md",{"_index":398,"t":{"45":{"position":[[26,14],[41,13]]},"47":{"position":[[123,13]]},"80":{"position":[[143,13]]}}}],["docs/intro.md",{"_index":64,"t":{"10":{"position":[[368,13]]},"82":{"position":[[16,13]]},"86":{"position":[[9,13],[111,13]]}}}],["docs:vers",{"_index":526,"t":{"76":{"position":[[58,12]]}}}],["docsversiondropdown",{"_index":537,"t":{"78":{"position":[[184,22]]}}}],["document",{"_index":70,"t":{"13":{"position":[[5,8]]},"37":{"position":[[18,13]]},"43":{"position":[[0,9]]},"45":{"position":[[93,11],[111,8]]},"47":{"position":[[224,11],[447,11]]},"62":{"position":[[9,9],[103,8],[134,8]]},"72":{"position":[[18,13]]}}}],["docusauru",{"_index":2,"t":{"2":{"position":[[15,10]]},"4":{"position":[[43,10]]},"8":{"position":[[15,10],[389,11]]},"10":{"position":[[155,10]]},"35":{"position":[[36,10],[94,10]]},"37":{"position":[[207,10],[247,10]]},"39":{"position":[[0,10]]},"41":{"position":[[164,10],[289,10]]},"45":{"position":[[82,10]]},"47":{"position":[[0,10],[213,10]]},"55":{"position":[[0,10]]},"60":{"position":[[0,10]]},"66":{"position":[[139,12],[329,12]]},"70":{"position":[[0,10]]},"72":{"position":[[512,10]]},"74":{"position":[[0,10]]},"76":{"position":[[47,10]]}}}],["docusaurus!hello",{"_index":485,"t":{"68":{"position":[[148,10],[254,10]]}}}],["h1>mi",{"_index":434,"t":{"51":{"position":[[193,6]]}}}],["hard",{"_index":161,"t":{"21":{"position":[[405,4]]}}}],["hasn’t",{"_index":300,"t":{"29":{"position":[[304,6]]}}}],["head",{"_index":461,"t":{"62":{"position":[[192,7]]}}}],["hello",{"_index":399,"t":{"45":{"position":[[57,5]]},"47":{"position":[[188,5],[365,8]]}}}],["hellodocusauru",{"_index":484,"t":{"68":{"position":[[119,17],[227,17]]}}}],["here",{"_index":218,"t":{"25":{"position":[[288,4]]}}}],["hi",{"_index":407,"t":{"47":{"position":[[156,5]]}}}],["high",{"_index":276,"t":{"27":{"position":[[590,4]]}}}],["higher",{"_index":321,"t":{"31":{"position":[[302,6]]}}}],["highlight",{"_index":481,"t":{"68":{"position":[[47,13]]},"72":{"position":[[117,9],[383,10],[449,10]]}}}],["html",{"_index":444,"t":{"55":{"position":[[99,5]]}}}],["http://localhost:3000",{"_index":62,"t":{"10":{"position":[[339,23]]},"58":{"position":[[84,23]]}}}],["http://localhost:3000/blog/greet",{"_index":394,"t":{"41":{"position":[[554,37]]}}}],["http://localhost:3000/doc",{"_index":531,"t":{"76":{"position":[[201,27]]}}}],["http://localhost:3000/docs/hello",{"_index":400,"t":{"45":{"position":[[140,33]]},"80":{"position":[[110,32]]}}}],["http://localhost:3000/docs/next",{"_index":532,"t":{"76":{"position":[[265,32]]}}}],["http://localhost:3000/docs/next/hello",{"_index":542,"t":{"80":{"position":[[165,37]]}}}],["http://localhost:3000/fr",{"_index":555,"t":{"88":{"position":[[104,25]]}}}],["http://localhost:3000/mi",{"_index":438,"t":{"51":{"position":[[290,24]]},"53":{"position":[[152,24]]}}}],["https://github.com/aoraki",{"_index":112,"t":{"19":{"position":[[10,25]]}}}],["https://github.com/joelmarcey",{"_index":379,"t":{"41":{"position":[[182,29]]}}}],["https://github.com/joelmarcey.png",{"_index":381,"t":{"41":{"position":[[223,33]]}}}],["https://github.com/slorber.png",{"_index":386,"t":{"41":{"position":[[355,30]]}}}],["https://sebastienlorber.com",{"_index":385,"t":{"41":{"position":[[316,27]]}}}],["https://storage.googleapis.com/zkevm",{"_index":119,"t":{"19":{"position":[[103,36]]}}}],["https://zkpool",{"_index":100,"t":{"17":{"position":[[125,14]]}}}],["https://zkpool.io",{"_index":193,"t":{"23":{"position":[[58,18],[193,17]]}}}],["i18n",{"_index":335,"t":{"35":{"position":[[180,5]]},"84":{"position":[[102,5]]}}}],["i18n/fr",{"_index":548,"t":{"86":{"position":[[35,7]]}}}],["i18n/fr/docusauru",{"_index":550,"t":{"86":{"position":[[60,18],[125,18],[191,18]]}}}],["id",{"_index":96,"t":{"17":{"position":[[108,3],[298,2]]},"19":{"position":[[362,2]]},"62":{"position":[[79,3],[90,2]]}}}],["ideal",{"_index":284,"t":{"27":{"position":[[730,5]]}}}],["imag",{"_index":471,"t":{"66":{"position":[[17,6],[79,6],[197,6],[282,6]]}}}],["image_url",{"_index":380,"t":{"41":{"position":[[212,10],[344,10]]}}}],["immedi",{"_index":11,"t":{"4":{"position":[[54,11]]}}}],["import",{"_index":428,"t":{"51":{"position":[[72,6],[99,6]]}}}],["includ",{"_index":256,"t":{"27":{"position":[[79,9]]},"31":{"position":[[188,9]]},"92":{"position":[[90,7]]}}}],["index",{"_index":359,"t":{"39":{"position":[[62,5]]}}}],["individu",{"_index":136,"t":{"21":{"position":[[50,10]]}}}],["infra",{"_index":272,"t":{"27":{"position":[[533,5],[619,5]]}}}],["infrastructur",{"_index":258,"t":{"27":{"position":[[104,15]]}}}],["init",{"_index":33,"t":{"8":{"position":[[155,4]]}}}],["initi",{"_index":330,"t":{"35":{"position":[[76,7]]}}}],["insid",{"_index":501,"t":{"72":{"position":[[87,6]]}}}],["inspir",{"_index":354,"t":{"37":{"position":[[187,12]]}}}],["instal",{"_index":17,"t":{"6":{"position":[[37,10]]},"8":{"position":[[337,8]]},"23":{"position":[[143,12]]}}}],["integr",{"_index":40,"t":{"8":{"position":[[279,10]]}}}],["interact",{"_index":498,"t":{"72":{"position":[[37,11]]}}}],["interv",{"_index":201,"t":{"23":{"position":[[302,9]]}}}],["intro",{"_index":415,"t":{"47":{"position":[[356,8]]}}}],["involv",{"_index":271,"t":{"27":{"position":[[520,7]]},"37":{"position":[[231,8]]}}}],["it'",{"_index":159,"t":{"21":{"position":[[395,4],[986,4]]}}}],["item",{"_index":282,"t":{"27":{"position":[[713,5]]},"37":{"position":[[111,5]]},"47":{"position":[[413,6]]},"78":{"position":[[167,6]]},"90":{"position":[[167,6]]}}}],["itself",{"_index":185,"t":{"21":{"position":[[794,6]]}}}],["it’",{"_index":307,"t":{"29":{"position":[[448,4]]}}}],["jamstack",{"_index":442,"t":{"55":{"position":[[51,10]]}}}],["javascript",{"_index":445,"t":{"55":{"position":[[105,10]]}}}],["joel",{"_index":373,"t":{"41":{"position":[[131,4]]}}}],["join",{"_index":135,"t":{"21":{"position":[[39,4],[748,4]]}}}],["jsx",{"_index":482,"t":{"68":{"position":[[61,6]]}}}],["k",{"_index":123,"t":{"19":{"position":[[228,1],[315,2]]}}}],["keep",{"_index":323,"t":{"31":{"position":[[331,4]]}}}],["key",{"_index":94,"t":{"17":{"position":[[93,3],[264,3]]},"19":{"position":[[336,3]]},"23":{"position":[[119,3]]}}}],["keys/kzg_bn254_21.sr",{"_index":120,"t":{"19":{"position":[[149,21]]}}}],["knowledg",{"_index":207,"t":{"25":{"position":[[34,9]]},"31":{"position":[[37,9]]}}}],["l",{"_index":99,"t":{"17":{"position":[[123,1]]}}}],["l3",{"_index":141,"t":{"21":{"position":[[121,2]]}}}],["label",{"_index":404,"t":{"47":{"position":[[103,5],[394,6]]},"72":{"position":[[329,5]]}}}],["labs/zkpool",{"_index":113,"t":{"19":{"position":[[36,11]]}}}],["languag",{"_index":560,"t":{"90":{"position":[[30,10]]}}}],["larg",{"_index":240,"t":{"25":{"position":[[664,6]]}}}],["layout",{"_index":351,"t":{"37":{"position":[[158,6]]},"51":{"position":[[106,6],[184,8],[244,9]]}}}],["learn",{"_index":327,"t":{"35":{"position":[[14,7]]}}}],["less",{"_index":3,"t":{"2":{"position":[[29,4]]}}}],["let'",{"_index":0,"t":{"2":{"position":[[0,5]]},"64":{"position":[[78,5],[128,5],[190,5]]},"82":{"position":[[0,5]]}}}],["line",{"_index":67,"t":{"10":{"position":[[408,6]]}}}],["link",{"_index":465,"t":{"64":{"position":[[17,5]]}}}],["links](./hello.md",{"_index":463,"t":{"62":{"position":[[219,19]]}}}],["local",{"_index":57,"t":{"10":{"position":[[262,7]]},"58":{"position":[[27,8]]},"84":{"position":[[54,7],[131,8]]},"88":{"position":[[30,7],[57,6],[72,9],[219,6]]},"90":{"position":[[47,6],[221,6]]},"92":{"position":[[31,7],[58,6],[106,7]]}}}],["localedropdown",{"_index":561,"t":{"90":{"position":[[184,17]]}}}],["localhost:3000",{"_index":421,"t":{"49":{"position":[[91,15]]}}}],["localhost:3000/foo",{"_index":423,"t":{"49":{"position":[[126,18]]}}}],["localhost:3000/foo/bar",{"_index":425,"t":{"49":{"position":[[168,22]]}}}],["login",{"_index":197,"t":{"23":{"position":[[184,5]]}}}],["logo](./img/docusaurus.png",{"_index":479,"t":{"66":{"position":[[342,27]]}}}],["logo](/img/docusaurus.png",{"_index":475,"t":{"66":{"position":[[152,26]]}}}],["look",{"_index":334,"t":{"35":{"position":[[157,4]]}}}],["lorber",{"_index":383,"t":{"41":{"position":[[275,6]]}}}],["low",{"_index":259,"t":{"27":{"position":[[132,3]]},"31":{"position":[[276,3]]}}}],["machin",{"_index":229,"t":{"25":{"position":[[453,8]]},"27":{"position":[[568,9],[635,7]]}}}],["made",{"_index":329,"t":{"35":{"position":[[51,4]]},"41":{"position":[[434,4]]}}}],["maintain",{"_index":384,"t":{"41":{"position":[[300,10]]}}}],["make",{"_index":180,"t":{"21":{"position":[[712,5]]},"25":{"position":[[172,4]]},"27":{"position":[[35,4],[124,4]]},"31":{"position":[[27,4]]},"72":{"position":[[8,4]]}}}],["manag",{"_index":278,"t":{"27":{"position":[[628,6]]},"74":{"position":[[15,6]]}}}],["mani",{"_index":228,"t":{"25":{"position":[[448,4]]}}}],["marcey",{"_index":374,"t":{"41":{"position":[[136,6]]}}}],["markdown",{"_index":397,"t":{"45":{"position":[[9,8]]},"49":{"position":[[4,8]]},"53":{"position":[[30,8],[61,8],[83,8],[107,8],[177,8]]},"60":{"position":[[20,8]]},"62":{"position":[[0,8],[183,8],[200,8]]},"64":{"position":[[8,8]]},"66":{"position":[[8,8],[302,8]]},"68":{"position":[[0,8]]},"72":{"position":[[94,9]]}}}],["mathemat",{"_index":247,"t":{"25":{"position":[[731,12]]}}}],["matter",{"_index":458,"t":{"62":{"position":[[57,7]]}}}],["mdx",{"_index":497,"t":{"72":{"position":[[0,3]]}}}],["metadata",{"_index":403,"t":{"47":{"position":[[69,8]]},"62":{"position":[[24,8]]}}}],["mileston",{"_index":324,"t":{"33":{"position":[[27,11]]}}}],["miner",{"_index":237,"t":{"25":{"position":[[546,6]]}}}],["minim",{"_index":174,"t":{"21":{"position":[[628,8]]}}}],["mininum",{"_index":157,"t":{"21":{"position":[[368,8]]}}}],["minut",{"_index":5,"t":{"2":{"position":[[41,8]]},"35":{"position":[[141,8]]}}}],["mission",{"_index":311,"t":{"31":{"position":[[13,7]]}}}],["mkdir",{"_index":549,"t":{"86":{"position":[[51,5]]}}}],["modifi",{"_index":343,"t":{"37":{"position":[[32,6]]},"78":{"position":[[64,6]]},"84":{"position":[[0,6]]},"90":{"position":[[64,6]]}}}],["module.export",{"_index":413,"t":{"47":{"position":[[318,14]]},"78":{"position":[[123,14]]},"84":{"position":[[83,14]]},"90":{"position":[[123,14]]}}}],["moment",{"_index":132,"t":{"21":{"position":[[14,6]]}}}],["monitor",{"_index":280,"t":{"27":{"position":[[656,10]]}}}],["more",{"_index":331,"t":{"35":{"position":[[114,4],[136,4]]},"72":{"position":[[32,4]]}}}],["much",{"_index":252,"t":{"27":{"position":[[40,4],[368,4],[528,4]]},"35":{"position":[[109,4]]},"41":{"position":[[503,4]]}}}],["multipl",{"_index":78,"t":{"13":{"position":[[85,8]]},"33":{"position":[[88,8]]},"74":{"position":[[22,8]]}}}],["myreactpag",{"_index":432,"t":{"51":{"position":[[159,13]]}}}],["name",{"_index":372,"t":{"41":{"position":[[125,5],[259,5]]}}}],["navbar",{"_index":347,"t":{"37":{"position":[[93,6]]},"78":{"position":[[157,7],[264,7]]},"90":{"position":[[157,7],[257,7]]}}}],["navig",{"_index":55,"t":{"10":{"position":[[187,8]]},"43":{"position":[[73,10]]},"78":{"position":[[3,8]]},"90":{"position":[[3,8]]}}}],["necessari",{"_index":43,"t":{"8":{"position":[[350,9]]},"25":{"position":[[809,10]]}}}],["need",{"_index":44,"t":{"8":{"position":[[377,4]]},"10":{"position":[[179,4]]},"25":{"position":[[381,6]]},"27":{"position":[[611,4]]}}}],["new",{"_index":8,"t":{"4":{"position":[[26,3]]},"8":{"position":[[11,3]]},"21":{"position":[[179,3]]},"41":{"position":[[520,3]]},"45":{"position":[[107,3]]},"51":{"position":[[261,3]]},"53":{"position":[[123,3]]}}}],["newli",{"_index":53,"t":{"10":{"position":[[141,5]]}}}],["node.j",{"_index":13,"t":{"6":{"position":[[0,7],[48,8]]}}}],["note",{"_index":199,"t":{"23":{"position":[[250,5]]}}}],["notic",{"_index":87,"t":{"17":{"position":[[0,7]]}}}],["now",{"_index":392,"t":{"41":{"position":[[537,3]]},"45":{"position":[[123,3]]},"51":{"position":[[273,3]]},"53":{"position":[[135,3]]},"58":{"position":[[70,3],[116,3]]},"76":{"position":[[173,3]]},"90":{"position":[[237,3]]}}}],["npm",{"_index":32,"t":{"8":{"position":[[151,3]]},"10":{"position":[[42,3],[220,3]]},"57":{"position":[[32,3]]},"58":{"position":[[36,3]]},"76":{"position":[[39,3]]},"88":{"position":[[38,3]]},"92":{"position":[[39,3],[123,3]]}}}],["number",{"_index":241,"t":{"25":{"position":[[671,6]]}}}],["offer",{"_index":332,"t":{"35":{"position":[[122,6]]}}}],["offici",{"_index":342,"t":{"37":{"position":[[9,8]]}}}],["on",{"_index":128,"t":{"19":{"position":[[397,3]]},"21":{"position":[[274,3]]},"23":{"position":[[131,3]]},"33":{"position":[[64,3]]},"88":{"position":[[215,3]]}}}],["onc",{"_index":563,"t":{"92":{"position":[[117,5]]}}}],["onclick",{"_index":515,"t":{"72":{"position":[[269,11]]}}}],["open",{"_index":63,"t":{"10":{"position":[[363,4]]},"21":{"position":[[857,4]]}}}],["oper",{"_index":173,"t":{"21":{"position":[[616,8]]},"25":{"position":[[272,9],[744,10]]}}}],["optim",{"_index":268,"t":{"27":{"position":[[457,8]]}}}],["option",{"_index":493,"t":{"70":{"position":[[107,6],[199,6]]}}}],["optional,program",{"_index":127,"t":{"19":{"position":[[365,17]]}}}],["order",{"_index":52,"t":{"10":{"position":[[117,5]]}}}],["os",{"_index":82,"t":{"15":{"position":[[10,2]]}}}],["out",{"_index":261,"t":{"27":{"position":[[199,4]]}}}],["p",{"_index":121,"t":{"19":{"position":[[172,1],[267,1],[429,2]]},"86":{"position":[[58,1]]}}}],["p>thi",{"_index":436,"t":{"51":{"position":[[216,7]]}}}],["pad",{"_index":511,"t":{"72":{"position":[[230,8]]}}}],["page",{"_index":65,"t":{"10":{"position":[[388,5]]},"39":{"position":[[21,4],[68,5]]},"43":{"position":[[24,5]]},"49":{"position":[[64,5]]},"51":{"position":[[265,4],[321,5]]},"53":{"position":[[92,4],[116,4],[127,4],[186,5]]},"64":{"position":[[121,6],[216,5]]},"88":{"position":[[154,4]]}}}],["page.j",{"_index":427,"t":{"51":{"position":[[36,8],[64,7]]}}}],["page.md",{"_index":439,"t":{"53":{"position":[[39,8],[70,7]]},"64":{"position":[[172,9]]}}}],["page and with your own account access key and device id. curl -sSf -L https://zkpool-connect-1318455074.cos.na-siliconvalley.myqcloud.com/prover-client/join_zkpool_ubuntu-20.04_cpu.sh | sudo sh -s -- --access-key --device-id ","s":"run zkpool-prover with one command","u":"/guides/how-to-run-prover","h":"#run-zkpool-prover-with-one-command","p":12},{"i":19,"t":"git clone https://github.com/aoraki-labs/zkpool-prover.git cd zkpool-prover cargo build --release wget https://storage.googleapis.com/zkevm-circuits-keys/kzg_bn254_21.srs -P ./target/release cd ./target/release ./zkpool-prover -k -u -p zkpool-prover parameters -k: the prover access key -u: the prover device id (optional,program will generate one automatically if not set ) -p: the zkpool scheduler pool address","s":"Compile and run zkpool-prover from source code","u":"/guides/how-to-run-prover","h":"#compile-and-run-zkpool-prover-from-source-code","p":12},{"i":21,"t":"ZKPool at the moment supports users to join as an individual prover worker or a group of prover workers of Taiko Eldfell L3 (alpha-4) Testnet. Taiko Alpha-4 testnets comes with a new staking based prover economics. Blocks will be distributed to top 32 staked provers. To be one of the top 32 provers, a substantial amount of Taiko token and capacity of prover workers (mininum 32) are required. It's very hard for smaller and solo provers to successfully compete in this staking contest. ZKPool aims to provide the following capabilities: ZKPool gathers smaller provers' capacity together and stake as a pool ZKPool operates to minimize the risks of being slashed ZKPool calculates the rewards of provers ZKPool makes it really easy for provers to join At the first stage, ZKPool will stake by itself on behalf of all provers connected to the pool. Pool is open to registered provers to connect to. In the futher stage, stakers and provers will be able to stake through ZKPool as well. It's coming.","s":"Introduction","u":"/guides/introduction","h":"","p":20},{"i":23,"t":"Currently, the general flow is the following: Register on https://zkpool.io, generate the user account's unique access key Use the one command installation script to connect to ZKPool Login to https://zkpool.io to view prover workers status, rewards Note: the rewards are calculated based on a certain interval, for example on a daily basis.","s":"General flow","u":"/guides/introduction","h":"#general-flow","p":20},{"i":25,"t":"There has been an explosion of ZKP (Zero-Knowledge Proof) applications and zk-Rollups, especially Ethereum zk-Rollup. ZKP computation power is different from POW. While POW requires many machines to achieve decentralization, ZKP is a service that each project needs, and its cost is an essential factor. A comparison is shown in the below table. Aspect POW Miners ZKP Provers Computation Purpose Decentralization To generate a proof Computation Content A large number of random, repeated, and similar functions. Complex mathematical operations with deterministic results. Computation Redundancy Necessary Unnecessary The adoption of ZKP is still facing challenges from both the ZKP projects' side and the ZKP prover operators' side due to these features.","s":"Overview","u":"/overview","h":"","p":24},{"i":27,"t":"Currently, each ZKP project has to make a considerable effort to build a proving system, including algorithms and infrastructure, while keeping it low-cost. Some questions that come up while building a zk-related project include: Which proving system could be used? How to design the circuit? How to set up the proving system? What is the performance of the proving system? How can it be optimized? How much does the proving system cost? How can the overall cost be reduced?","s":"Challenges for ZKP projects","u":"/overview","h":"#challenges-for-zkp-projects","p":24},{"i":29,"t":"The ZKP prover operators meet some new challenges other than POW miners. Some ZKP projects may require a gas fee to submit proof or staking as a prover, which brings cost and risk for the provers. Some projects may use bid or random selection solutions to avoid redundant computation, which may not fully utilize the prover when it hasn't won the task. It reduces the revenue a prover can have. The various ZKP projects have different algorithms and prover software, making it difficult for provers to accommodate these various projects.","s":"Challenges for ZKP Prover Operators","u":"/overview","h":"#challenges-for-zkp-prover-operators","p":24},{"i":31,"t":"The ZKPool's mission is to make Zero-Knowledge Proof flow in the digital world. The ZKPool wants to build a bridge between ZKP applications and ZKP provers. At ZKPool, we aim to provide a solution that addresses the challenges in the proving system. The ideal solution is to provide the following to the ZKP projects: Provides fast and high-throughput performance. Offers cheap and transparent costs. The design principles of ZKPool include: Economic efficiency. Find a balance between the requirements of ZKP projects' low-cost and ZKP prover's higher profit. Transparency: Keep revenue distribution transparent","s":"The Design Target of ZKPool","u":"/overview","h":"#the-design-target-of-zkpool","p":24},{"i":33,"t":"The ZKPool will have the following milestones: Centralized solution for one ZKP project Connect multiple ZKP projects with the unified ZKP provers Fully decentralized ZKP computing pool","s":"The Roadmap of ZKPool","u":"/overview","h":"#the-roadmap-of-zkpool","p":24},{"i":35,"t":"Documents are groups of pages connected through: a sidebar previous/next navigation versioning","s":"Create a Document","u":"/tutorial-basics/create-a-document","h":"","p":34},{"i":37,"t":"Create a Markdown file at docs/hello.md: docs/hello.md # Hello This is my **first Docusaurus document**! A new document is now available at http://localhost:3000/docs/hello.","s":"Create your first Doc","u":"/tutorial-basics/create-a-document","h":"#create-your-first-doc","p":34},{"i":39,"t":"Docusaurus automatically creates a sidebar from the docs folder. Add metadata to customize the sidebar label and position: docs/hello.md --- sidebar_label: 'Hi!' sidebar_position: 3 --- # Hello This is my **first Docusaurus document**! It is also possible to create your sidebar explicitly in sidebars.js: sidebars.js module.exports = { tutorialSidebar: [ 'intro', 'hello', { type: 'category', label: 'Tutorial', items: ['tutorial-basics/create-a-document'], }, ], };","s":"Configure the Sidebar","u":"/tutorial-basics/create-a-document","h":"#configure-the-sidebar","p":34},{"i":41,"t":"You have just learned the basics of Docusaurus and made some changes to the initial template. Docusaurus has much more to offer! Have 5 more minutes? Take a look at versioning and i18n. Anything unclear or buggy in this tutorial? Please report it!","s":"Congratulations!","u":"/tutorial-basics/congratulations","h":"","p":40},{"i":43,"t":"Read the official documentation Modify your site configuration with docusaurus.config.js Add navbar and footer items with themeConfig Add a custom Design and Layout Add a search bar Find inspirations in the Docusaurus showcase Get involved in the Docusaurus Community","s":"What's next?","u":"/tutorial-basics/congratulations","h":"#whats-next","p":40},{"i":45,"t":"Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...","s":"Create a Blog Post","u":"/tutorial-basics/create-a-blog-post","h":"","p":44},{"i":47,"t":"Create a file at blog/2021-02-28-greetings.md: blog/2021-02-28-greetings.md --- slug: greetings title: Greetings! authors: - name: Joel Marcey title: Co-creator of Docusaurus 1 url: https://github.com/JoelMarcey image_url: https://github.com/JoelMarcey.png - name: Sébastien Lorber title: Docusaurus maintainer url: https://sebastienlorber.com image_url: https://github.com/slorber.png tags: [greetings] --- Congratulations, you have made your first post! Feel free to play around and edit this post as much you like. A new blog post is now available at http://localhost:3000/blog/greetings.","s":"Create your first Post","u":"/tutorial-basics/create-a-blog-post","h":"#create-your-first-post","p":44},{"i":49,"t":"Add Markdown or React files to src/pages to create a standalone page: src/pages/index.js → localhost:3000/ src/pages/foo.md → localhost:3000/foo src/pages/foo/bar.js → localhost:3000/foo/bar","s":"Create a Page","u":"/tutorial-basics/create-a-page","h":"","p":48},{"i":51,"t":"Create a file at src/pages/my-react-page.js: src/pages/my-react-page.js import React from 'react'; import Layout from '@theme/Layout'; export default function MyReactPage() { return (

My React page

This is a React page

); } A new page is now available at http://localhost:3000/my-react-page.","s":"Create your first React Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-react-page","p":48},{"i":53,"t":"Create a file at src/pages/my-markdown-page.md: src/pages/my-markdown-page.md # My Markdown page This is a Markdown page A new page is now available at http://localhost:3000/my-markdown-page.","s":"Create your first Markdown Page","u":"/tutorial-basics/create-a-page","h":"#create-your-first-markdown-page","p":48},{"i":55,"t":"Docusaurus is a static-site-generator (also called Jamstack). It builds your site as simple static HTML, JavaScript and CSS files.","s":"Deploy your site","u":"/tutorial-basics/deploy-your-site","h":"","p":54},{"i":57,"t":"Build your site for production: npm run build The static files are generated in the build folder.","s":"Build your site","u":"/tutorial-basics/deploy-your-site","h":"#build-your-site","p":54},{"i":58,"t":"Test your production build locally: npm run serve The build folder is now served at http://localhost:3000/. You can now deploy the build folder almost anywhere easily, for free or very small cost (read the Deployment Guide).","s":"Deploy your site","u":"/tutorial-basics/deploy-your-site","h":"#deploy-your-site-1","p":54},{"i":60,"t":"Docusaurus supports Markdown and a few additional features.","s":"Markdown Features","u":"/tutorial-basics/markdown-features","h":"","p":59},{"i":62,"t":"Markdown documents have metadata at the top called Front Matter: my-doc.md --- id: my-doc-id title: My document title description: My document description slug: /my-custom-url --- ## Markdown heading Markdown text with [links](./hello.md)","s":"Front Matter","u":"/tutorial-basics/markdown-features","h":"#front-matter","p":59},{"i":64,"t":"Regular Markdown links are supported, using url paths or relative file paths. Let's see how to [Create a page](/create-a-page). Let's see how to [Create a page](./create-a-page.md). Result: Let's see how to Create a page.","s":"Links","u":"/tutorial-basics/markdown-features","h":"#links","p":59},{"i":66,"t":"Regular Markdown images are supported. You can use absolute paths to reference images in the static directory (static/img/docusaurus.png): ![Docusaurus logo](/img/docusaurus.png) You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them: ![Docusaurus logo](./img/docusaurus.png)","s":"Images","u":"/tutorial-basics/markdown-features","h":"#images","p":59},{"i":68,"t":"Markdown code blocks are supported with Syntax highlighting. ```jsx title=\"src/components/HelloDocusaurus.js\" function HelloDocusaurus() { return (

Hello, Docusaurus!

) } ``` src/components/HelloDocusaurus.js function HelloDocusaurus() { return

Hello, Docusaurus!

; }","s":"Code Blocks","u":"/tutorial-basics/markdown-features","h":"#code-blocks","p":59},{"i":70,"t":"Docusaurus has a special syntax to create admonitions and callouts: :::tip My tip Use this awesome feature option ::: :::danger Take care This action is dangerous ::: My tip Use this awesome feature option Take care This action is dangerous","s":"Admonitions","u":"/tutorial-basics/markdown-features","h":"#admonitions","p":59},{"i":72,"t":"MDX can make your documentation more interactive and allows using any React components inside Markdown: export const Highlight = ({children, color}) => ( { alert(`You clicked the color ${color} with label ${children}`) }}> {children} ); This is Docusaurus green ! This is Facebook blue ! This is Docusaurus green ! This is Facebook blue !","s":"MDX and React Components","u":"/tutorial-basics/markdown-features","h":"#mdx-and-react-components","p":59},{"i":74,"t":"Docusaurus can manage multiple versions of your docs.","s":"Manage Docs Versions","u":"/tutorial-extras/manage-docs-versions","h":"","p":73},{"i":76,"t":"Release a version 1.0 of your project: npm run docusaurus docs:version 1.0 The docs folder is copied into versioned_docs/version-1.0 and versions.json is created. Your docs now have 2 versions: 1.0 at http://localhost:3000/docs/ for the version 1.0 docs current at http://localhost:3000/docs/next/ for the upcoming, unreleased docs","s":"Create a docs version","u":"/tutorial-extras/manage-docs-versions","h":"#create-a-docs-version","p":73},{"i":78,"t":"To navigate seamlessly across versions, add a version dropdown. Modify the docusaurus.config.js file: docusaurus.config.js module.exports = { themeConfig: { navbar: { items: [ { type: 'docsVersionDropdown', }, ], }, }, }; The docs version dropdown appears in your navbar:","s":"Add a Version Dropdown","u":"/tutorial-extras/manage-docs-versions","h":"#add-a-version-dropdown","p":73},{"i":80,"t":"It is possible to edit versioned docs in their respective folder: versioned_docs/version-1.0/hello.md updates http://localhost:3000/docs/hello docs/hello.md updates http://localhost:3000/docs/next/hello","s":"Update an existing version","u":"/tutorial-extras/manage-docs-versions","h":"#update-an-existing-version","p":73},{"i":82,"t":"Let's translate docs/intro.md to French.","s":"Translate your site","u":"/tutorial-extras/translate-your-site","h":"","p":81},{"i":84,"t":"Modify docusaurus.config.js to add support for the fr locale: docusaurus.config.js module.exports = { i18n: { defaultLocale: 'en', locales: ['en', 'fr'], }, };","s":"Configure i18n","u":"/tutorial-extras/translate-your-site","h":"#configure-i18n","p":81},{"i":86,"t":"Copy the docs/intro.md file to the i18n/fr folder: mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/ cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md Translate i18n/fr/docusaurus-plugin-content-docs/current/intro.md in French.","s":"Translate a doc","u":"/tutorial-extras/translate-your-site","h":"#translate-a-doc","p":81},{"i":88,"t":"Start your site on the French locale: npm run start -- --locale fr Your localized site is accessible at http://localhost:3000/fr/ and the Getting Started page is translated. caution In development, you can only use one locale at a same time.","s":"Start your localized site","u":"/tutorial-extras/translate-your-site","h":"#start-your-localized-site","p":81},{"i":90,"t":"To navigate seamlessly across languages, add a locale dropdown. Modify the docusaurus.config.js file: docusaurus.config.js module.exports = { themeConfig: { navbar: { items: [ { type: 'localeDropdown', }, ], }, }, }; The locale dropdown now appears in your navbar:","s":"Add a Locale Dropdown","u":"/tutorial-extras/translate-your-site","h":"#add-a-locale-dropdown","p":81},{"i":92,"t":"Build your site for a specific locale: npm run build -- --locale fr Or build your site to include all the locales at once: npm run build","s":"Build your localized site","u":"/tutorial-extras/translate-your-site","h":"#build-your-localized-site","p":81}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/2",[0,3.841,1,5.094,2,1.461,3,5.094,4,4.338,5,4.338]],["t/4",[2,1.402,6,3.686,7,1.879,8,2.427,9,2.427,10,4.888,11,4.888,12,4.888]],["t/6",[13,5.732,14,2.456,15,4.609,16,4.609,17,3.475,18,3.926,19,4.609,20,4.609,21,3.926,22,3.926]],["t/8",[2,1.269,8,1.55,9,1.55,17,2.355,22,2.66,23,1.794,24,1.45,25,5.136,26,3.767,27,2.127,28,3.123,29,1.55,30,2.196,31,4.212,32,1.664,33,3.123,34,3.123,35,2.66,36,2.127,37,3.123,38,3.123,39,3.767,40,3.123,41,2.66,42,3.123,43,2.66,44,2.355]],["t/10",[2,0.776,6,3.006,7,1.04,9,1.979,27,1.842,30,2.35,31,3.006,32,2.124,35,3.395,39,2.303,44,2.039,45,3.395,46,3.986,47,3.395,48,3.395,49,2.303,50,2.705,51,3.986,52,2.705,53,2.705,54,2.705,55,1.842,56,1.255,57,1.553,58,2.303,59,2.039,60,2.705,61,2.303,62,2.303,63,2.303,64,2.039,65,1.343,66,2.039,67,2.705,68,2.705,69,2.705]],["t/13",[29,2.165,30,2.165,56,2.024,70,2.323,71,4.36,72,3.714,73,4.36,74,3.288,75,2.97,76,2.165,77,4.36,78,3.288,79,2.504,80,3.288]],["t/15",[18,4.249,81,4.989,82,4.989,83,4.989,84,4.989,85,4.989,86,4.989]],["t/17",[87,3.433,88,2.924,89,3.433,90,4.025,91,4.025,92,3.433,93,3.218,94,3.563,95,4.025,96,3.563,97,3.433,98,3.433,99,3.433,100,3.433,101,2.138,102,3.433,103,3.433,104,3.433,105,3.433,106,1.172,107,3.433,108,3.433,109,3.433]],["t/19",[23,1.536,27,1.822,47,3.368,56,1.241,75,1.822,76,2.753,80,2.017,90,2.278,91,2.278,93,1.822,94,2.017,95,2.278,96,2.017,106,0.913,110,2.675,111,2.675,112,2.675,113,2.675,114,2.675,115,3.236,116,2.675,117,2.278,118,2.675,119,2.675,120,2.675,121,4.006,122,3.954,123,3.954,124,3.954,125,2.675,126,2.675,127,2.675,128,1.666,129,2.278,130,2.675,131,2.278]],["t/21",[8,0.793,59,1.205,63,1.361,75,2.297,76,2.921,101,1.644,115,3.216,128,0.995,132,1.598,133,0.918,134,1.361,135,2.64,136,1.598,137,2.872,138,1.361,139,3.372,140,1.598,141,1.598,142,2.64,143,2.64,144,2.64,145,2.248,146,3.975,147,1.361,148,1.361,149,1.361,150,1.361,151,2.248,152,3.372,153,1.598,154,1.598,155,1.598,156,2.64,157,1.598,158,1.088,159,2.64,160,1.361,161,1.598,162,2.64,163,1.598,164,1.598,165,1.598,166,1.598,167,1.361,168,1.361,169,1.088,170,1.598,171,1.598,172,1.598,173,1.205,174,1.598,175,1.361,176,1.598,177,1.598,178,1.361,179,1.361,180,0.995,181,1.598,182,1.598,183,1.088,184,2.64,185,1.598,186,1.598,187,1.361,188,1.598,189,1.598,190,1.361]],["t/23",[17,2.386,23,2.564,24,1.469,31,2.386,61,2.695,76,1.571,93,2.155,94,2.386,101,1.971,115,1.971,128,1.971,134,2.695,137,2.695,147,2.695,169,2.155,178,2.695,179,3.802,187,2.695,191,2.155,192,2.695,193,4.464,194,3.164,195,3.164,196,3.164,197,3.164,198,3.164,199,3.164,200,3.164,201,3.164,202,3.164,203,3.164,204,3.164]],["t/25",[23,1.173,29,1.598,43,1.74,44,1.54,74,2.427,76,1.598,79,3.138,158,1.391,173,2.427,205,2.043,206,1.74,207,1.74,208,2.427,209,1.74,210,3.218,211,2.043,212,2.043,213,3.407,214,2.043,215,1.74,216,3.391,217,2.043,218,2.043,219,2.043,220,2.741,221,2.043,222,1.54,223,1.272,224,2.043,225,2.043,226,2.043,227,2.043,228,2.043,229,2.043,230,2.043,231,1.74,232,2.043,233,1.74,234,2.043,235,2.043,236,1.74,237,2.043,238,2.043,239,1.54,240,2.043,241,2.043,242,2.043,243,1.74,244,1.74,245,2.043,246,2.043,247,2.043,248,2.043,249,1.54,250,2.043,251,3.218,252,2.043,253,1.54]],["t/27",[21,2.411,24,1.314,29,2.046,56,1.913,74,2.135,79,1.626,80,2.135,129,2.411,145,2.411,180,1.763,191,1.928,222,2.135,223,3.028,254,2.831,255,2.831,256,4.833,257,4.279,258,3.108,259,2.411,260,2.831,261,2.411,262,2.411,263,2.831,264,4.122,265,2.135,266,2.411,267,2.831,268,2.135,269,2.831,270,2.411]],["t/29",[8,1.285,24,1.202,29,2.539,76,2.95,79,2.65,146,2.205,158,1.763,173,1.952,175,2.205,180,1.612,208,1.952,213,1.952,215,2.205,216,2.205,223,1.612,231,2.205,236,2.205,244,2.205,249,1.952,259,2.205,270,2.205,271,2.589,272,2.589,273,2.589,274,2.589,275,2.589,276,2.589,277,2.589,278,1.952,279,2.589,280,2.205,281,2.589,282,2.589,283,2.589,284,2.589,285,2.205,286,3.859,287,2.589,288,2.589,289,2.589]],["t/31",[29,1.762,56,1.075,76,1.15,79,2.993,115,2.686,131,1.973,148,1.973,150,1.973,158,1.578,167,1.973,168,3.673,169,1.578,180,1.443,192,1.973,206,1.973,207,1.973,208,1.747,209,1.973,223,2.21,249,1.747,256,1.973,257,1.747,258,1.747,261,1.973,262,1.973,265,1.747,266,1.973,278,2.676,285,1.973,290,2.317,291,2.317,292,2.317,293,2.317,294,2.317,295,3.548,296,2.317,297,2.317,298,2.317,299,2.317,300,1.973,301,2.317,302,4.313,303,2.317,304,2.317,305,1.973,306,2.317,307,2.317,308,2.317,309,2.317]],["t/33",[29,2.572,75,2.68,76,1.954,78,2.967,79,3.534,101,2.451,115,2.451,128,2.451,169,2.68,213,2.967,220,3.351,278,2.967,280,3.351,310,3.935,311,3.935,312,3.935]],["t/35",[14,2.553,55,3.263,59,3.613,65,2.379,70,2.553,101,2.984,138,4.081,313,4.081,314,4.791]],["t/37",[2,1.228,7,1.647,8,2.126,70,2.916,106,1.462,183,2.917,315,1.988,316,1.647,317,4.127,318,3.648,319,2.282,320,2.917,321,3.648]],["t/39",[2,1.153,7,1.545,27,1.863,36,1.863,70,2.142,106,2.118,183,1.863,313,4.059,317,2.062,318,3.423,322,1.571,323,1.571,324,1.571,325,2.33,326,2.062,327,3.423,328,2.735,329,2.735,330,2.735,331,2.735,332,2.735,333,2.33,334,2.735,335,4.02,336,1.863,337,2.735,338,2.735,339,2.735,340,3.423,341,1.863,342,2.735]],["t/41",[2,1.425,4,3.147,5,3.147,14,1.969,26,3.147,48,3.147,88,3.147,268,2.786,300,3.147,340,3.147,343,3.695,344,3.695,345,3.147,346,3.695,347,4.231,348,3.147,349,3.695,350,3.147,351,3.695,352,3.695,353,3.695,354,3.695]],["t/43",[2,1.396,9,1.78,70,1.91,265,2.704,305,3.054,324,3.174,326,2.704,341,2.442,355,3.054,356,3.585,357,2.442,358,3.585,359,2.442,360,2.704,361,3.585,362,2.704,363,3.054,364,3.585,365,3.585,366,3.585,367,3.585,368,3.585,369,3.585]],["t/45",[2,1.273,7,1.707,65,2.78,222,3.348,257,3.348,370,4.769,371,3.782,372,4.44,373,3.782,374,4.44,375,4.44]],["t/47",[2,1.073,7,0.955,8,1.233,66,1.872,183,1.691,268,1.872,316,0.955,319,1.323,320,1.691,345,2.115,370,2.115,371,3.833,373,2.115,376,3.74,377,3.74,378,3.74,379,3.74,380,2.115,381,4.5,382,3.833,383,2.483,384,3.74,385,2.483,386,2.483,387,2.483,388,2.483,389,2.483,390,2.82,391,2.483,392,3.74,393,2.483,394,2.483,395,2.483,396,2.483,397,2.483,398,2.483,399,2.483,400,2.483,401,2.115,402,2.483,403,2.483,404,2.483]],["t/49",[7,1.59,65,2.054,72,3.523,106,2.025,315,1.92,316,1.59,324,2.376,405,3.119,406,4.137,407,4.137,408,4.137,409,4.137,410,4.137,411,4.137,412,4.137]],["t/51",[7,1.171,8,1.511,65,2.157,106,1.885,239,2.296,316,1.171,319,1.622,320,2.074,363,4.313,405,4.712,413,3.7,414,4.344,415,4.344,416,3.045,417,2.593,418,3.045,419,3.045,420,2.593,421,3.045,422,3.045,423,3.045,424,3.045,425,2.593]],["t/53",[7,1.513,8,1.954,65,3.055,106,1.343,315,2.968,316,1.513,319,2.096,320,2.68,413,4.412,425,3.351,426,4.412]],["t/55",[2,1.25,9,2.748,23,2.504,56,2.024,316,1.676,427,4.174,428,3.714,429,4.36,430,4.36,431,4.36,432,4.36,433,4.36]],["t/57",[9,2.288,23,2.647,30,2.288,32,2.456,56,2.896,316,1.772,323,2.647,427,3.475,434,3.926]],["t/58",[30,1.807,32,1.939,56,2.585,57,2.09,58,4.188,62,3.1,160,3.1,223,2.267,319,2.62,323,2.824,355,3.1,401,3.1,434,3.1,435,3.639,436,4.917,437,3.639,438,3.639,439,3.639,440,3.639]],["t/60",[2,1.461,133,2.925,253,3.841,315,2.364,441,5.094,442,5.094]],["t/62",[70,2.945,96,3.671,106,1.224,151,3.054,315,2.565,322,2.059,325,3.054,326,2.704,380,3.054,382,4.146,390,2.704,428,3.054,443,3.585,444,3.585,445,3.585,446,4.868,447,3.585,448,3.585,449,3.585]],["t/64",[0,4.199,7,2.141,24,1.689,65,2.441,133,2.09,243,3.1,315,1.689,316,1.399,390,2.744,426,3.1,450,3.1,451,3.639,452,4.188,453,3.1,454,5.569,455,3.639,456,3.639]],["t/66",[2,1.342,24,2.49,49,2.883,133,1.944,190,2.883,191,2.305,315,2.172,316,1.799,427,2.552,450,2.883,452,2.883,453,2.883,457,5.786,458,3.385,459,4.68,460,3.385,461,3.385,462,3.385,463,3.385,464,3.385,465,3.385]],["t/68",[41,3.054,106,2.232,133,2.059,149,3.054,239,3.671,315,1.664,420,4.146,466,3.054,467,3.054,468,3.585,469,3.585,470,4.868,471,4.868,472,4.868,473,3.585]],["t/70",[2,0.999,7,1.339,24,2.215,106,1.629,253,3.598,348,4.064,466,2.966,474,3.482,475,3.482,476,3.482,477,5.444,478,4.772,479,4.772,480,5.444,481,4.772,482,4.772]],["t/72",[2,0.691,24,1.118,70,1.283,106,2.195,180,1.5,315,1.118,327,2.051,347,2.051,405,1.816,417,2.051,467,3.763,483,2.409,484,2.409,485,2.409,486,2.409,487,2.409,488,2.409,489,4.418,490,5.302,491,3.655,492,2.409,493,2.409,494,2.409,495,2.409,496,2.409,497,2.409,498,2.409,499,2.409,500,2.409,501,2.409,502,2.409,503,2.409,504,2.409,505,2.409,506,2.409,507,2.409,508,2.409,509,2.409,510,2.409]],["t/74",[2,1.492,14,2.772,78,3.923,322,2.988,511,5.203]],["t/76",[2,0.971,7,1.301,14,2.858,29,1.68,30,1.68,32,1.803,117,2.883,191,2.305,319,1.803,322,3.323,323,1.944,512,6.074,513,3.385,514,2.883,515,2.883,516,3.385,517,3.385,518,3.385,519,3.385,520,3.385,521,3.385]],["t/78",[14,2.816,36,2.243,55,2.243,106,2.313,316,1.266,322,1.891,324,1.891,336,2.243,341,2.243,357,2.243,359,3.127,360,3.462,362,2.483,522,2.805,523,3.91,524,3.293,525,2.805]],["t/80",[14,2.366,66,3.348,317,3.348,321,3.782,322,2.55,323,2.55,333,3.782,515,3.782,526,4.44,527,4.44,528,5.599,529,4.44]],["t/82",[0,4.01,64,4.01,530,4.01,531,4.01]],["t/84",[57,3.007,106,2.195,133,2.297,324,2.297,336,2.724,350,3.407,357,2.724,359,3.566,532,3.948,533,4,534,5.236]],["t/86",[64,3.785,121,3.196,233,4.817,316,1.443,323,2.155,514,3.196,530,2.829,531,2.829,535,3.752,536,3.752,537,5.656,538,5.656,539,3.752,540,3.752,541,5.019]],["t/88",[6,4.232,9,2.466,24,1.715,30,1.834,32,1.969,45,3.147,57,3.447,65,1.834,93,2.516,128,2.301,530,2.786,531,2.786,532,2.786,542,3.695,543,3.695,544,3.695,545,3.695,546,3.695]],["t/90",[36,2.243,55,2.243,57,2.637,106,2.313,316,1.266,319,1.754,324,1.891,336,2.243,341,2.243,357,2.243,359,3.127,360,3.462,362,2.483,522,2.805,523,3.91,525,2.805,547,3.293,548,3.293]],["t/92",[9,2.657,30,2.657,32,2.851,56,2.912,57,3.407,258,3.119,532,3.119,549,4.137,550,4.137]]],"invertedIndex":[["",{"_index":106,"t":{"17":{"position":[[239,1]]},"19":{"position":[[426,1]]},"37":{"position":[[55,1]]},"39":{"position":[[186,1],[333,1],[335,1],[354,1],[374,1],[459,2],[462,2],[465,2]]},"49":{"position":[[89,1],[124,1],[166,1]]},"51":{"position":[[173,1],[182,1],[254,2],[257,1]]},"53":{"position":[[78,1]]},"62":{"position":[[180,2]]},"68":{"position":[[137,1],[146,1],[176,1],[178,1],[180,3],[245,1],[283,1]]},"70":{"position":[[114,3],[163,3]]},"72":{"position":[[127,1],[149,2],[152,1],[266,2],[281,2],[284,1],[349,3],[372,2],[439,1],[502,1],[529,1],[553,1]]},"78":{"position":[[138,1],[140,1],[155,1],[165,1],[174,1],[176,1],[207,2],[210,2],[213,2],[216,2],[219,2]]},"84":{"position":[[98,1],[100,1],[108,1],[154,2],[157,2]]},"90":{"position":[[138,1],[140,1],[155,1],[165,1],[174,1],[176,1],[202,2],[205,2],[208,2],[211,2],[214,2]]}}}],["02",{"_index":377,"t":{"47":{"position":[[27,2],[57,2]]}}}],["1",{"_index":389,"t":{"47":{"position":[[175,1]]}}}],["1.0",{"_index":512,"t":{"76":{"position":[[18,3],[71,3],[129,3],[194,3],[245,3]]}}}],["1.0/hello.md",{"_index":527,"t":{"80":{"position":[[89,12]]}}}],["1.65.0",{"_index":86,"t":{"15":{"position":[[55,7]]}}}],["10px",{"_index":498,"t":{"72":{"position":[[239,7]]}}}],["1318455074.cos.na",{"_index":102,"t":{"17":{"position":[[148,17]]}}}],["16.14",{"_index":15,"t":{"6":{"position":[[16,5]]}}}],["2",{"_index":517,"t":{"76":{"position":[[182,1]]}}}],["20.04,ubuntu22.04",{"_index":84,"t":{"15":{"position":[[21,17]]}}}],["20.04_cpu.sh",{"_index":105,"t":{"17":{"position":[[226,12]]}}}],["20px",{"_index":495,"t":{"72":{"position":[[207,7]]}}}],["28",{"_index":378,"t":{"47":{"position":[[30,2],[60,2]]}}}],["3",{"_index":332,"t":{"39":{"position":[[180,1]]}}}],["32",{"_index":152,"t":{"21":{"position":[[249,2],[289,2],[377,3]]}}}],["4",{"_index":143,"t":{"21":{"position":[[131,2],[155,1]]}}}],["5",{"_index":4,"t":{"2":{"position":[[39,1]]},"41":{"position":[[134,1]]}}}],["abov",{"_index":16,"t":{"6":{"position":[[25,6]]}}}],["absolut",{"_index":458,"t":{"66":{"position":[[51,8]]}}}],["access",{"_index":93,"t":{"17":{"position":[[86,6],[257,6]]},"19":{"position":[[329,6]]},"23":{"position":[[112,6]]},"88":{"position":[[90,10]]}}}],["accommod",{"_index":289,"t":{"29":{"position":[[502,11]]}}}],["account",{"_index":92,"t":{"17":{"position":[[78,7]]}}}],["account'",{"_index":194,"t":{"23":{"position":[[95,9]]}}}],["account_access_key",{"_index":90,"t":{"17":{"position":[[27,20],[268,20]]},"19":{"position":[[230,20]]}}}],["achiev",{"_index":219,"t":{"25":{"position":[[199,7]]}}}],["action",{"_index":482,"t":{"70":{"position":[[143,6],[221,6]]}}}],["ad",{"_index":28,"t":{"8":{"position":[[102,5]]}}}],["add",{"_index":324,"t":{"39":{"position":[[65,3]]},"43":{"position":[[89,3],[134,3],[165,3]]},"49":{"position":[[0,3]]},"78":{"position":[[40,3]]},"84":{"position":[[31,3]]},"90":{"position":[[41,3]]}}}],["addit",{"_index":442,"t":{"60":{"position":[[39,10]]}}}],["address",{"_index":131,"t":{"19":{"position":[[458,7]]},"31":{"position":[[202,9]]}}}],["admonit",{"_index":475,"t":{"70":{"position":[[42,11]]}}}],["adopt",{"_index":246,"t":{"25":{"position":[[621,8]]}}}],["aim",{"_index":167,"t":{"21":{"position":[[495,4]]},"31":{"position":[[171,3]]}}}],["alert(`y",{"_index":502,"t":{"72":{"position":[[286,10]]}}}],["algorithm",{"_index":259,"t":{"27":{"position":[[99,10]]},"29":{"position":[[435,10]]}}}],["allow",{"_index":485,"t":{"72":{"position":[[53,6]]}}}],["alpha",{"_index":142,"t":{"21":{"position":[[124,6],[149,5]]}}}],["amount",{"_index":154,"t":{"21":{"position":[[315,6]]}}}],["anyth",{"_index":351,"t":{"41":{"position":[[186,8]]}}}],["anywher",{"_index":437,"t":{"58":{"position":[[151,8]]}}}],["appear",{"_index":525,"t":{"78":{"position":[[248,7]]},"90":{"position":[[241,7]]}}}],["applic",{"_index":209,"t":{"25":{"position":[[58,12]]},"31":{"position":[[127,12]]}}}],["around",{"_index":403,"t":{"47":{"position":[[474,6]]}}}],["aspect",{"_index":230,"t":{"25":{"position":[[346,6]]}}}],["author",{"_index":383,"t":{"47":{"position":[[114,8]]}}}],["automat",{"_index":27,"t":{"8":{"position":[[85,13]]},"10":{"position":[[432,13]]},"19":{"position":[[401,13]]},"39":{"position":[[11,13]]}}}],["avail",{"_index":320,"t":{"37":{"position":[[127,9]]},"47":{"position":[[541,9]]},"51":{"position":[[277,9]]},"53":{"position":[[139,9]]}}}],["avoid",{"_index":279,"t":{"29":{"position":[[256,5]]}}}],["awesom",{"_index":478,"t":{"70":{"position":[[91,7],[183,7]]}}}],["backgroundcolor",{"_index":493,"t":{"72":{"position":[[169,16]]}}}],["balanc",{"_index":306,"t":{"31":{"position":[[470,7]]}}}],["bar",{"_index":365,"t":{"43":{"position":[[178,3]]}}}],["base",{"_index":147,"t":{"21":{"position":[[191,5]]},"23":{"position":[[283,5]]}}}],["basi",{"_index":204,"t":{"23":{"position":[[335,6]]}}}],["basic",{"_index":344,"t":{"41":{"position":[[26,6]]}}}],["basics/cr",{"_index":342,"t":{"39":{"position":[[431,13]]}}}],["be",{"_index":176,"t":{"21":{"position":[[650,5]]}}}],["behalf",{"_index":186,"t":{"21":{"position":[[804,6]]}}}],["below",{"_index":228,"t":{"25":{"position":[[333,5]]}}}],["between",{"_index":295,"t":{"31":{"position":[[115,7],[478,7]]}}}],["bid",{"_index":276,"t":{"29":{"position":[[219,3]]}}}],["block",{"_index":149,"t":{"21":{"position":[[215,6]]},"68":{"position":[[14,6]]}}}],["blog",{"_index":370,"t":{"45":{"position":[[35,4],[57,4]]},"47":{"position":[[524,4]]}}}],["blog/2021",{"_index":376,"t":{"47":{"position":[[17,9],[47,9]]}}}],["blue",{"_index":510,"t":{"72":{"position":[[548,4]]}}}],["bluefacebook",{"_index":506,"t":{"72":{"position":[[460,24]]}}}],["color=\"#25c2a0\">docusauru",{"_index":504,"t":{"72":{"position":[[394,26]]}}}],["come",{"_index":145,"t":{"21":{"position":[[166,5],[991,7]]},"27":{"position":[[177,4]]}}}],["command",{"_index":31,"t":{"8":{"position":[[142,8],[215,7],[228,7],[324,7]]},"10":{"position":[[63,7],[234,7]]},"23":{"position":[[135,7]]}}}],["commun",{"_index":369,"t":{"43":{"position":[[258,9]]}}}],["comparison",{"_index":226,"t":{"25":{"position":[[306,10]]}}}],["compet",{"_index":165,"t":{"21":{"position":[[455,7]]}}}],["complex",{"_index":240,"t":{"25":{"position":[[512,7]]}}}],["compon",{"_index":486,"t":{"72":{"position":[[76,10]]}}}],["comput",{"_index":213,"t":{"25":{"position":[[122,11],[376,11],[433,11],[572,11]]},"29":{"position":[[272,12]]},"33":{"position":[[171,9]]}}}],["configur",{"_index":358,"t":{"43":{"position":[[49,13]]}}}],["congratul",{"_index":399,"t":{"47":{"position":[[408,16]]}}}],["connect",{"_index":101,"t":{"17":{"position":[[140,7]]},"21":{"position":[[826,9],[887,7]]},"23":{"position":[[166,7]]},"33":{"position":[[88,7]]},"35":{"position":[[30,9]]}}}],["consider",{"_index":254,"t":{"27":{"position":[[42,12]]}}}],["const",{"_index":488,"t":{"72":{"position":[[111,5]]}}}],["content",{"_index":233,"t":{"25":{"position":[[445,7]]},"86":{"position":[[86,7],[151,7],[217,7]]}}}],["contest",{"_index":166,"t":{"21":{"position":[[479,8]]}}}],["copi",{"_index":514,"t":{"76":{"position":[[94,6]]},"86":{"position":[[0,4]]}}}],["cost",{"_index":223,"t":{"25":{"position":[[275,4]]},"27":{"position":[[151,5],[432,5],[458,4]]},"29":{"position":[[166,4]]},"31":{"position":[[394,6],[524,4]]},"58":{"position":[[191,4]]}}}],["cp",{"_index":540,"t":{"86":{"position":[[108,2]]}}}],["creat",{"_index":7,"t":{"4":{"position":[[15,8]]},"10":{"position":[[147,7]]},"37":{"position":[[0,6]]},"39":{"position":[[25,7],[259,6]]},"45":{"position":[[11,7]]},"47":{"position":[[0,6]]},"49":{"position":[[44,6]]},"51":{"position":[[0,6]]},"53":{"position":[[0,6]]},"64":{"position":[[95,7],[145,7],[207,6]]},"70":{"position":[[35,6]]},"76":{"position":[[154,8]]}}}],["creator",{"_index":388,"t":{"47":{"position":[[153,7]]}}}],["css",{"_index":433,"t":{"55":{"position":[[120,3]]}}}],["curl",{"_index":97,"t":{"17":{"position":[[112,4]]}}}],["current",{"_index":191,"t":{"23":{"position":[[0,10]]},"27":{"position":[[0,10]]},"66":{"position":[[220,7]]},"76":{"position":[[254,7]]}}}],["cursor",{"_index":499,"t":{"72":{"position":[[247,7]]}}}],["custom",{"_index":326,"t":{"39":{"position":[[81,9]]},"43":{"position":[[140,6]]},"62":{"position":[[165,6]]}}}],["daili",{"_index":203,"t":{"23":{"position":[[329,5]]}}}],["danger",{"_index":480,"t":{"70":{"position":[[118,9],[153,9],[231,9]]}}}],["decentr",{"_index":220,"t":{"25":{"position":[[207,17],[396,16]]},"33":{"position":[[153,13]]}}}],["default",{"_index":418,"t":{"51":{"position":[[142,7]]}}}],["defaultlocal",{"_index":533,"t":{"84":{"position":[[110,14]]}}}],["depend",{"_index":22,"t":{"6":{"position":[[112,13]]},"8":{"position":[[360,12]]}}}],["deploy",{"_index":436,"t":{"58":{"position":[[120,6],[206,10]]}}}],["descript",{"_index":446,"t":{"62":{"position":[[118,12],[143,11]]}}}],["design",{"_index":265,"t":{"27":{"position":[[273,6]]},"31":{"position":[[405,6]]},"43":{"position":[[147,6]]}}}],["determinist",{"_index":242,"t":{"25":{"position":[[549,13]]}}}],["develop",{"_index":45,"t":{"10":{"position":[[8,11],[294,11]]},"88":{"position":[[185,12]]}}}],["devic",{"_index":95,"t":{"17":{"position":[[101,6],[291,6]]},"19":{"position":[[355,6]]}}}],["device_id",{"_index":91,"t":{"17":{"position":[[52,11],[301,11]]},"19":{"position":[[254,11]]}}}],["differ",{"_index":215,"t":{"25":{"position":[[143,9]]},"29":{"position":[[425,9]]}}}],["difficult",{"_index":288,"t":{"29":{"position":[[477,9]]}}}],["digit",{"_index":292,"t":{"31":{"position":[[65,7]]}}}],["directori",{"_index":49,"t":{"10":{"position":[[83,9]]},"66":{"position":[[100,9]]}}}],["discov",{"_index":1,"t":{"2":{"position":[[6,8]]}}}],["display",{"_index":69,"t":{"10":{"position":[[450,8]]}}}],["distribut",{"_index":150,"t":{"21":{"position":[[230,11]]},"31":{"position":[[588,12]]}}}],["doc",{"_index":322,"t":{"39":{"position":[[52,4]]},"62":{"position":[[86,3]]},"74":{"position":[[48,5]]},"76":{"position":[[79,4],[168,4],[249,4],[327,4]]},"78":{"position":[[226,4]]},"80":{"position":[[33,4]]}}}],["doc.md",{"_index":445,"t":{"62":{"position":[[68,6]]}}}],["docs/curr",{"_index":539,"t":{"86":{"position":[[94,13]]}}}],["docs/current/intro.md",{"_index":541,"t":{"86":{"position":[[159,21],[225,21]]}}}],["docs/hello.md",{"_index":317,"t":{"37":{"position":[[26,14],[41,13]]},"39":{"position":[[123,13]]},"80":{"position":[[143,13]]}}}],["docs/intro.md",{"_index":64,"t":{"10":{"position":[[368,13]]},"82":{"position":[[16,13]]},"86":{"position":[[9,13],[111,13]]}}}],["docs:vers",{"_index":513,"t":{"76":{"position":[[58,12]]}}}],["docsversiondropdown",{"_index":524,"t":{"78":{"position":[[184,22]]}}}],["document",{"_index":70,"t":{"13":{"position":[[5,8]]},"35":{"position":[[0,9]]},"37":{"position":[[93,11],[111,8]]},"39":{"position":[[224,11],[447,11]]},"43":{"position":[[18,13]]},"62":{"position":[[9,9],[103,8],[134,8]]},"72":{"position":[[18,13]]}}}],["docusauru",{"_index":2,"t":{"2":{"position":[[15,10]]},"4":{"position":[[43,10]]},"8":{"position":[[15,10],[389,11]]},"10":{"position":[[155,10]]},"37":{"position":[[82,10]]},"39":{"position":[[0,10],[213,10]]},"41":{"position":[[36,10],[94,10]]},"43":{"position":[[207,10],[247,10]]},"45":{"position":[[0,10]]},"47":{"position":[[164,10],[289,10]]},"55":{"position":[[0,10]]},"60":{"position":[[0,10]]},"66":{"position":[[139,12],[329,12]]},"70":{"position":[[0,10]]},"72":{"position":[[512,10]]},"74":{"position":[[0,10]]},"76":{"position":[[47,10]]}}}],["docusaurus!hello",{"_index":471,"t":{"68":{"position":[[148,10],[254,10]]}}}],["h1>mi",{"_index":421,"t":{"51":{"position":[[193,6]]}}}],["hard",{"_index":161,"t":{"21":{"position":[[405,4]]}}}],["hasn't",{"_index":282,"t":{"29":{"position":[[332,6]]}}}],["head",{"_index":447,"t":{"62":{"position":[[192,7]]}}}],["hello",{"_index":318,"t":{"37":{"position":[[57,5]]},"39":{"position":[[188,5],[365,8]]}}}],["hellodocusauru",{"_index":470,"t":{"68":{"position":[[119,17],[227,17]]}}}],["hi",{"_index":330,"t":{"39":{"position":[[156,5]]}}}],["high",{"_index":298,"t":{"31":{"position":[[336,4]]}}}],["higher",{"_index":308,"t":{"31":{"position":[[546,6]]}}}],["highlight",{"_index":467,"t":{"68":{"position":[[47,13]]},"72":{"position":[[117,9],[383,10],[449,10]]}}}],["html",{"_index":431,"t":{"55":{"position":[[99,5]]}}}],["http://localhost:3000",{"_index":62,"t":{"10":{"position":[[339,23]]},"58":{"position":[[84,23]]}}}],["http://localhost:3000/blog/greet",{"_index":404,"t":{"47":{"position":[[554,37]]}}}],["http://localhost:3000/doc",{"_index":518,"t":{"76":{"position":[[201,27]]}}}],["http://localhost:3000/docs/hello",{"_index":321,"t":{"37":{"position":[[140,33]]},"80":{"position":[[110,32]]}}}],["http://localhost:3000/docs/next",{"_index":519,"t":{"76":{"position":[[265,32]]}}}],["http://localhost:3000/docs/next/hello",{"_index":529,"t":{"80":{"position":[[165,37]]}}}],["http://localhost:3000/fr",{"_index":542,"t":{"88":{"position":[[104,25]]}}}],["http://localhost:3000/mi",{"_index":425,"t":{"51":{"position":[[290,24]]},"53":{"position":[[152,24]]}}}],["https://github.com/aoraki",{"_index":112,"t":{"19":{"position":[[10,25]]}}}],["https://github.com/joelmarcey",{"_index":391,"t":{"47":{"position":[[182,29]]}}}],["https://github.com/joelmarcey.png",{"_index":393,"t":{"47":{"position":[[223,33]]}}}],["https://github.com/slorber.png",{"_index":398,"t":{"47":{"position":[[355,30]]}}}],["https://sebastienlorber.com",{"_index":397,"t":{"47":{"position":[[316,27]]}}}],["https://storage.googleapis.com/zkevm",{"_index":119,"t":{"19":{"position":[[103,36]]}}}],["https://zkpool",{"_index":100,"t":{"17":{"position":[[125,14]]}}}],["https://zkpool.io",{"_index":193,"t":{"23":{"position":[[58,18],[193,17]]}}}],["i18n",{"_index":350,"t":{"41":{"position":[[180,5]]},"84":{"position":[[102,5]]}}}],["i18n/fr",{"_index":535,"t":{"86":{"position":[[35,7]]}}}],["i18n/fr/docusauru",{"_index":537,"t":{"86":{"position":[[60,18],[125,18],[191,18]]}}}],["id",{"_index":96,"t":{"17":{"position":[[108,3],[298,2]]},"19":{"position":[[362,2]]},"62":{"position":[[79,3],[90,2]]}}}],["ideal",{"_index":296,"t":{"31":{"position":[[254,5]]}}}],["imag",{"_index":457,"t":{"66":{"position":[[17,6],[79,6],[197,6],[282,6]]}}}],["image_url",{"_index":392,"t":{"47":{"position":[[212,10],[344,10]]}}}],["immedi",{"_index":11,"t":{"4":{"position":[[54,11]]}}}],["import",{"_index":415,"t":{"51":{"position":[[72,6],[99,6]]}}}],["includ",{"_index":258,"t":{"27":{"position":[[89,9],[221,8]]},"31":{"position":[[433,8]]},"92":{"position":[[90,7]]}}}],["index",{"_index":372,"t":{"45":{"position":[[62,5]]}}}],["individu",{"_index":136,"t":{"21":{"position":[[50,10]]}}}],["infrastructur",{"_index":260,"t":{"27":{"position":[[114,15]]}}}],["init",{"_index":33,"t":{"8":{"position":[[155,4]]}}}],["initi",{"_index":346,"t":{"41":{"position":[[76,7]]}}}],["insid",{"_index":487,"t":{"72":{"position":[[87,6]]}}}],["inspir",{"_index":366,"t":{"43":{"position":[[187,12]]}}}],["instal",{"_index":17,"t":{"6":{"position":[[37,10]]},"8":{"position":[[337,8]]},"23":{"position":[[143,12]]}}}],["integr",{"_index":40,"t":{"8":{"position":[[279,10]]}}}],["interact",{"_index":484,"t":{"72":{"position":[[37,11]]}}}],["interv",{"_index":201,"t":{"23":{"position":[[302,9]]}}}],["intro",{"_index":338,"t":{"39":{"position":[[356,8]]}}}],["involv",{"_index":368,"t":{"43":{"position":[[231,8]]}}}],["it'",{"_index":159,"t":{"21":{"position":[[395,4],[986,4]]}}}],["item",{"_index":341,"t":{"39":{"position":[[413,6]]},"43":{"position":[[111,5]]},"78":{"position":[[167,6]]},"90":{"position":[[167,6]]}}}],["itself",{"_index":185,"t":{"21":{"position":[[794,6]]}}}],["jamstack",{"_index":429,"t":{"55":{"position":[[51,10]]}}}],["javascript",{"_index":432,"t":{"55":{"position":[[105,10]]}}}],["joel",{"_index":385,"t":{"47":{"position":[[131,4]]}}}],["join",{"_index":135,"t":{"21":{"position":[[39,4],[748,4]]}}}],["jsx",{"_index":468,"t":{"68":{"position":[[61,6]]}}}],["k",{"_index":123,"t":{"19":{"position":[[228,1],[315,2]]}}}],["keep",{"_index":261,"t":{"27":{"position":[[136,7]]},"31":{"position":[[575,4]]}}}],["key",{"_index":94,"t":{"17":{"position":[[93,3],[264,3]]},"19":{"position":[[336,3]]},"23":{"position":[[119,3]]}}}],["keys/kzg_bn254_21.sr",{"_index":120,"t":{"19":{"position":[[149,21]]}}}],["knowledg",{"_index":207,"t":{"25":{"position":[[41,9]]},"31":{"position":[[37,9]]}}}],["l",{"_index":99,"t":{"17":{"position":[[123,1]]}}}],["l3",{"_index":141,"t":{"21":{"position":[[121,2]]}}}],["label",{"_index":327,"t":{"39":{"position":[[103,5],[394,6]]},"72":{"position":[[329,5]]}}}],["labs/zkpool",{"_index":113,"t":{"19":{"position":[[36,11]]}}}],["languag",{"_index":547,"t":{"90":{"position":[[30,10]]}}}],["larg",{"_index":234,"t":{"25":{"position":[[455,5]]}}}],["layout",{"_index":363,"t":{"43":{"position":[[158,6]]},"51":{"position":[[106,6],[184,8],[244,9]]}}}],["learn",{"_index":343,"t":{"41":{"position":[[14,7]]}}}],["less",{"_index":3,"t":{"2":{"position":[[29,4]]}}}],["let'",{"_index":0,"t":{"2":{"position":[[0,5]]},"64":{"position":[[78,5],[128,5],[190,5]]},"82":{"position":[[0,5]]}}}],["line",{"_index":67,"t":{"10":{"position":[[408,6]]}}}],["link",{"_index":451,"t":{"64":{"position":[[17,5]]}}}],["links](./hello.md",{"_index":449,"t":{"62":{"position":[[219,19]]}}}],["local",{"_index":57,"t":{"10":{"position":[[262,7]]},"58":{"position":[[27,8]]},"84":{"position":[[54,7],[131,8]]},"88":{"position":[[30,7],[57,6],[72,9],[219,6]]},"90":{"position":[[47,6],[221,6]]},"92":{"position":[[31,7],[58,6],[106,7]]}}}],["localedropdown",{"_index":548,"t":{"90":{"position":[[184,17]]}}}],["localhost:3000",{"_index":408,"t":{"49":{"position":[[91,15]]}}}],["localhost:3000/foo",{"_index":410,"t":{"49":{"position":[[126,18]]}}}],["localhost:3000/foo/bar",{"_index":412,"t":{"49":{"position":[[168,22]]}}}],["login",{"_index":197,"t":{"23":{"position":[[184,5]]}}}],["logo](./img/docusaurus.png",{"_index":465,"t":{"66":{"position":[[342,27]]}}}],["logo](/img/docusaurus.png",{"_index":461,"t":{"66":{"position":[[152,26]]}}}],["look",{"_index":349,"t":{"41":{"position":[[157,4]]}}}],["lorber",{"_index":395,"t":{"47":{"position":[[275,6]]}}}],["low",{"_index":262,"t":{"27":{"position":[[147,3]]},"31":{"position":[[520,3]]}}}],["machin",{"_index":218,"t":{"25":{"position":[[187,8]]}}}],["made",{"_index":345,"t":{"41":{"position":[[51,4]]},"47":{"position":[[434,4]]}}}],["maintain",{"_index":396,"t":{"47":{"position":[[300,10]]}}}],["make",{"_index":180,"t":{"21":{"position":[[712,5]]},"27":{"position":[[35,4]]},"29":{"position":[[467,6]]},"31":{"position":[[27,4]]},"72":{"position":[[8,4]]}}}],["manag",{"_index":511,"t":{"74":{"position":[[15,6]]}}}],["mani",{"_index":217,"t":{"25":{"position":[[182,4]]}}}],["marcey",{"_index":386,"t":{"47":{"position":[[136,6]]}}}],["markdown",{"_index":315,"t":{"37":{"position":[[9,8]]},"49":{"position":[[4,8]]},"53":{"position":[[30,8],[61,8],[83,8],[107,8],[177,8]]},"60":{"position":[[20,8]]},"62":{"position":[[0,8],[183,8],[200,8]]},"64":{"position":[[8,8]]},"66":{"position":[[8,8],[302,8]]},"68":{"position":[[0,8]]},"72":{"position":[[94,9]]}}}],["mathemat",{"_index":241,"t":{"25":{"position":[[520,12]]}}}],["matter",{"_index":444,"t":{"62":{"position":[[57,7]]}}}],["mdx",{"_index":483,"t":{"72":{"position":[[0,3]]}}}],["meet",{"_index":271,"t":{"29":{"position":[[25,4]]}}}],["metadata",{"_index":325,"t":{"39":{"position":[[69,8]]},"62":{"position":[[24,8]]}}}],["mileston",{"_index":310,"t":{"33":{"position":[[35,11]]}}}],["miner",{"_index":231,"t":{"25":{"position":[[357,6]]},"29":{"position":[[65,7]]}}}],["minim",{"_index":174,"t":{"21":{"position":[[628,8]]}}}],["mininum",{"_index":157,"t":{"21":{"position":[[368,8]]}}}],["minut",{"_index":5,"t":{"2":{"position":[[41,8]]},"41":{"position":[[141,8]]}}}],["mission",{"_index":291,"t":{"31":{"position":[[13,7]]}}}],["mkdir",{"_index":536,"t":{"86":{"position":[[51,5]]}}}],["modifi",{"_index":357,"t":{"43":{"position":[[32,6]]},"78":{"position":[[64,6]]},"84":{"position":[[0,6]]},"90":{"position":[[64,6]]}}}],["module.export",{"_index":336,"t":{"39":{"position":[[318,14]]},"78":{"position":[[123,14]]},"84":{"position":[[83,14]]},"90":{"position":[[123,14]]}}}],["moment",{"_index":132,"t":{"21":{"position":[[14,6]]}}}],["more",{"_index":347,"t":{"41":{"position":[[114,4],[136,4]]},"72":{"position":[[32,4]]}}}],["much",{"_index":268,"t":{"27":{"position":[[403,4]]},"41":{"position":[[109,4]]},"47":{"position":[[503,4]]}}}],["multipl",{"_index":78,"t":{"13":{"position":[[85,8]]},"33":{"position":[[96,8]]},"74":{"position":[[22,8]]}}}],["myreactpag",{"_index":419,"t":{"51":{"position":[[159,13]]}}}],["name",{"_index":384,"t":{"47":{"position":[[125,5],[259,5]]}}}],["navbar",{"_index":360,"t":{"43":{"position":[[93,6]]},"78":{"position":[[157,7],[264,7]]},"90":{"position":[[157,7],[257,7]]}}}],["navig",{"_index":55,"t":{"10":{"position":[[187,8]]},"35":{"position":[[73,10]]},"78":{"position":[[3,8]]},"90":{"position":[[3,8]]}}}],["necessari",{"_index":43,"t":{"8":{"position":[[350,9]]},"25":{"position":[[595,9]]}}}],["need",{"_index":44,"t":{"8":{"position":[[377,4]]},"10":{"position":[[179,4]]},"25":{"position":[[260,6]]}}}],["new",{"_index":8,"t":{"4":{"position":[[26,3]]},"8":{"position":[[11,3]]},"21":{"position":[[179,3]]},"29":{"position":[[35,3]]},"37":{"position":[[107,3]]},"47":{"position":[[520,3]]},"51":{"position":[[261,3]]},"53":{"position":[[123,3]]}}}],["newli",{"_index":53,"t":{"10":{"position":[[141,5]]}}}],["node.j",{"_index":13,"t":{"6":{"position":[[0,7],[48,8]]}}}],["note",{"_index":199,"t":{"23":{"position":[[250,5]]}}}],["notic",{"_index":87,"t":{"17":{"position":[[0,7]]}}}],["now",{"_index":319,"t":{"37":{"position":[[123,3]]},"47":{"position":[[537,3]]},"51":{"position":[[273,3]]},"53":{"position":[[135,3]]},"58":{"position":[[70,3],[116,3]]},"76":{"position":[[173,3]]},"90":{"position":[[237,3]]}}}],["npm",{"_index":32,"t":{"8":{"position":[[151,3]]},"10":{"position":[[42,3],[220,3]]},"57":{"position":[[32,3]]},"58":{"position":[[36,3]]},"76":{"position":[[39,3]]},"88":{"position":[[38,3]]},"92":{"position":[[39,3],[123,3]]}}}],["number",{"_index":235,"t":{"25":{"position":[[461,6]]}}}],["offer",{"_index":300,"t":{"31":{"position":[[365,6]]},"41":{"position":[[122,6]]}}}],["offici",{"_index":356,"t":{"43":{"position":[[9,8]]}}}],["on",{"_index":128,"t":{"19":{"position":[[397,3]]},"21":{"position":[[274,3]]},"23":{"position":[[131,3]]},"33":{"position":[[72,3]]},"88":{"position":[[215,3]]}}}],["onc",{"_index":550,"t":{"92":{"position":[[117,5]]}}}],["onclick",{"_index":501,"t":{"72":{"position":[[269,11]]}}}],["open",{"_index":63,"t":{"10":{"position":[[363,4]]},"21":{"position":[[857,4]]}}}],["oper",{"_index":173,"t":{"21":{"position":[[616,8]]},"25":{"position":[[533,10],[716,10]]},"29":{"position":[[15,9]]}}}],["optim",{"_index":267,"t":{"27":{"position":[[388,10]]}}}],["option",{"_index":479,"t":{"70":{"position":[[107,6],[199,6]]}}}],["optional,program",{"_index":127,"t":{"19":{"position":[[365,17]]}}}],["order",{"_index":52,"t":{"10":{"position":[[117,5]]}}}],["os",{"_index":82,"t":{"15":{"position":[[10,2]]}}}],["overal",{"_index":269,"t":{"27":{"position":[[450,7]]}}}],["p",{"_index":121,"t":{"19":{"position":[[172,1],[267,1],[429,2]]},"86":{"position":[[58,1]]}}}],["p>thi",{"_index":423,"t":{"51":{"position":[[216,7]]}}}],["pad",{"_index":497,"t":{"72":{"position":[[230,8]]}}}],["page",{"_index":65,"t":{"10":{"position":[[388,5]]},"35":{"position":[[24,5]]},"45":{"position":[[21,4],[68,5]]},"49":{"position":[[64,5]]},"51":{"position":[[265,4],[321,5]]},"53":{"position":[[92,4],[116,4],[127,4],[186,5]]},"64":{"position":[[121,6],[216,5]]},"88":{"position":[[154,4]]}}}],["page.j",{"_index":414,"t":{"51":{"position":[[36,8],[64,7]]}}}],["page.md",{"_index":426,"t":{"53":{"position":[[39,8],[70,7]]},"64":{"position":[[172,9]]}}}],["page Search the documentation - +

Search the documentation

- + \ No newline at end of file diff --git a/tutorial-basics/congratulations/index.html b/tutorial-basics/congratulations/index.html index a2c1c4c..93e3c08 100644 --- a/tutorial-basics/congratulations/index.html +++ b/tutorial-basics/congratulations/index.html @@ -4,13 +4,13 @@ Congratulations! | ZKPool Doc - +

Congratulations!

You have just learned the basics of Docusaurus and made some changes to the initial template.

Docusaurus has much more to offer!

Have 5 more minutes? Take a look at versioning and i18n.

Anything unclear or buggy in this tutorial? Please report it!

What's next?

- + \ No newline at end of file diff --git a/tutorial-basics/create-a-blog-post/index.html b/tutorial-basics/create-a-blog-post/index.html index 8d9fef4..66dcc7f 100644 --- a/tutorial-basics/create-a-blog-post/index.html +++ b/tutorial-basics/create-a-blog-post/index.html @@ -4,13 +4,13 @@ Create a Blog Post | ZKPool Doc - +

Create a Blog Post

Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...

Create your first Post

Create a file at blog/2021-02-28-greetings.md:

blog/2021-02-28-greetings.md
---
slug: greetings
title: Greetings!
authors:
- name: Joel Marcey
title: Co-creator of Docusaurus 1
url: https://github.com/JoelMarcey
image_url: https://github.com/JoelMarcey.png
- name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
tags: [greetings]
---

Congratulations, you have made your first post!

Feel free to play around and edit this post as much you like.

A new blog post is now available at http://localhost:3000/blog/greetings.

- + \ No newline at end of file diff --git a/tutorial-basics/create-a-document/index.html b/tutorial-basics/create-a-document/index.html index 6dca50b..01d3438 100644 --- a/tutorial-basics/create-a-document/index.html +++ b/tutorial-basics/create-a-document/index.html @@ -4,13 +4,13 @@ Create a Document | ZKPool Doc - +

Create a Document

Documents are groups of pages connected through:

  • a sidebar
  • previous/next navigation
  • versioning

Create your first Doc

Create a Markdown file at docs/hello.md:

docs/hello.md
# Hello

This is my **first Docusaurus document**!

A new document is now available at http://localhost:3000/docs/hello.

Configure the Sidebar

Docusaurus automatically creates a sidebar from the docs folder.

Add metadata to customize the sidebar label and position:

docs/hello.md
---
sidebar_label: 'Hi!'
sidebar_position: 3
---

# Hello

This is my **first Docusaurus document**!

It is also possible to create your sidebar explicitly in sidebars.js:

sidebars.js
module.exports = {
tutorialSidebar: [
'intro',
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
};
- + \ No newline at end of file diff --git a/tutorial-basics/create-a-page/index.html b/tutorial-basics/create-a-page/index.html index 8d079d6..c48df7f 100644 --- a/tutorial-basics/create-a-page/index.html +++ b/tutorial-basics/create-a-page/index.html @@ -4,13 +4,13 @@ Create a Page | ZKPool Doc - +

Create a Page

Add Markdown or React files to src/pages to create a standalone page:

  • src/pages/index.jslocalhost:3000/
  • src/pages/foo.mdlocalhost:3000/foo
  • src/pages/foo/bar.jslocalhost:3000/foo/bar

Create your first React Page

Create a file at src/pages/my-react-page.js:

src/pages/my-react-page.js
import React from 'react';
import Layout from '@theme/Layout';

export default function MyReactPage() {
return (
<Layout>
<h1>My React page</h1>
<p>This is a React page</p>
</Layout>
);
}

A new page is now available at http://localhost:3000/my-react-page.

Create your first Markdown Page

Create a file at src/pages/my-markdown-page.md:

src/pages/my-markdown-page.md
# My Markdown page

This is a Markdown page

A new page is now available at http://localhost:3000/my-markdown-page.

- + \ No newline at end of file diff --git a/tutorial-basics/deploy-your-site/index.html b/tutorial-basics/deploy-your-site/index.html index b3f9404..922dc37 100644 --- a/tutorial-basics/deploy-your-site/index.html +++ b/tutorial-basics/deploy-your-site/index.html @@ -4,13 +4,13 @@ Deploy your site | ZKPool Doc - +

Deploy your site

Docusaurus is a static-site-generator (also called Jamstack).

It builds your site as simple static HTML, JavaScript and CSS files.

Build your site

Build your site for production:

npm run build

The static files are generated in the build folder.

Deploy your site

Test your production build locally:

npm run serve

The build folder is now served at http://localhost:3000/.

You can now deploy the build folder almost anywhere easily, for free or very small cost (read the Deployment Guide).

- + \ No newline at end of file diff --git a/tutorial-basics/markdown-features/index.html b/tutorial-basics/markdown-features/index.html index 81b9fe2..f4b0d32 100644 --- a/tutorial-basics/markdown-features/index.html +++ b/tutorial-basics/markdown-features/index.html @@ -4,13 +4,13 @@ Markdown Features | ZKPool Doc - +

Markdown Features

Docusaurus supports Markdown and a few additional features.

Front Matter

Markdown documents have metadata at the top called Front Matter:

my-doc.md
---
id: my-doc-id
title: My document title
description: My document description
slug: /my-custom-url
---

## Markdown heading

Markdown text with [links](./hello.md)

Regular Markdown links are supported, using url paths or relative file paths.

Let's see how to [Create a page](/create-a-page).
Let's see how to [Create a page](./create-a-page.md).

Result: Let's see how to Create a page.

Images

Regular Markdown images are supported.

You can use absolute paths to reference images in the static directory (static/img/docusaurus.png):

![Docusaurus logo](/img/docusaurus.png)

Docusaurus logo

You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:

![Docusaurus logo](./img/docusaurus.png)

Code Blocks

Markdown code blocks are supported with Syntax highlighting.

```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return (
<h1>Hello, Docusaurus!</h1>
)
}
```
src/components/HelloDocusaurus.js
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}

Admonitions

Docusaurus has a special syntax to create admonitions and callouts:

:::tip My tip

Use this awesome feature option

:::

:::danger Take care

This action is dangerous

:::
My tip

Use this awesome feature option

Take care

This action is dangerous

MDX and React Components

MDX can make your documentation more interactive and allows using any React components inside Markdown:

export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`)
}}>
{children}
</span>
);

This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !

This is <Highlight color="#1877F2">Facebook blue</Highlight> !

This is Docusaurus green !

This is Facebook blue !

- + \ No newline at end of file diff --git a/tutorial-extras/manage-docs-versions/index.html b/tutorial-extras/manage-docs-versions/index.html index 87e982c..d28d4e6 100644 --- a/tutorial-extras/manage-docs-versions/index.html +++ b/tutorial-extras/manage-docs-versions/index.html @@ -4,13 +4,13 @@ Manage Docs Versions | ZKPool Doc - +

Manage Docs Versions

Docusaurus can manage multiple versions of your docs.

Create a docs version

Release a version 1.0 of your project:

npm run docusaurus docs:version 1.0

The docs folder is copied into versioned_docs/version-1.0 and versions.json is created.

Your docs now have 2 versions:

  • 1.0 at http://localhost:3000/docs/ for the version 1.0 docs
  • current at http://localhost:3000/docs/next/ for the upcoming, unreleased docs

Add a Version Dropdown

To navigate seamlessly across versions, add a version dropdown.

Modify the docusaurus.config.js file:

docusaurus.config.js
module.exports = {
themeConfig: {
navbar: {
items: [
{
type: 'docsVersionDropdown',
},
],
},
},
};

The docs version dropdown appears in your navbar:

Docs Version Dropdown

Update an existing version

It is possible to edit versioned docs in their respective folder:

  • versioned_docs/version-1.0/hello.md updates http://localhost:3000/docs/hello
  • docs/hello.md updates http://localhost:3000/docs/next/hello
- + \ No newline at end of file diff --git a/tutorial-extras/translate-your-site/index.html b/tutorial-extras/translate-your-site/index.html index 2f4a99b..57f0061 100644 --- a/tutorial-extras/translate-your-site/index.html +++ b/tutorial-extras/translate-your-site/index.html @@ -4,13 +4,13 @@ Translate your site | ZKPool Doc - +

Translate your site

Let's translate docs/intro.md to French.

Configure i18n

Modify docusaurus.config.js to add support for the fr locale:

docusaurus.config.js
module.exports = {
i18n: {
defaultLocale: 'en',
locales: ['en', 'fr'],
},
};

Translate a doc

Copy the docs/intro.md file to the i18n/fr folder:

mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/

cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md

Translate i18n/fr/docusaurus-plugin-content-docs/current/intro.md in French.

Start your localized site

Start your site on the French locale:

npm run start -- --locale fr

Your localized site is accessible at http://localhost:3000/fr/ and the Getting Started page is translated.

caution

In development, you can only use one locale at a same time.

Add a Locale Dropdown

To navigate seamlessly across languages, add a locale dropdown.

Modify the docusaurus.config.js file:

docusaurus.config.js
module.exports = {
themeConfig: {
navbar: {
items: [
{
type: 'localeDropdown',
},
],
},
},
};

The locale dropdown now appears in your navbar:

Locale Dropdown

Build your localized site

Build your site for a specific locale:

npm run build -- --locale fr

Or build your site to include all the locales at once:

npm run build
- + \ No newline at end of file