index.html
1 <!DOCTYPE html> 2 <html lang="en" dir="ltr"> 3 <head prefix="og: http://ogp.me/ns#"> 4 <meta charset="utf-8"> 5 <title>Embark</title> 6 <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1"> 7 <meta name="viewport" content="width=device-width, initial-scale=1"> 8 <!-- Canonical links --> 9 <link rel="canonical" href="https://framework.embarklabs.io/archives/2019/03/index.html"> 10 <!-- Alternative links --> 11 12 13 <!-- Icon --> 14 <meta name="msapplication-TileColor" content="#080E1A"> 15 <link rel="icon" type="image/png" href="/assets/images/favicon-16.png" sizes="16x16" /> 16 <link rel="icon" type="image/png" href="/assets/images/favicon-32.png" sizes="32x32" /> 17 18 <link rel="apple-touch-icon" sizes="76x76" href="/assets/images/apple-touch-icon-60x60-precomposed.png"> 19 <link rel="apple-touch-icon" sizes="76x76" href="/assets/images/apple-touch-icon-76x76-precomposed.png"> 20 <link rel="apple-touch-icon" sizes="120x120" href="/assets/images/apple-touch-icon-120x120-precomposed.png"> 21 <link rel="apple-touch-icon" sizes="152x152" href="/assets/images/apple-touch-icon-152x152-precomposed.png"> 22 <link rel="apple-touch-icon" sizes="180x180" href="/assets/images/apple-touch-icon-precomposed.png"> 23 <link rel="apple-touch-icon" href="/assets/images/apple-touch-icon-precomposed.png"> 24 <!-- CSS --> 25 26 <link rel="stylesheet" href="/css/embark.css"> 27 28 <!-- endbuild --> 29 30 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"> 31 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" /> 32 33 <!-- RSS --> 34 <link rel="alternate" href="/atom.xml" title="Embark"> 35 <meta property="og:image" content="/img/share.png?v=0.0.5" /> 36 <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.4/styles/dracula.min.css"> 37 38 <script async defer src="https://buttons.github.io/buttons.js"></script> 39 40 41 <script> 42 !function(root, factory) { 43 "function" == typeof define && define.amd ? // AMD. Register as an anonymous module unless amdModuleId is set 44 define([], function() { 45 return root.svg4everybody = factory(); 46 }) : "object" == typeof module && module.exports ? // Node. Does not work with strict CommonJS, but 47 // only CommonJS-like environments that support module.exports, 48 // like Node. 49 module.exports = factory() : root.svg4everybody = factory(); 50 }(this, function() { 51 /*! svg4everybody v2.1.9 | github.com/jonathantneal/svg4everybody */ 52 function embed(parent, svg, target) { 53 // if the target exists 54 if (target) { 55 // create a document fragment to hold the contents of the target 56 var fragment = document.createDocumentFragment(), viewBox = !svg.hasAttribute("viewBox") && target.getAttribute("viewBox"); 57 // conditionally set the viewBox on the svg 58 viewBox && svg.setAttribute("viewBox", viewBox); 59 // copy the contents of the clone into the fragment 60 for (// clone the target 61 var clone = target.cloneNode(!0); clone.childNodes.length; ) { 62 fragment.appendChild(clone.firstChild); 63 } 64 // append the fragment into the svg 65 parent.appendChild(fragment); 66 } 67 } 68 function loadreadystatechange(xhr) { 69 // listen to changes in the request 70 xhr.onreadystatechange = function() { 71 // if the request is ready 72 if (4 === xhr.readyState) { 73 // get the cached html document 74 var cachedDocument = xhr._cachedDocument; 75 // ensure the cached html document based on the xhr response 76 cachedDocument || (cachedDocument = xhr._cachedDocument = document.implementation.createHTMLDocument(""), 77 cachedDocument.body.innerHTML = xhr.responseText, xhr._cachedTarget = {}), // clear the xhr embeds list and embed each item 78 xhr._embeds.splice(0).map(function(item) { 79 // get the cached target 80 var target = xhr._cachedTarget[item.id]; 81 // ensure the cached target 82 target || (target = xhr._cachedTarget[item.id] = cachedDocument.getElementById(item.id)), 83 // embed the target into the svg 84 embed(item.parent, item.svg, target); 85 }); 86 } 87 }, // test the ready state change immediately 88 xhr.onreadystatechange(); 89 } 90 function svg4everybody(rawopts) { 91 function oninterval() { 92 // while the index exists in the live <use> collection 93 for (// get the cached <use> index 94 var index = 0; index < uses.length; ) { 95 // get the current <use> 96 var use = uses[index], parent = use.parentNode, svg = getSVGAncestor(parent), src = use.getAttribute("xlink:href") || use.getAttribute("href"); 97 if (!src && opts.attributeName && (src = use.getAttribute(opts.attributeName)), 98 svg && src) { 99 if (polyfill) { 100 if (!opts.validate || opts.validate(src, svg, use)) { 101 // remove the <use> element 102 parent.removeChild(use); 103 // parse the src and get the url and id 104 var srcSplit = src.split("#"), url = srcSplit.shift(), id = srcSplit.join("#"); 105 // if the link is external 106 if (url.length) { 107 // get the cached xhr request 108 var xhr = requests[url]; 109 // ensure the xhr request exists 110 xhr || (xhr = requests[url] = new XMLHttpRequest(), xhr.open("GET", url), xhr.send(), 111 xhr._embeds = []), // add the svg and id as an item to the xhr embeds list 112 xhr._embeds.push({ 113 parent: parent, 114 svg: svg, 115 id: id 116 }), // prepare the xhr ready state change event 117 loadreadystatechange(xhr); 118 } else { 119 // embed the local id into the svg 120 embed(parent, svg, document.getElementById(id)); 121 } 122 } else { 123 // increase the index when the previous value was not "valid" 124 ++index, ++numberOfSvgUseElementsToBypass; 125 } 126 } 127 } else { 128 // increase the index when the previous value was not "valid" 129 ++index; 130 } 131 } 132 // continue the interval 133 (!uses.length || uses.length - numberOfSvgUseElementsToBypass > 0) && requestAnimationFrame(oninterval, 67); 134 } 135 var polyfill, opts = Object(rawopts), newerIEUA = /\bTrident\/[567]\b|\bMSIE (?:9|10)\.0\b/, webkitUA = /\bAppleWebKit\/(\d+)\b/, olderEdgeUA = /\bEdge\/12\.(\d+)\b/, edgeUA = /\bEdge\/.(\d+)\b/, inIframe = window.top !== window.self; 136 polyfill = "polyfill" in opts ? opts.polyfill : newerIEUA.test(navigator.userAgent) || (navigator.userAgent.match(olderEdgeUA) || [])[1] < 10547 || (navigator.userAgent.match(webkitUA) || [])[1] < 537 || edgeUA.test(navigator.userAgent) && inIframe; 137 // create xhr requests object 138 var requests = {}, requestAnimationFrame = window.requestAnimationFrame || setTimeout, uses = document.getElementsByTagName("use"), numberOfSvgUseElementsToBypass = 0; 139 // conditionally start the interval if the polyfill is active 140 polyfill && oninterval(); 141 } 142 function getSVGAncestor(node) { 143 for (var svg = node; "svg" !== svg.nodeName.toLowerCase() && (svg = svg.parentNode); ) {} 144 return svg; 145 } 146 return svg4everybody; 147 }); 148 149 svg4everybody(); 150 </script> 151 </head> 152 153 <body> 154 155 <header role="banner" class="c-header c-header--compact"> 156 <span class="c-header__background"></span> 157 <div class="o-container c-header__content"> 158 <div class="c-header__top"> 159 <a href="/" title="Embark" class="c-logo c-logo--negative">Embark</a> 160 <nav role="navigation" class="c-navigation"> 161 <div class="c-navigation__header"> 162 <a href="/" title="Embark" class="c-logo">Embark</a> 163 <button class="c-navigation__close u-text-light" title="Close menu"> 164 <svg class="c-icon c-icon--xs"><use xlink:href="/../assets/icons/symbols.svg#icon-close"></use></svg> 165 </button> 166 </div> 167 <div class="c-navigation__body"> 168 <ul class="c-navigation__list"> 169 <li class="c-navigation__item"> 170 <a href="/docs/quick_start.html" class="c-navigation__anchor " title="Quick Start">Quick Start</a> 171 </li> 172 <li class="c-navigation__item"> 173 <a href="/docs" class="c-navigation__anchor " title="Learn">Learn</a> 174 </li> 175 <li class="c-navigation__item"> 176 <a href="/plugins" class="c-navigation__anchor " title="Plugins">Plugins</a> 177 </li> 178 <li class="c-navigation__item"> 179 <a href="/community" class="c-navigation__anchor " title="Community">Community</a> 180 </li> 181 <li class="c-navigation__item"> 182 <a href="https://blog.embarklabs.io" target="_blank" rel="noopener" class="c-navigation__anchor " title="Blog">Blog</a> 183 </li> 184 </ul> 185 </div> 186 </nav> 187 <div class="o-flex o-flex-center"> 188 <form action="" class="o-flex__item u-hidden-until-large"> 189 <input type="search" placeholder="Search" id="search-input"> 190 </form> 191 <div class="o-flex__item"> 192 <ul class="o-flex o-flex-center"> 193 <li class="o-flex__item"> 194 <a href="https://github.com/embarklabs/embark" title="Github" target="_blank" class="u-link-ghost"> 195 <svg class="c-icon"><use xlink:href="/../assets/icons/symbols.svg#icon-github"></use></svg> 196 </a> 197 </li> 198 <li class="o-flex__item"> 199 <a href="https://twitter.com/EmbarkProject" title="Twitter" target="_blank"> 200 <svg class="c-icon"><use xlink:href="/../assets/icons/symbols.svg#icon-twitter"></use></svg> 201 </a> 202 </li> 203 <li class="o-flex__item u-hidden-large-up"> 204 <button type="button"class="c-navigation__trigger u-link-ghost" title="Open menu"> 205 <svg class="c-icon"><use xlink:href="/../assets/icons/symbols.svg#icon-navigation-menu"></use></svg> 206 </button> 207 </li> 208 </ul> 209 </div> 210 </div> 211 </div> 212 <div class="c-quick-search o-distance-m u-hidden-large-up"> 213 <input type="search" id="inp-search" placeholder="Search"> 214 </div> 215 <div class="c-header__body"> 216 <h1 class="c-title u-text-ghost">All posts</h1> 217 218 219 <p class="c-subtitle o-distance-s"> </p> 220 221 222 223 <div class="o-buttonbar"> 224 225 <a href="/news" class="c-button o-buttonbar__item" title="Back to blog">Back to blog</a> 226 227 228 229 </div> 230 231 232 </div> 233 </div> 234 </header> 235 236 237 238 <main role="main"> 239 <section class="o-container-medium o-distance"> 240 241 <div class="c-box c-box--whisper o-distance-m "> 242 243 <h3 class="c-title-level-3"> 244 245 <a href="/news/2019/03/19/introducing-embark-4/" title="Read more" class="u-link-uniform">Introducing Embark 4.0 - Cockpit, Debugger and more</a> 246 247 </h3> 248 249 <p class="c-meta u-text-light">19th March 2019</p> 250 251 <p class="c-box__subtitle u-text-light">Embark 4.0 is finally here! Check out what the greatest release yet has to offer!</p> 252 253 <p class="c-box__footer"> 254 <a href="/news/2019/03/19/introducing-embark-4/" title="Read more" class="c-link">Read more</a> 255 </p> 256 257 </div> 258 259 260 261 <div class="c-box c-box--whisper o-distance-m "> 262 263 <h3 class="c-title-level-3"> 264 265 <a href="/news/2019/03/18/upgrading-to-embark-4/" title="Read more" class="u-link-uniform">How to upgrade to Embark 4</a> 266 267 </h3> 268 269 <p class="c-meta u-text-light">18th March 2019</p> 270 271 <p class="c-box__subtitle u-text-light">In this guide, we'll learn how to upgrade a Dapp created with Embark 3.x to Embark 4</p> 272 273 <p class="c-box__footer"> 274 <a href="/news/2019/03/18/upgrading-to-embark-4/" title="Read more" class="c-link">Read more</a> 275 </p> 276 277 </div> 278 279 280 281 </section> 282 <div class="o-container o-distance o-center"> 283 <a href="https://blog.embarklabs.io" target="_blank" rel="noopener" class="c-button" title="Back to blog">Back to blog</a> 284 </div> 285 </main> 286 287 288 <footer role="contentinfo" class="c-footer o-distance-xxl"> 289 <div class="o-container"> 290 <div class="c-footer__top"> 291 <p class="c-category-title c-footer__top__title u-text-light"> 292 <a href="/" class="c-logo c-logo--negative" title="Embark">Embark</a> 293 </p> 294 </div> 295 <div class="c-footer__body"> 296 <div class="o-grid"> 297 <div class="o-grid__column--1-1 o-grid__column--medium-1-2 o-grid__column--large-1-5"> 298 <p class="c-category-title u-text-light">Resources</p> 299 <ul class="o-list-bare"> 300 <li class="o-list-bare__item"> 301 <a href="/docs/quick_start.html" class="u-link-ghost" title="Quick Start">Quick Start</a> 302 </li> 303 <li class="o-list-bare__item"> 304 <a href="/docs" class="u-link-ghost" title="Documentation">Documentation</a> 305 </li> 306 <li class="o-list-bare__item"> 307 <a href="https://blog.embarklabs.io" target="_blank" rel="noopener" class="u-link-ghost" title="Blog">Blog</a> 308 </li> 309 <li class="o-list-bare__item"> 310 <a href="/docs/faq.html" class="u-link-ghost" title="FAQ">FAQ</a> 311 </li> 312 <li class="o-list-bare__item"> 313 <a href="/docs/troubleshooting.html" class="u-link-ghost" title="Troubleshooting">Troubleshooting</a> 314 </li> 315 </ul> 316 </div> 317 <div class="o-grid__column--1-1 o-grid__column--medium-1-2 o-grid__column--large-1-5"> 318 <p class="c-category-title u-text-light">Help</p> 319 <ul class="o-list-bare"> 320 <li class="o-list-bare__item"> 321 <a href="https://stackoverflow.com/questions/tagged/embark" target="_blank" rel="noopener" class="u-link-ghost" title="Embark Questions">Stack Overflow</a> 322 </li> 323 <li class="o-list-bare__item"> 324 <a href="https://gitter.im/embark-framework/Lobby" target="_blank" rel="noopener" class="u-link-ghost" title="Gitter">Gitter</a> 325 </li> 326 <li class="o-list-bare__item"> 327 <a href="https://github.com/embarklabs/embark/issues" target="_blank" rel="noopener" class="u-link-ghost" title="Report issues">Report issues</a> 328 </li> 329 <li class="o-list-bare__item"> 330 <a href="https://github.com/embarklabs/embark/blob/master/CODE_OF_CONDUCT.md" target="_blank" rel="noopener" class="u-link-ghost" title="Code of Conduct">Code of Conduct</a> 331 </li> 332 </ul> 333 </div> 334 <div class="o-grid__column--1-1 o-grid__column--medium-1-2 o-grid__column--large-1-5"> 335 <p class="c-category-title u-text-light">Community</p> 336 <ul class="o-list-bare"> 337 <li class="o-list-bare__item"> 338 <a href="https://github.com/embarklabs" target="_blank" rel="noopener" class="u-link-ghost" title="Github">Github</a> 339 </li> 340 <li class="o-list-bare__item"> 341 <a href="https://twitter.com/EmbarkProject" target="_blank" rel="noopener" class="u-link-ghost" title="Twitter">Twitter</a> 342 </li> 343 <li class="o-list-bare__item"> 344 <a href="/docs/contributing.html" class="u-link-ghost" title="Contribute">Contribute</a> 345 </li> 346 <li class="o-list-bare__item"> 347 <a href="/community/#team" class="u-link-ghost" title="Team">Team</a> 348 </li> 349 </ul> 350 </div> 351 352 <div class="o-grid__column--1-1 o-grid__column--medium-1-2 o-grid__column--large-1-4"> 353 <p class="c-category-title u-text-light">The Status Network</p> 354 <ul class="o-list-bare two-columns"> 355 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://status.im/" target="_blank">Status</a></li> 356 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://keycard.tech/" target="_blank">Keycard</a></li> 357 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://dap.ps/" target="_blank">dap.ps</a></li> 358 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://teller.exchange/" target="_blank">Teller</a></li> 359 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://assemble.fund/" target="_blank">Assemble</a></li> 360 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://subspace.embarklabs.io/" target="_blank">Subspace</a></li> 361 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://vac.dev/" target="_blank">Vac</a></li> 362 <li class="o-list-bare__item"><a class="u-link-ghost" href="https://nimbus.team/" target="_blank">Nimbus</a></li> 363 </ul> 364 </div> 365 </div> 366 </div> 367 <div class="c-footer__bottom"> 368 <p class="u-text-light"> 369 <a href="https://status.im/privacy-policy.html" title="Privacy Policy" target="_blank" class="u-text-light">Privacy Policy</a> 370 / © 2019-2020 Embark 371 </p> 372 </div> 373 </div> 374 </footer> 375 376 377 378 379 <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.4/highlight.min.js"></script> 380 <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script> 381 <script> 382 const EMBARK_DOC_VERSIONS = { 383 'latest': 'https://framework.embarklabs.io/docs','3.2': 'https://5ca4e0fdb29712000adde37f--embark-site-versions.netlify.com/docs/' 384 }; 385 </script> 386 387 388 <!-- Fathom - simple website analytics - https://github.com/usefathom/fathom --> 389 <script> 390 (function(f, a, t, h, o, m){ 391 a[h]=a[h]||function(){(a[h].q=a[h].q||[]).push(arguments)}; 392 o=f.createElement('script'), 393 m=f.getElementsByTagName('script')[0]; 394 o.async=1; o.src=t; o.id='fathom-script'; 395 m.parentNode.insertBefore(o,m) 396 })(document, window, '//fathom.status.im/tracker.js', 'fathom'); 397 fathom('set', 'siteId', 'YDUQQ'); 398 fathom('trackPageview'); 399 </script> 400 <!-- / Fathom --> 401 402 403 <script src="/js/index.js"></script> 404 405 406 <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script> 407 <script type="text/javascript"> 408 docsearch({ 409 apiKey: '439d8dc2add18007a2f31be4a9c0ed70', 410 indexName: 'embark', 411 inputSelector: '#search-input' 412 }); 413 </script> 414 415 </body> 416 </html> 417