1(self.webpackChunk=self.webpackChunk||[]).push([[9578,7918],{346:(e,t,a)=>{"use strict";a.d(t,{O2:()=>c,SQ:()=>d});var r=a(7294),n=a(4866),l=a(5162),u=a(1841),o=a.n(u),s=a(5665),i=a.n(s);function c(e){var t=e.children;return Array.isArray(t)||(t=[t]),r.createElement(n.Z,{className:"language-tabs",groupId:"code-tabs"},t.map((function(e,t){return r.createElement(l.Z,{value:e.props.value,label:e.props.value},e)})))}function d(e){var t=e.children,a=e.language;return Array.isArray(t)||(t=[t]),t=t.map((function(e){return function(e,t){var a=e.props,n=a.children,l=a.url,u=a.start,s=a.end,c=a.fname;if("Github"==e.props.mdxType)return function(e){var t=e.url,a=e.start,n=e.end,l=e.language,u=e.fname,o=t+"#";a&&n&&(o+="L"+a+"-L"+n+"#");return r.createElement(i(),{language:l,fname:u},o)}({url:l,start:u,end:s,language:t,fname:c});if("CodeBlock"==e.props.mdxType)return r.createElement(o(),{fname:c,language:t},n);return e}(e,a)})),1==t.length?r.createElement(l.Z,{value:0,label:t[0].props.fname},t[0]):r.createElement(n.Z,{className:"file-tabs"},t.map((function(e,t){return r.createElement(l.Z,{value:t,label:e.props.fname},e)})))}},5162:(e,t,a)=>{"use strict";a.d(t,{Z:()=>u});var r=a(7294),n=a(6010);const l={tabItem:"tabItem_Ymn6"};function u(e){var t=e.children,a=e.hidden,u=e.className;return r.createElement("div",{role:"tabpanel",className:(0,n.Z)(l.tabItem,u),hidden:a},t)}},4866:(e,t,a)=>{"use strict";a.d(t,{Z:()=>w});var r=a(7462),n=a(7294),l=a(6010),u=a(2466),o=a(6550),s=a(1980),i=a(7392),c=a(12);function d(e){return function(e){var t,a;return null!=(t=null==(a=n.Children.map(e,(function(e){if(!e||(0,n.isValidElement)(e)&&(t=e.props)&&"object"==typeof t&&"value"in t)return e;var t;throw new Error("Docusaurus error: Bad <Tabs> child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.')})))?void 0:a.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,a=e.children;return(0,n.useMemo)((function(){var e=null!=t?t:d(a);return function(e){var t=(0,i.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in <Tabs>. Every value needs to be unique.')}(e),e}),[t,a])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,a=void 0!==t&&t,r=e.groupId,l=(0,o.k6)(),u=function(e){var t=e.queryString,a=void 0!==t&&t,r=e.groupId;if("string"==typeof a)return a;if(!1===a)return null;if(!0===a&&!r)throw new Error('Docusaurus error: The <Tabs> component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=r?r:null}({queryString:a,groupId:r});return[(0,s._X)(u),(0,n.useCallback)((function(e){if(u){var t=new URLSearchParams(l.location.search);t.set(u,e),l.replace(Object.assign({},l.location,{search:t.toString()}))}}),[u,l])]}function v(e){var t,a,r,l,u=e.defaultValue,o=e.queryString,s=void 0!==o&&o,i=e.groupId,d=p(e),v=(0,n.useState)((function(){return function(e){var t,a=e.defaultValue,r=e.tabValues;if(0===r.length)throw new Error("Docusaurus error: the <Tabs> component requires at least one <TabItem> children component");if(a){if(!m({value:a,tabValues:r}))throw new Error('Docusaurus error: The <Tabs> has a defaultValue "'+a+'" but none of its children has the corresponding value. Available values are: '+r.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return a}var n=null!=(t=r.find((function(e){return e.default})))?t:r[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:u,tabValues:d})})),b=v[0],h=v[1],g=f({queryString:s,groupId:i}),y=g[0],k=g[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:i}.groupId),a=(0,c.Nk)(t),r=a[0],l=a[1],[r,(0,n.useCallback)((function(e){t&&l.set(e)}),[t,l])]),E=w[0],N=w[1],I=function(){var e=null!=y?y:E;return m({value:e,tabValues:d})?e:null}();return(0,n.useLayoutEffect)((function(){I&&h(I)}),[I]),{selectedValue:b,selectValue:(0,n.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);h(e),k(e),N(e)}),[k,N,d]),tabValues:d}}var b=a(2389);const h={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function g(e){var t=e.className,a=e.block,o=e.selectedValue,s=e.selectValue,i=e.tabValues,c=[],d=(0,u.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,a=c.indexOf(t),r=i[a].value;r!==o&&(d(t),s(r))},m=function(e){var t,a=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var r,n=c.indexOf(e.currentTarget)+1;a=null!=(r=c[n])?r:c[0];break;case"ArrowLeft":var l,u=c.indexOf(e.currentTarget)-1;a=null!=(l=c[u])?l:c[c.length-1]}
1null==(t=a)||t.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":a},t)},i.map((function(e){var t=e.value,a=e.label,u=e.attributes;return n.createElement("li",(0,r.Z)({role:"tab",tabIndex:o===t?0:-1,"aria-selected":o===t,key:t,ref:function(e){return c.push(e)},onKeyDown:m,onClick:p},u,{className:(0,l.Z)("tabs__item",h.tabItem,null==u?void 0:u.className,{"tabs__item--active":o===t})}),null!=a?a:t)})))}function y(e){var t=e.lazy,a=e.children,r=e.selectedValue,l=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){var u=l.find((function(e){return e.props.value===r}));return u?(0,n.cloneElement)(u,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},l.map((function(e,t){return(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==r})})))}function k(e){var t=v(e);return n.createElement("div",{className:(0,l.Z)("tabs-container",h.tabList)},n.createElement(g,(0,r.Z)({},e,t)),n.createElement(y,(0,r.Z)({},e,t)))}function w(e){var t=(0,b.Z)();return n.createElement(k,(0,r.Z)({key:String(t)},e))}},6773:(e,t,a)=>{"use strict";a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>f,frontMatter:()=>o,metadata:()=>i,toc:()=>d});var r=a(7462),n=a(3366),l=(a(7294),a(3905)),u=(a(4866),a(5162),a(346),["components"]),o={title:"Hello, Elastos"},s=void 0,i={unversionedId:"develop/quickstart",id:"develop/quickstart",title:"Hello, Elastos",description:"Hi! Let us guide you in starting and interacting with your first decentralized app (dApp) in : Hello Elastos.",source:"@site/../docs/3.develop/quickstart.md",sourceDirName:"3.develop",slug:"/develop/quickstart",permalink:"/develop/quickstart",draft:!1,editUrl:"https://github.com/elastos/Elastos.Wiki/edit/master/website/../docs/3.develop/quickstart.md",tags:[],version:"current",lastUpdatedBy:"Ryan",lastUpdatedAt:1666100198,formattedLastUpdatedAt:"Oct 18, 2022",frontMatter:{title:"Hello, Elastos"}},c={},d=[{value:"Try 'Hello Elastos' in Your Browser",id:"try-hello-elastos-in-your-browser",level:2},{value:"Try 'Hello Elastos' Locally",id:"try-hello-elastos-locally",level:2}],p={toc:d},m="wrapper";function f(e){var t=e.components,a=(0,n.Z)(e,u);return(0,l.kt)(m,(0,r.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("admonition",{title:"Under Construction",type:"caution"}),(0,l.kt)("p",null,"Hi! Let us guide you in starting and interacting with your first decentralized app (dApp) in : Hello Elastos."),(0,l.kt)("p",null,(0,l.kt)("strong",{parentName:"p"},"Hello Elastos")," is an introductory dApp intended to demonstrate"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"A smart contract that stores and retrieves a greeting message"),(0,l.kt)("li",{parentName:"ol"},"A simple web-based frontend that displays the greeting and enables to change it.")),(0,l.kt)("h2",{id:"try-hello-elastos-in-your-browser"},"Try 'Hello Elastos' in Your Browser"),(0,l.kt)("p",null,"A new browser window will open automatically with the code, give it a minute and the frontend will pop-up (make sure the pop-up window is not blocked)."),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"\ud83c\udf10 JavaScript"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{href:"https://gitpod.io/#https://github.com/elastos-examples/hello-elastos-js.git"},(0,l.kt)("img",{src:"https://gitpod.io/button/open-in-gitpod.svg",alt:"Open in Gitpod"})))))),(0,l.kt)("hr",null),(0,l.kt)("h2",{id:"try-hello-elastos-locally"},"Try 'Hello Elastos' Locally"),(0,l.kt)("p",null,"If you already have node installed, simply run:"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-bash"}," npx create-elastos-app@latest\n")),(0,l.kt)("hr",null))}f.isMDXComponent=!0},4654:()=>{}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.