hello.js

var please = require('share');
console.log('thank you');

Tuesday, 15 October, 2019 UTC

[Course] react: Immutable JavaScript Data Structures with Immer

[Course] react: Immutable JavaScript Data Structures with Immer

Using immutable data structures provides many benefits, including making your code easier to reason about and less prone to bugs. However, since JavaScript doesn't include support for immutable data structures out of the box, you need to use a third party ... more


Monday, 14 October, 2019 UTC

javascript: Style vanilla JavaScript apps with Emotion

javascript: Style vanilla JavaScript apps with Emotion

In this lesson, we look at how we can style any JavaScript application with the framework agnostic "emotion" package from Emotion. We leverage the `css` function - which takes in some styles, and returns a className - to apply styles to a heading ... more


Wednesday, 2 October, 2019 UTC

gatsby: Inject Custom JavaScript Into a Gatsby Site

gatsby: Inject Custom JavaScript Into a Gatsby Site

Learn how to add custom JavaScript to your Gatsby's main HTML. ... more


Sunday, 29 September, 2019 UTC

faunadb: Installing the FaunaDB CLI and using it to send queries from a local file

faunadb: Installing the FaunaDB CLI and using it to send queries from a local file

The FaunaDB CLI is distributed on NPM and includes an interactive shell as well as the ability to send queries from a file. ``` npm i -g fauna-shell fauna cloud-login fauna -h fauna list-databases ``` open a shell to a database: ``` fauna shell test-demo ... more


Wednesday, 25 September, 2019 UTC

chrome-devtools: See the Critical Rendering Path in the browser

chrome-devtools: See the Critical Rendering Path in the browser

The Critical Rendering Path is what happens from the moment your javascript is running to the moment something changes on screen. In this lesson, we will see how to monitor and view the critical rendering path in the browser. ... more


Friday, 20 September, 2019 UTC

javascript: Store Heading Metadata in a Markdown Document with remark

javascript: Store Heading Metadata in a Markdown Document with remark

You can use unified's [virtual file](https://github.com/vfile) to add data from a document in order to use it elsewhere. In this lesson we'll store metadata from all heading nodes in a markdown document using remark and vfile. ... more


Friday, 13 September, 2019 UTC

egghead: Leverage the Superpowers of Brace Expansions to become an NPM Install Ninja

egghead: Leverage the Superpowers of Brace Expansions to become an NPM Install Ninja

This lesson teaches its viewers a neat trick for installing NPM packages. This trick is made possible through "Brace Expansion". It allows us to install groups of packages from NPM without having to name each package explicitly, granted that ... more


Friday, 13 September, 2019 UTC

egghead: Use Brace Expansion to Maximize Efficiency When Installing Packages from NPM

egghead: Use Brace Expansion to Maximize Efficiency When Installing Packages from NPM

This lesson teaches its viewers a neat trick for installing NPM packages. This trick is made possible through "Brace Expansion". It allows us to install groups of packages from NPM without having to name each package explicitly, granted that ... more


Thursday, 12 September, 2019 UTC

javascript: Construct a Regex to Match Twitter Mentions with Regexr

javascript: Construct a Regex to Match Twitter Mentions with Regexr

[regexr](https://regexr.com) is a powerful tool for debugging existing regexes and creating new ones. In this lesson, we'll use the app to create a regex that matches Twitter-style mentions in a string. It will go over a few regex concepts including capture ... more


Thursday, 12 September, 2019 UTC

vscode: VSCode Settings.json vs Settings UI

vscode: VSCode Settings.json vs Settings UI

Switch back to settings.json based settings instead of the Settings UI and set custom keybindings to both the UI and the JSON file with the split view. ... more


Wednesday, 11 September, 2019 UTC

react: Set up ESLint to audit Accessibility issues in React

react: Set up ESLint to audit Accessibility issues in React

Our first layer of defense when building accessible React applications is to add some auditing tools to our development workflow. This should include adding static analysis checking for common accessibility standards and best practices. We can get this ... more


Wednesday, 11 September, 2019 UTC

javascript: Add and Remove Elements in an Array Using Splice

javascript: Add and Remove Elements in an Array Using Splice

Learn how to use splice with one, two or three+ arguments. With one argument splice removes all elements past that index. With two arguments it removes the number of elements specified past the first argument index. With three+ arguments it removes the ... more


Wednesday, 11 September, 2019 UTC

javascript: Create a PostCSS Plugin to Remove Vendor Prefixes

javascript: Create a PostCSS Plugin to Remove Vendor Prefixes

[PostCSS](https://github.com/postcss/postcss) is a CSS processor that allows you to modify source CSS with plugins. In this lesson we'll modify the CSS AST by creating a plugin that removes declarations when they contain vendor prefixes. ... more


Wednesday, 11 September, 2019 UTC

javascript: Introduction to the remark CLI

javascript: Introduction to the remark CLI

You can use the remark CLI to inspect the AST, run plugins, or lint your markdown documents. It can be used in your build scripts to generate HTML or ensure your markdown style guide is adhered to. - Inspect the AST: `remark document.md --inspect` - Use ... more


Tuesday, 10 September, 2019 UTC

vscode: Set Up a Live Scratchpad for JavaScript in VSCode using Quokka

vscode: Set Up a Live Scratchpad for JavaScript in VSCode using Quokka

In this lesson, you'll learn how to set up a "live scratchpad" for JavaScript using an extension called [Quokka](https://marketplace.visualstudio.com/items?itemName=WallabyJs.quokka-vscode). Similar to JS Bin, CodePen, or CodeSandbox, Quokka ... more


Saturday, 7 September, 2019 UTC

javascript: Remove Markdown Nodes from a Document with unist-util-remove

javascript: Remove Markdown Nodes from a Document with unist-util-remove

When using remark to manipulate markdown documents, you can use [unist-util-remove](https://www.npmjs.com/package/unist-util-remove) to remove nodes of a particular type. You can combine it with [unist-util-visit](https://www.npmjs.com/package/unist-util-remove) ... more


Saturday, 7 September, 2019 UTC

javascript: Convert Markdown to HTML with remark-html

javascript: Convert Markdown to HTML with remark-html

Most of the time with markdown documents we want to render them to HTML for static websites. You can use remark and the [remark-html](https://github.com/remarkjs/remark-html) plugin to transpile your markdown documents to HTML with a build script. ... more


Saturday, 7 September, 2019 UTC

javascript: Add a Dynamic Table of Contents to Your Markdown Documents with remark-toc

javascript: Add a Dynamic Table of Contents to Your Markdown Documents with remark-toc

Manually maintaining a table of contents in markdown documents can be a lot of work. By combining [remark-toc](https://github.com/remarkjs/remark-toc) and [remark-slug](https://github.com/remarkjs/remark-toc) you can ensure generate your table of contents ... more


Friday, 6 September, 2019 UTC

vscode: Using the VS Code debugger with Node

vscode: Using the VS Code debugger with Node

This lesson shows you how to debug your Node.js applications using the VS Code debugger. ... more


Friday, 6 September, 2019 UTC

vscode: Configure JavaScript Code Snippets in VSCode

vscode: Configure JavaScript Code Snippets in VSCode

In this lesson, we learn the basics of creating code snippets in VScode. ... more


Monday, 2 September, 2019 UTC

vscode: Use emmet and prettier in VSCode to quickly write and format JSX

vscode: Use emmet and prettier in VSCode to quickly write and format JSX

As developers, we strive to be quick and productive. We love to automate things so we spend less time on daunting, manual work and more time on solving interesting problems. In this lesson we're going to learn how to use emmet (which is built into VSCode) ... more


Friday, 30 August, 2019 UTC

javascript: Create a remark Plugin to Modify Markdown Headings

javascript: Create a remark Plugin to Modify Markdown Headings

[remark](https://github.com/remarkjs/remark) is a pluggable markdown parser and compiler. It's part of the [unified](https://unifiedjs.com) so it offers a wide array of libraries to make writing plugins with the markdown AST ([MDAST](https://github.com/syntax-tree/mdast)) ... more


Tuesday, 27 August, 2019 UTC

angular: Show a Loading Indicator for Lazy Routes in Angular

angular: Show a Loading Indicator for Lazy Routes in Angular

As shown in a [previous lesson](https://egghead.io/lessons/egghead-apply-route-level-code-splitting-and-lazy-loading-with-the-angular-cli), we can easily code split and lazy load a route in Angular. However when the user then clicks that lazy loaded route, ... more


Tuesday, 27 August, 2019 UTC

javascript: Nested Destructuring for Objects

javascript: Nested Destructuring for Objects

Use nested destructuring to access the value of an object within an object. ... more


Thursday, 8 August, 2019 UTC

javascript: Create an Image with JavaScript Using Fetch and URL.createObjectURL

javascript: Create an Image with JavaScript Using Fetch and URL.createObjectURL

Most developers are familiar with using img tags and assigning the src inside of HTML. It is also possible to only use JavaScript to fetch the image from another site, create a local url, and assign that to an img tag that you create. This lesson walks ... more


Monday, 5 August, 2019 UTC

css: Improve Keyboard Accessibility of Submenu Navigations using CSS

css: Improve Keyboard Accessibility of Submenu Navigations using CSS

In this lesson, we are going to use the :focus-within pseudo class as a CSS only way improve the accessibility of a navigation menu. If I were to use :focus on the ` `, it wouldn't work because the list items have a tabindex of -1. [:focus-within](https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-within) ... more


Thursday, 1 August, 2019 UTC

javascript: Array.prototype.flatMap from ES2019

javascript: Array.prototype.flatMap from ES2019

Use the flatMap function to both map and flatten at the same time. ... more


Thursday, 1 August, 2019 UTC

javascript: For...in Loop vs. For...of Loop

javascript: For...in Loop vs. For...of Loop

Arrays can be iterated through using both for...in and for...of, but there are differences. This video shows that for...of accesses the values of each element and for...in accesses the indexes of each element. ... more


Thursday, 1 August, 2019 UTC

javascript: Copy an Object with the Spread Operator

javascript: Copy an Object with the Spread Operator

Use the spread operator to copy a flat object. Note that this is a shallow copy. ... more


Wednesday, 24 July, 2019 UTC

[Course] javascript: JavaScript ES2019 in Practice

[Course] javascript: JavaScript ES2019 in Practice

Staying up to date with JavaScript’s changes saves you from being stumped by syntax. In this course, you’ll learn about all latest language features published with ES2019 and see how they solve problems, using the example of a Nuxt.js application. From ... more