From 2ecadbada9a18e2420d1c8123e81c1bc1c6c3839 Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Sun, 7 May 2023 12:49:46 +0300 Subject: [PATCH] Fix tags, languages and templates --- articles/s/10-vs-code-extensions-for-js-developers.md | 3 ++- articles/s/25-css-gradients.md | 3 ++- articles/s/4-javascript-array-methods.md | 3 ++- articles/s/4-seo-tips-for-developers.md | 2 +- articles/s/5-tips-for-better-pull-requests.md | 3 ++- articles/s/6-javascript-regexp-tricks.md | 3 ++- articles/s/6-python-f-strings-tips.md | 3 ++- articles/s/7-chrome-extensions-for-web-developers.md | 4 ++-- articles/s/8-tips-for-accessible-websites.md | 3 ++- articles/s/8-tips-for-remote-work.md | 4 ++-- articles/s/async-javascript-cheatsheet.md | 3 ++- articles/s/bash-alias-dollar-sign.md | 3 ++- articles/s/benefits-of-writing.md | 2 +- articles/s/big-o-cheatsheet.md | 3 ++- articles/s/breaking-react.md | 3 ++- articles/s/code-anatomy-chaining-reduce-for-loop.md | 3 ++- articles/s/code-anatomy-optimizing-recursion.md | 3 ++- articles/s/code-anatomy-performant-python.md | 3 ++- articles/s/common-regexp-cheatsheet.md | 3 ++- articles/s/console-log-cheatsheet.md | 3 ++- articles/s/cookies-local-storage-session.md | 3 ++- articles/s/copy-text-to-clipboard-with-javascript.md | 3 ++- articles/s/cors-explained.md | 3 ++- articles/s/css-centering.md | 3 ++- articles/s/css-clamp.md | 3 ++- articles/s/css-code-reviews.md | 3 ++- articles/s/css-current-color.md | 3 ++- articles/s/css-easing-variables.md | 3 ++- articles/s/css-footer-at-the-bottom.md | 3 ++- articles/s/css-inherited-properties-cheatsheet.md | 3 ++- articles/s/css-nested-border-radius.md | 3 ++- articles/s/css-pseudo-classes.md | 3 ++- articles/s/css-reset.md | 3 ++- articles/s/css-root-vs-html.md | 3 ++- articles/s/css-select-any-link.md | 3 ++- articles/s/css-style-default-links.md | 3 ++- articles/s/css-unitless-line-height.md | 3 ++- articles/s/css-units-cheatsheet.md | 3 ++- articles/s/css-variables.md | 3 ++- articles/s/custom-file-download-names.md | 3 ++- articles/s/detect-caps-lock-is-on.md | 3 ++- articles/s/escaping-tutorial-hell.md | 2 +- articles/s/eslint-refactor-for-in.md | 3 ++- articles/s/flexbox-cheatsheet.md | 3 ++- articles/s/git-aliases.md | 3 ++- articles/s/git-commit-different-date.md | 3 ++- articles/s/git-fast-forward.md | 3 ++- articles/s/github-co-authors.md | 3 ++- articles/s/html-head-icons.md | 3 ++- articles/s/html-head-links.md | 3 ++- articles/s/html-head-social-tags.md | 3 ++- articles/s/html-recommended-minimum-head.md | 3 ++- articles/s/javascript-add-key-value-pair-to-object.md | 3 ++- articles/s/javascript-array-comparison.md | 3 ++- articles/s/javascript-array-includes-value.md | 3 ++- articles/s/javascript-arrow-function-event-listeners.md | 3 ++- articles/s/javascript-arrow-functions.md | 3 ++- articles/s/javascript-arrow-regular-function-differences.md | 3 ++- articles/s/javascript-async-array-loops.md | 3 ++- articles/s/javascript-await-timeout.md | 3 ++- articles/s/javascript-blank-value.md | 3 ++- articles/s/javascript-boolean-function.md | 3 ++- articles/s/javascript-boolean-trap.md | 3 ++- articles/s/javascript-callbacks.md | 3 ++- articles/s/javascript-classical-vs-prototypal-inheritance.md | 3 ++- articles/s/javascript-closures.md | 3 ++- articles/s/javascript-copy-array.md | 3 ++- articles/s/javascript-date-comparison.md | 3 ++- articles/s/javascript-deep-freeze-object.md | 3 ++- articles/s/javascript-destructuring-assignment.md | 3 ++- articles/s/javascript-empty-array.md | 3 ++- articles/s/javascript-encodeuri-encodeuricomponent.md | 3 ++- articles/s/javascript-enum.md | 3 ++- articles/s/javascript-equality.md | 3 ++- articles/s/javascript-event-bubbling-capturing-delegation.md | 3 ++- articles/s/javascript-event-loop-explained.md | 3 ++- articles/s/javascript-evil-closures.md | 3 ++- articles/s/javascript-expression-statement.md | 3 ++- articles/s/javascript-for-in-for-of-foreach.md | 3 ++- articles/s/javascript-for-loop-early-break.md | 3 ++- articles/s/javascript-function-call-apply-bind.md | 3 ++- articles/s/javascript-higher-order-functions.md | 3 ++- articles/s/javascript-iife.md | 3 ++- articles/s/javascript-index-for-of-loop.md | 3 ++- articles/s/javascript-iterable-to-array.md | 3 ++- articles/s/javascript-iterators.md | 3 ++- articles/s/javascript-json-stringify-pick-keys.md | 3 ++- articles/s/javascript-listen-once.md | 3 ++- articles/s/javascript-make-iterable.md | 3 ++- articles/s/javascript-memoization.md | 3 ++- articles/s/javascript-merge-arrays.md | 3 ++- articles/s/javascript-modify-url-without-reload.md | 3 ++- articles/s/javascript-module-cheatsheet.md | 3 ++- articles/s/javascript-naming-conventions.md | 3 ++- articles/s/javascript-nullish-coalescing-optional-chaining.md | 3 ++- articles/s/javascript-numeric-separator.md | 3 ++- articles/s/javascript-object-array-proxy.md | 3 ++- articles/s/javascript-object-comparison.md | 3 ++- articles/s/javascript-object-is-triple-equals.md | 3 ++- articles/s/javascript-pass-by-reference-or-pass-by-value.md | 3 ++- articles/s/javascript-prefix-postfix-operators.md | 3 ++- articles/s/javascript-pretty-print-json.md | 3 ++- articles/s/javascript-prevent-string-being-escaped.md | 3 ++- articles/s/javascript-primitive-instanceof.md | 3 ++- articles/s/javascript-promise-then-catch.md | 3 ++- articles/s/javascript-promise-then-finally.md | 3 ++- articles/s/javascript-promises.md | 3 ++- articles/s/javascript-property-enumerability.md | 3 ++- articles/s/javascript-pure-functions.md | 3 ++- articles/s/javascript-query-selector-shorthand.md | 3 ++- articles/s/javascript-random-value-pure-functions.md | 3 ++- articles/s/javascript-range-generator.md | 3 ++- articles/s/javascript-recursion.md | 3 ++- articles/s/javascript-reload-page.md | 3 ++- articles/s/javascript-remove-object-property.md | 3 ++- articles/s/javascript-return-constructor.md | 3 ++- articles/s/javascript-shallow-deep-clone.md | 3 ++- articles/s/javascript-singleton-proxy.md | 3 ++- articles/s/javascript-sleep.md | 3 ++- articles/s/javascript-spread-rest-syntax.md | 3 ++- articles/s/javascript-store-dom-items.md | 3 ++- articles/s/javascript-string-contains-substring.md | 3 ++- articles/s/javascript-string-immutability.md | 3 ++- articles/s/javascript-string-to-boolean.md | 3 ++- articles/s/javascript-swap-two-variables.md | 3 ++- articles/s/javascript-switch-object.md | 3 ++- articles/s/javascript-sync-async.md | 3 ++- articles/s/javascript-target-blank.md | 3 ++- articles/s/javascript-ternary-operator.md | 3 ++- articles/s/javascript-this.md | 3 ++- articles/s/javascript-truthy-falsy-values.md | 3 ++- articles/s/javascript-undeclared-undefined-null.md | 3 ++- articles/s/javascript-use-strict.md | 3 ++- articles/s/javascript-value-as-number.md | 3 ++- articles/s/javascript-value-not-equal-to-itself.md | 3 ++- articles/s/javascript-var-let-const.md | 3 ++- articles/s/javascript-variable-hoisting.md | 3 ++- articles/s/javascript-variable-scope.md | 3 ++- articles/s/javascript-void-links.md | 3 ++- articles/s/jest-mock-global-methods.md | 3 ++- articles/s/js-abort-fetch.md | 3 ++- articles/s/js-append-elements-to-array.md | 3 ++- articles/s/js-array-filtering-tips.md | 3 ++- articles/s/js-array-map-vs-foreach.md | 3 ++- articles/s/js-array-min-max.md | 3 ++- articles/s/js-array-sorting-shorthand.md | 3 ++- articles/s/js-async-defer.md | 3 ++- articles/s/js-callbacks.md | 3 ++- articles/s/js-cannot-extend-proxy-object.md | 3 ++- articles/s/js-compare-string-case-accent-insensitive.md | 3 ++- articles/s/js-construct-url.md | 3 ++- articles/s/js-create-element.md | 3 ++- articles/s/js-data-structures-binary-search-tree.md | 3 ++- articles/s/js-data-structures-binary-tree.md | 3 ++- articles/s/js-data-structures-doubly-linked-list.md | 3 ++- articles/s/js-data-structures-graph.md | 3 ++- articles/s/js-data-structures-linked-list.md | 3 ++- articles/s/js-data-structures-queue.md | 3 ++- articles/s/js-data-structures-stack.md | 3 ++- articles/s/js-data-structures-tree.md | 3 ++- articles/s/js-decimal-to-hex.md | 3 ++- articles/s/js-detect-undefined-object-property.md | 3 ++- articles/s/js-double-negation-operator.md | 3 ++- articles/s/js-dynamic-getter-chain-proxy.md | 3 ++- articles/s/js-dynamic-getter-setter-proxy.md | 3 ++- articles/s/js-dynamic-properties-are-slow.md | 3 ++- articles/s/js-edit-url-params.md | 3 ++- articles/s/js-element-from-point.md | 3 ++- articles/s/js-email-validation.md | 3 ++- articles/s/js-fast-remove-array-element.md | 3 ++- articles/s/js-frequency-map-data-structure.md | 3 ++- articles/s/js-immutable-object-proxy.md | 3 ++- articles/s/js-last-element-of-array.md | 3 ++- articles/s/js-locale-sensitive-string-truncation.md | 3 ++- articles/s/js-map-vs-object.md | 3 ++- articles/s/js-native-data-structures.md | 3 ++- articles/s/js-object-freeze-vs-seal.md | 3 ++- articles/s/js-proxy-array-negative-index.md | 3 ++- articles/s/js-proxy-introduction.md | 3 ++- articles/s/js-remove-array-duplicates.md | 3 ++- articles/s/js-remove-element-from-array.md | 3 ++- articles/s/js-remove-trailing-zeros.md | 3 ++- articles/s/js-replace-all-occurences-of-string.md | 3 ++- articles/s/js-spread-operator-tricks.md | 3 ++- articles/s/js-static-instance-methods.md | 3 ++- articles/s/js-textcontent-or-innertext.md | 3 ++- articles/s/js-timeout-interval-delay.md | 3 ++- articles/s/js-typecheck-array.md | 3 ++- articles/s/js-typecheck-proxy.md | 3 ++- articles/s/js-window-location-cheatsheet.md | 3 ++- articles/s/lazy-loading-images.md | 3 ++- articles/s/nodejs-chrome-debugging.md | 3 ++- articles/s/nodejs-static-file-server.md | 3 ++- articles/s/nodejs-test-module-introduction.md | 3 ++- articles/s/passive-scroll-listener-performance.md | 3 ++- articles/s/password-autocomplete-suggestion.md | 1 + articles/s/perfect-css-transition-duration.md | 3 ++- articles/s/prefetching-resources.md | 3 ++- articles/s/python-bare-except.md | 3 ++- articles/s/python-dict-getkey-vs-dictkey.md | 3 ++- articles/s/python-empty-list.md | 3 ++- articles/s/python-file-close.md | 3 ++- articles/s/python-fstrings-str-format.md | 3 ++- articles/s/python-identity-equality.md | 3 ++- articles/s/python-lists-tuples.md | 3 ++- articles/s/python-lowercase.md | 3 ++- articles/s/python-mutable-default-arguments.md | 3 ++- articles/s/python-named-tuples.md | 3 ++- articles/s/python-slice-assignment.md | 3 ++- articles/s/python-slice-notation.md | 3 ++- articles/s/python-sort-dictionary-tuple-key.md | 3 ++- articles/s/python-sortedlist-vs-list-sort.md | 3 ++- articles/s/python-string-is-empty.md | 3 ++- articles/s/python-swap-variables.md | 3 ++- articles/s/python-trim-whitespace.md | 3 ++- articles/s/react-conditional-classname.md | 3 ++- articles/s/react-proptypes-objectof-vs-shape.md | 3 ++- articles/s/react-redux-readable-reducers.md | 3 ++- articles/s/react-rendering-basics.md | 3 ++- articles/s/react-rendering-optimization.md | 3 ++- articles/s/react-rendering-state.md | 3 ++- articles/s/react-selected-option.md | 3 ++- articles/s/react-use-effect-primitive-dependencies.md | 3 ++- articles/s/react-use-interval-explained.md | 3 ++- articles/s/react-use-state-with-label.md | 3 ++- articles/s/regexp-cheatsheet.md | 3 ++- articles/s/resource-preloading-cheatsheet.md | 3 ++- articles/s/responsive-favicon-dark-mode.md | 3 ++- articles/s/reversed-list.md | 3 ++- articles/s/select-focused-dom-element.md | 3 ++- articles/s/setup-python3-pip3-as-default.md | 3 ++- articles/s/technical-debt.md | 2 +- articles/s/testing-async-react-components.md | 3 ++- articles/s/testing-react-portals.md | 3 ++- articles/s/testing-redux-connected-components.md | 3 ++- articles/s/testing-stateful-ui-components.md | 3 ++- articles/s/the-case-for-javascript-trailing-commas.md | 3 ++- articles/s/typographic-scale-basics.md | 3 ++- articles/s/zooming-accessibility-tips.md | 1 + articles/template.md | 3 ++- css/template.md | 1 + git/template.md | 1 + js/template.md | 1 + python/template.md | 1 + react/template.md | 1 + 245 files changed, 479 insertions(+), 240 deletions(-) diff --git a/articles/s/10-vs-code-extensions-for-js-developers.md b/articles/s/10-vs-code-extensions-for-js-developers.md index 515021dea..9d6c74bfa 100644 --- a/articles/s/10-vs-code-extensions-for-js-developers.md +++ b/articles/s/10-vs-code-extensions-for-js-developers.md @@ -2,10 +2,11 @@ title: 10 must-have VS Code extensions for JavaScript developers shortTitle: Essential VS Code extensions type: story +language: javascript tags: [devtools,vscode] author: chalarangelo cover: computer-screens -excerpt: VS Code is steadily gaining popularity among developers. Here are 10 essential extensions for JavaScript developers that aim to increase your productivity. +excerpt: Boost your productivity with these 10 essential VS Code extensions for JavaScript developers. unlisted: true dateModified: 2021-06-12T19:30:41+03:00 --- diff --git a/articles/s/25-css-gradients.md b/articles/s/25-css-gradients.md index 0b82eaaf5..0beaad519 100644 --- a/articles/s/25-css-gradients.md +++ b/articles/s/25-css-gradients.md @@ -2,7 +2,8 @@ title: 25 CSS gradients for your next project shortTitle: CSS gradients type: cheatsheet -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: colors-mural excerpt: We hand picked 25 of our favorite CSS gradients from uiGradients for your next design. Get them now! diff --git a/articles/s/4-javascript-array-methods.md b/articles/s/4-javascript-array-methods.md index e9c86e281..f7b9cf635 100644 --- a/articles/s/4-javascript-array-methods.md +++ b/articles/s/4-javascript-array-methods.md @@ -2,7 +2,8 @@ title: 4 JavaScript Array methods you must know shortTitle: Useful array methods type: story -tags: [javascript,array,cheatsheet] +language: javascript +tags: [array,cheatsheet] author: chalarangelo cover: arrays excerpt: JavaScript arrays have a very robust API offering some amazing tools. Learn the 4 must-know JavaScript array methods in this quick guide. diff --git a/articles/s/4-seo-tips-for-developers.md b/articles/s/4-seo-tips-for-developers.md index d2b1a84e4..47c0aa007 100644 --- a/articles/s/4-seo-tips-for-developers.md +++ b/articles/s/4-seo-tips-for-developers.md @@ -2,7 +2,7 @@ title: 4 SEO tips for developers shortTitle: SEO tips type: story -tags: [seo,webdev] +tags: [webdev,seo] author: chalarangelo cover: sunrise-over-city excerpt: SEO is a very relevant topics that most developers are inexperienced in. Here are 4 actionable SEO tips you can implement today. diff --git a/articles/s/5-tips-for-better-pull-requests.md b/articles/s/5-tips-for-better-pull-requests.md index ba8268ad0..d7ade7348 100644 --- a/articles/s/5-tips-for-better-pull-requests.md +++ b/articles/s/5-tips-for-better-pull-requests.md @@ -1,7 +1,8 @@ --- title: 5 tips for better Pull Requests type: story -tags: [git,github,programming,webdev] +language: git +tags: [github,programming,webdev] author: chalarangelo cover: keyboard-tea excerpt: Writing good code is only part of the job. Here are 5 tips to improve your pull requests and help people review them. diff --git a/articles/s/6-javascript-regexp-tricks.md b/articles/s/6-javascript-regexp-tricks.md index c408fcaa0..2412a3632 100644 --- a/articles/s/6-javascript-regexp-tricks.md +++ b/articles/s/6-javascript-regexp-tricks.md @@ -2,7 +2,8 @@ title: 6 JavaScript Regular Expression features you can use today shortTitle: JavaScript Regular Expression tips type: story -tags: [javascript,string,regexp] +language: javascript +tags: [string,regexp] author: chalarangelo cover: taking-photos excerpt: Regular expressions are very powerful, but hard to master. Understand these features and start using them in your JavaScript code. diff --git a/articles/s/6-python-f-strings-tips.md b/articles/s/6-python-f-strings-tips.md index 29880fec0..20ced25b2 100644 --- a/articles/s/6-python-f-strings-tips.md +++ b/articles/s/6-python-f-strings-tips.md @@ -1,7 +1,8 @@ --- title: 6 Python f-strings tips and tricks type: story -tags: [python,string] +language: python +tags: [string] author: chalarangelo cover: sea-view excerpt: Python's f-strings can do a lot more than you might expect. Learn a few useful tips and tricks in this quick guide. diff --git a/articles/s/7-chrome-extensions-for-web-developers.md b/articles/s/7-chrome-extensions-for-web-developers.md index 7d82b5df9..37a93a22b 100644 --- a/articles/s/7-chrome-extensions-for-web-developers.md +++ b/articles/s/7-chrome-extensions-for-web-developers.md @@ -2,10 +2,10 @@ title: 7 essential Chrome extensions for web developers shortTitle: Essential Chrome extensions type: story -tags: [devtools,webdev] +tags: [webdev,devtools] author: chalarangelo cover: computer-screens -excerpt: Google Chrome's developer tools are nothing short of amazing. Here are 7 must-have extensions you can add to increase your productivity even further. +excerpt: Boost your productivity with 7 must-have Google Chrome developer tool extensions. unlisted: true dateModified: 2021-06-12T19:30:41+03:00 --- diff --git a/articles/s/8-tips-for-accessible-websites.md b/articles/s/8-tips-for-accessible-websites.md index 821ab0389..74c291d3a 100644 --- a/articles/s/8-tips-for-accessible-websites.md +++ b/articles/s/8-tips-for-accessible-websites.md @@ -2,7 +2,8 @@ title: 8 tips for accessible websites shortTitle: Accessibility tips type: story -tags: [javascript,accessibility,webdev] +language: javascript +tags: [accessibility,webdev] author: chalarangelo cover: accessibility excerpt: Accessibility (a11y) can improve your website and attract new users. Learn how to get started with these 8 quick tips. diff --git a/articles/s/8-tips-for-remote-work.md b/articles/s/8-tips-for-remote-work.md index 915bae3f7..76618d8f6 100644 --- a/articles/s/8-tips-for-remote-work.md +++ b/articles/s/8-tips-for-remote-work.md @@ -1,10 +1,10 @@ --- title: 8 tips for working from home type: story -tags: [career,programming,jobs,webdev] +tags: [webdev,career,programming,jobs] author: chalarangelo cover: kettle-laptop -excerpt: Working from home seems like a great alternative to going to the office, but there are challenges that come with it that you need to overcome... +excerpt: Working from home seems great compared to going to the office, but there are challenges that come with it that you need to overcome. unlisted: true dateModified: 2021-06-12T19:30:41+03:00 --- diff --git a/articles/s/async-javascript-cheatsheet.md b/articles/s/async-javascript-cheatsheet.md index 9c5a5eba3..42748b311 100644 --- a/articles/s/async-javascript-cheatsheet.md +++ b/articles/s/async-javascript-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Asynchronous JavaScript Cheat Sheet type: cheatsheet -tags: [javascript,function,promise] +language: javascript +tags: [function,promise] author: chalarangelo cover: green-plant excerpt: Learn everything you need to know about promises and asynchronous JavaScript with this handy cheatsheet. diff --git a/articles/s/bash-alias-dollar-sign.md b/articles/s/bash-alias-dollar-sign.md index 63e5dc47a..a12c69db7 100644 --- a/articles/s/bash-alias-dollar-sign.md +++ b/articles/s/bash-alias-dollar-sign.md @@ -2,7 +2,8 @@ title: "Tip: A bash alias for copying from the web" shortTitle: Bash alias for copying from the web type: tip -tags: [git,configuration] +language: git +tags: [configuration] author: chalarangelo cover: capsule-coffee excerpt: Many online resources prefix their terminal commands with a dollar sign. Luckily, we've got a solution to this small annoyance. diff --git a/articles/s/benefits-of-writing.md b/articles/s/benefits-of-writing.md index 6ae9184b2..708eb05d5 100644 --- a/articles/s/benefits-of-writing.md +++ b/articles/s/benefits-of-writing.md @@ -1,7 +1,7 @@ --- title: The benefits of writing type: story -tags: [career,webdev,programming,jobs] +tags: [webdev,career,programming,jobs] author: chalarangelo cover: laptop-view excerpt: Writing about a topic can often sound boring or worthless. But there are significant benefits to doing it from time to time. diff --git a/articles/s/big-o-cheatsheet.md b/articles/s/big-o-cheatsheet.md index 691849d77..efc945464 100644 --- a/articles/s/big-o-cheatsheet.md +++ b/articles/s/big-o-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Big-O Cheat Sheet type: cheatsheet -tags: [javascript,algorithm] +language: javascript +tags: [algorithm] author: chalarangelo cover: light-ring excerpt: Learn everything you need to know about Big-O notation with this handy cheatsheet. diff --git a/articles/s/breaking-react.md b/articles/s/breaking-react.md index 6345e15e9..6bd64ec49 100644 --- a/articles/s/breaking-react.md +++ b/articles/s/breaking-react.md @@ -1,7 +1,8 @@ --- title: Breaking React - a common pattern to avoid type: story -tags: [react,debugging] +language: react +tags: [debugging] author: chalarangelo cover: broken-screen excerpt: As powerful as React is, it is also quite fragile at places. Did you know that a few lines can easily break your entire React application? diff --git a/articles/s/code-anatomy-chaining-reduce-for-loop.md b/articles/s/code-anatomy-chaining-reduce-for-loop.md index 0487df521..c05d10415 100644 --- a/articles/s/code-anatomy-chaining-reduce-for-loop.md +++ b/articles/s/code-anatomy-chaining-reduce-for-loop.md @@ -2,7 +2,8 @@ title: Code Anatomy - For loops, array reduce and method chaining shortTitle: For loops, array reduce and method chaining type: story -tags: [javascript,array,iterator] +language: javascript +tags: [array,iterator] author: chalarangelo cover: case-study excerpt: There are many ways to iterate and transform array data in JavaScript. Learn how each one works and where you should use them. diff --git a/articles/s/code-anatomy-optimizing-recursion.md b/articles/s/code-anatomy-optimizing-recursion.md index 93e2a07f2..2fc847056 100644 --- a/articles/s/code-anatomy-optimizing-recursion.md +++ b/articles/s/code-anatomy-optimizing-recursion.md @@ -2,7 +2,8 @@ title: Code Anatomy - Optimizing recursive functions shortTitle: Optimizing recursive functions type: story -tags: [javascript,recursion,performance] +language: javascript +tags: [recursion,performance] author: chalarangelo cover: case-study excerpt: Recursive code tends to be inefficient or in need of optimization. Learn a couple of tricks we use to speed up our recursive functions. diff --git a/articles/s/code-anatomy-performant-python.md b/articles/s/code-anatomy-performant-python.md index 84bbce4f9..6b03e8828 100644 --- a/articles/s/code-anatomy-performant-python.md +++ b/articles/s/code-anatomy-performant-python.md @@ -2,7 +2,8 @@ title: Code Anatomy - Writing high performance Python code shortTitle: Performant Python code type: story -tags: [python,list,performance] +language: python +tags: [list,performance] cover: walking-on-top excerpt: Writing efficient Python code can be tricky. Read how we optimize our list snippets to increase performance using a couple of simple tricks. dateModified: 2021-11-07T16:34:37+03:00 diff --git a/articles/s/common-regexp-cheatsheet.md b/articles/s/common-regexp-cheatsheet.md index 35ec342fd..764758592 100644 --- a/articles/s/common-regexp-cheatsheet.md +++ b/articles/s/common-regexp-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Common regular expressions type: cheatsheet -tags: [javascript,string,regexp] +language: javascript +tags: [string,regexp] author: chalarangelo cover: rocky-beach excerpt: A collection of regular expressions that can be used to solve common problems. diff --git a/articles/s/console-log-cheatsheet.md b/articles/s/console-log-cheatsheet.md index 01569c19b..d4e1ba804 100644 --- a/articles/s/console-log-cheatsheet.md +++ b/articles/s/console-log-cheatsheet.md @@ -1,7 +1,8 @@ --- title: JavaScript console.log() tips & tricks type: story -tags: [javascript,browser,cheatsheet] +language: javascript +tags: [browser,cheatsheet] author: chalarangelo cover: terminal excerpt: Level up your JavaScript logging with these `console.log()` tips and tricks. diff --git a/articles/s/cookies-local-storage-session.md b/articles/s/cookies-local-storage-session.md index 3b1746966..b30181258 100644 --- a/articles/s/cookies-local-storage-session.md +++ b/articles/s/cookies-local-storage-session.md @@ -2,7 +2,8 @@ title: What is the difference between cookies, local storage, and session storage? shortTitle: Cookies, local storage, and session storage type: question -tags: [javascript,browser,webdev] +language: javascript +tags: [browser,webdev] author: chalarangelo cover: three-vases excerpt: Learn the difference between cookies, local storage and session storage and start using the correct option for your needs. diff --git a/articles/s/copy-text-to-clipboard-with-javascript.md b/articles/s/copy-text-to-clipboard-with-javascript.md index 93c26aa98..d5280d5b6 100644 --- a/articles/s/copy-text-to-clipboard-with-javascript.md +++ b/articles/s/copy-text-to-clipboard-with-javascript.md @@ -2,7 +2,8 @@ title: How can I copy text to clipboard with JavaScript? shortTitle: Copy text to clipboard type: question -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: typing excerpt: Learn how to programmatically copy text to clipboard with a few lines of JavaScript and level up your web development skills. diff --git a/articles/s/cors-explained.md b/articles/s/cors-explained.md index 4750a36d0..b6df95bbe 100644 --- a/articles/s/cors-explained.md +++ b/articles/s/cors-explained.md @@ -2,7 +2,8 @@ title: What is CORS? shortTitle: CORS explained type: question -tags: [javascript,browser,webdev] +language: javascript +tags: [browser,webdev] author: chalarangelo cover: chill-surfing excerpt: CORS (Cross-Origin Resource Sharing) trips up many developers, but it's pretty easy to wrap your head around. diff --git a/articles/s/css-centering.md b/articles/s/css-centering.md index c3959314f..cb715bea2 100644 --- a/articles/s/css-centering.md +++ b/articles/s/css-centering.md @@ -2,7 +2,8 @@ title: 4 ways to center content with CSS shortTitle: Centering content with CSS type: story -tags: [css,layout] +language: css +tags: [layout] author: chalarangelo cover: mountain-lake excerpt: Centering content with CSS might often feel tricky. Here are 4 easy tricks you can use in your code today. diff --git a/articles/s/css-clamp.md b/articles/s/css-clamp.md index b50afc198..d8c08f597 100644 --- a/articles/s/css-clamp.md +++ b/articles/s/css-clamp.md @@ -2,7 +2,8 @@ title: "Tip: Use clamp() in CSS for responsive typography" shortTitle: CSS clamp() type: tip -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: strawberries excerpt: Implement responsive typography with the CSS clamp() function. diff --git a/articles/s/css-code-reviews.md b/articles/s/css-code-reviews.md index 216e2872d..f6bd35d1a 100644 --- a/articles/s/css-code-reviews.md +++ b/articles/s/css-code-reviews.md @@ -2,7 +2,8 @@ title: How do you review CSS code in Pull Requests? shortTitle: CSS code reviews type: story -tags: [css,webdev] +language: css +tags: [webdev] author: chalarangelo cover: green-css excerpt: Reviewing CSS code is a skill that takes time to master. Here are some tips from my personal experience to help you get started. diff --git a/articles/s/css-current-color.md b/articles/s/css-current-color.md index ec971453c..29a799975 100644 --- a/articles/s/css-current-color.md +++ b/articles/s/css-current-color.md @@ -1,7 +1,8 @@ --- title: The currentColor CSS keyword type: tip -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: picking-berries excerpt: The `currentColor` CSS keyword is a nifty alternative to custom properties for simple use cases. diff --git a/articles/s/css-easing-variables.md b/articles/s/css-easing-variables.md index 7d6d377b5..2dd16da19 100644 --- a/articles/s/css-easing-variables.md +++ b/articles/s/css-easing-variables.md @@ -2,7 +2,8 @@ title: "Tip: CSS easing variables" shortTitle: CSS easing variables type: tip -tags: [css,animation] +language: css +tags: [animation] author: chalarangelo cover: curve excerpt: Learn how to use the `cubic-bezier()` class of easing functions and create beautiful animations that stand out. diff --git a/articles/s/css-footer-at-the-bottom.md b/articles/s/css-footer-at-the-bottom.md index c84cbe5d5..a9954a4ae 100644 --- a/articles/s/css-footer-at-the-bottom.md +++ b/articles/s/css-footer-at-the-bottom.md @@ -2,7 +2,8 @@ title: How can I ensure the footer is always at the bottom of the page? shortTitle: Footer at the bottom type: question -tags: [css,layout] +language: css +tags: [layout] author: chalarangelo cover: flower-shape-sunset excerpt: Make sure the footer stays at the bottom of the page, instead of floating up when the content is too short. diff --git a/articles/s/css-inherited-properties-cheatsheet.md b/articles/s/css-inherited-properties-cheatsheet.md index cc1e92f12..b3585e7fe 100644 --- a/articles/s/css-inherited-properties-cheatsheet.md +++ b/articles/s/css-inherited-properties-cheatsheet.md @@ -2,7 +2,8 @@ title: CSS inherited properties cheatsheet shortTitle: Inherited properties type: cheatsheet -tags: [css,layout] +language: css +tags: [layout] author: chalarangelo cover: half-trees excerpt: A quick reference for inherited CSS properties. diff --git a/articles/s/css-nested-border-radius.md b/articles/s/css-nested-border-radius.md index 0f2d35a41..d4fd07980 100644 --- a/articles/s/css-nested-border-radius.md +++ b/articles/s/css-nested-border-radius.md @@ -2,7 +2,8 @@ title: "Tip: Perfect nested border radius in CSS" shortTitle: Perfect nested border radius in CSS type: tip -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: rocky-beach-waves excerpt: Nesting elements with rounded borders can look very wrong if not done correctly. Here's a quick tip on how to do it right. diff --git a/articles/s/css-pseudo-classes.md b/articles/s/css-pseudo-classes.md index abe82e5db..65b3a7787 100644 --- a/articles/s/css-pseudo-classes.md +++ b/articles/s/css-pseudo-classes.md @@ -2,7 +2,8 @@ title: What are CSS pseudo-classes? shortTitle: CSS pseudo-classes type: question -tags: [css,webdev] +language: css +tags: [webdev] author: chalarangelo cover: orange-flower excerpt: Learn how to use CSS pseudo-classes to style an element based on changes to its state. diff --git a/articles/s/css-reset.md b/articles/s/css-reset.md index a6591ba71..2eef4a843 100644 --- a/articles/s/css-reset.md +++ b/articles/s/css-reset.md @@ -1,7 +1,8 @@ --- title: CSS Reset type: story -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: pink-flower-tree excerpt: A short, opinionated CSS reset to make your websites look great everywhere. diff --git a/articles/s/css-root-vs-html.md b/articles/s/css-root-vs-html.md index 6f4d352f4..0272490b8 100644 --- a/articles/s/css-root-vs-html.md +++ b/articles/s/css-root-vs-html.md @@ -2,7 +2,8 @@ title: What's the difference between :root and html in CSS? shortTitle: :root vs html type: story -tags: [css,layout,selector] +language: css +tags: [layout,selector] author: chalarangelo cover: tree-roots excerpt: The CSS selectors used to target the root element of an HTML share some similarities, but they also have some differences. diff --git a/articles/s/css-select-any-link.md b/articles/s/css-select-any-link.md index 42816642e..55ce10471 100644 --- a/articles/s/css-select-any-link.md +++ b/articles/s/css-select-any-link.md @@ -2,7 +2,8 @@ title: "Tip: Select any link with CSS" shortTitle: "CSS :any-link pseudo-class" type: tip -tags: [css,visual,interactivity] +language: css +tags: [visual,interactivity] author: chalarangelo cover: round-leaves excerpt: You can use a CSS pseudo-class selector to style all links in a page, without worrying if they have been visited or not. diff --git a/articles/s/css-style-default-links.md b/articles/s/css-style-default-links.md index 5e6e07d37..f7e4000dc 100644 --- a/articles/s/css-style-default-links.md +++ b/articles/s/css-style-default-links.md @@ -2,7 +2,8 @@ title: "Tip: Style links without a class" shortTitle: Style default links type: tip -tags: [css,visual,interactivity] +language: css +tags: [visual,interactivity] author: chalarangelo cover: citrus-drink excerpt: A short summary of your story up to 180 characters long. diff --git a/articles/s/css-unitless-line-height.md b/articles/s/css-unitless-line-height.md index e31fe38e5..10c71b2ce 100644 --- a/articles/s/css-unitless-line-height.md +++ b/articles/s/css-unitless-line-height.md @@ -2,7 +2,8 @@ title: Why should line-height be unitless in CSS? shortTitle: Unitless line height type: tip -tags: [css,layout,visual] +language: css +tags: [layout,visual] author: chalarangelo cover: gold-typewriter excerpt: You might have heard that `line-height` should be unitless, but do you know why? diff --git a/articles/s/css-units-cheatsheet.md b/articles/s/css-units-cheatsheet.md index 03c8263e2..663442bac 100644 --- a/articles/s/css-units-cheatsheet.md +++ b/articles/s/css-units-cheatsheet.md @@ -1,7 +1,8 @@ --- title: CSS units Cheat Sheet type: cheatsheet -tags: [css,layout,cheatsheet] +language: css +tags: [layout,cheatsheet] author: chalarangelo cover: measuring excerpt: Learn everything you need to know about CSS units with this handy cheatsheet. diff --git a/articles/s/css-variables.md b/articles/s/css-variables.md index 34a740811..9428461d0 100644 --- a/articles/s/css-variables.md +++ b/articles/s/css-variables.md @@ -2,7 +2,8 @@ title: What are CSS variables and where can I use them? shortTitle: CSS variables type: question -tags: [css,visual,layout] +language: css +tags: [visual,layout] author: chalarangelo cover: css-variables excerpt: Learn how CSS custom properties (CSS variables) work and what you can use them for in your code and designs. diff --git a/articles/s/custom-file-download-names.md b/articles/s/custom-file-download-names.md index f350b72d8..891e5b92a 100644 --- a/articles/s/custom-file-download-names.md +++ b/articles/s/custom-file-download-names.md @@ -2,7 +2,8 @@ title: "Tip: Customize the names of downloadable files" shortTitle: Customize the names of downloadable files type: tip -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: hard-disk excerpt: Learn what HTML5 attribute you can use to customize the names of your downloadable files with this quick tip. diff --git a/articles/s/detect-caps-lock-is-on.md b/articles/s/detect-caps-lock-is-on.md index cada92994..c24793ee9 100644 --- a/articles/s/detect-caps-lock-is-on.md +++ b/articles/s/detect-caps-lock-is-on.md @@ -2,7 +2,8 @@ title: How can I detect if Caps Lock is on with JavaScript? shortTitle: Detect Caps Lock type: question -tags: [javascript,browser,event] +language: javascript +tags: [browser,event] author: chalarangelo cover: keyboard excerpt: If you need to check if Caps Lock is on when the user is typing in the browser, JavaScript's got you covered. diff --git a/articles/s/escaping-tutorial-hell.md b/articles/s/escaping-tutorial-hell.md index b756827a8..02743e50a 100644 --- a/articles/s/escaping-tutorial-hell.md +++ b/articles/s/escaping-tutorial-hell.md @@ -1,7 +1,7 @@ --- title: Escaping tutorial hell type: story -tags: [career,webdev,programming,jobs] +tags: [webdev,career,programming,jobs] author: chalarangelo cover: campfire excerpt: Many beginners get stuck in tutorial hell without even realizing. Here are 4 simple ways to escape tutorial hell and get back to learning. diff --git a/articles/s/eslint-refactor-for-in.md b/articles/s/eslint-refactor-for-in.md index b030b839a..6dba7e185 100644 --- a/articles/s/eslint-refactor-for-in.md +++ b/articles/s/eslint-refactor-for-in.md @@ -2,7 +2,8 @@ title: "Tip: Refactoring your for...in loops to avoid ESLint warnings" shortTitle: Refactoring for...in loops to avoid ESLint warnings type: tip -tags: [javascript,array,iterator,eslint] +language: javascript +tags: [array,iterator,eslint] author: chalarangelo cover: typing excerpt: ESLint is a really useful tool, but sometimes it gets in the way. Learn how to refactor code to get rid of a common warning. diff --git a/articles/s/flexbox-cheatsheet.md b/articles/s/flexbox-cheatsheet.md index 9e093c2be..2b89a43d4 100644 --- a/articles/s/flexbox-cheatsheet.md +++ b/articles/s/flexbox-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Flexbox Cheat Sheet type: cheatsheet -tags: [css,layout,flexbox,cheatsheet] +language: css +tags: [layout,flexbox,cheatsheet] author: chalarangelo cover: frames excerpt: Flexbox allows you to create fluid layouts easily. If you are constantly looking up how it works, this handy cheatsheet is all you need. diff --git a/articles/s/git-aliases.md b/articles/s/git-aliases.md index 170bd02dd..fb88fc5ec 100644 --- a/articles/s/git-aliases.md +++ b/articles/s/git-aliases.md @@ -1,7 +1,8 @@ --- title: Git aliases type: cheatsheet -tags: [git,configuration,cheatsheet] +language: git +tags: [configuration,cheatsheet] author: chalarangelo cover: organizer excerpt: Increase your productivity by creating aliases for many common git operations. diff --git a/articles/s/git-commit-different-date.md b/articles/s/git-commit-different-date.md index b79c01bc8..4c57b0e02 100644 --- a/articles/s/git-commit-different-date.md +++ b/articles/s/git-commit-different-date.md @@ -2,7 +2,8 @@ title: "Tip: Create a commit with a different date" shortTitle: Create a commit with a different date type: tip -tags: [git,commit] +language: git +tags: [commit] author: chalarangelo cover: ice excerpt: Ever needed to create a git commit with a different date? Here's a quick and easy way to do it. diff --git a/articles/s/git-fast-forward.md b/articles/s/git-fast-forward.md index 758429b65..bb51fc28a 100644 --- a/articles/s/git-fast-forward.md +++ b/articles/s/git-fast-forward.md @@ -2,7 +2,8 @@ title: How does Git's fast-forward mode work? shortTitle: Git fast-forward type: question -tags: [git,branch] +language: git +tags: [branch] author: chalarangelo cover: boats excerpt: Learn about Git's fast-forward mode works and its benefits when mergin branches, so you can decide if it's a good fit for you and your team. diff --git a/articles/s/github-co-authors.md b/articles/s/github-co-authors.md index 74e860755..1d1e7aa4a 100644 --- a/articles/s/github-co-authors.md +++ b/articles/s/github-co-authors.md @@ -2,7 +2,8 @@ title: "Tip: How to add multiple authors to a commit" shortTitle: Add multiple authors to a commit type: tip -tags: [git,github,programming,webdev] +language: git +tags: [github,programming,webdev] author: chalarangelo cover: book-chair excerpt: Learn how to add multiple authors to a git commit with this quick and easy tip. diff --git a/articles/s/html-head-icons.md b/articles/s/html-head-icons.md index 1039100f2..b2a33b62b 100644 --- a/articles/s/html-head-icons.md +++ b/articles/s/html-head-icons.md @@ -2,7 +2,8 @@ title: Recommended HTML head icon tags shortTitle: HTML favicons template type: story -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: boutique-home-office-3 excerpt: Ensure your HTML documents have a proper favicon by including these lines in your `` element. diff --git a/articles/s/html-head-links.md b/articles/s/html-head-links.md index 84be62111..8a4b58ab6 100644 --- a/articles/s/html-head-links.md +++ b/articles/s/html-head-links.md @@ -2,7 +2,8 @@ title: Recommended HTML head links shortTitle: HTML head links template type: story -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: boutique-home-office-4 excerpt: Make your HTML documents more SEO-friendly by including these lines in your `` element. diff --git a/articles/s/html-head-social-tags.md b/articles/s/html-head-social-tags.md index 7e9ae9d27..3c9b65e9f 100644 --- a/articles/s/html-head-social-tags.md +++ b/articles/s/html-head-social-tags.md @@ -2,7 +2,8 @@ title: Recommended social tags for HTML head shortTitle: HTML social tags template type: story -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: boutique-home-office-2 excerpt: Ensure your HTML documents can be shared on social media by including these lines in your `` element. diff --git a/articles/s/html-recommended-minimum-head.md b/articles/s/html-recommended-minimum-head.md index e063ed029..1adf87622 100644 --- a/articles/s/html-recommended-minimum-head.md +++ b/articles/s/html-recommended-minimum-head.md @@ -2,7 +2,8 @@ title: Recommended minimum HTML head shortTitle: HTML head template type: story -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: boutique-home-office-1 excerpt: Ensure your HTML documents are properly structured by including these lines in your `` element. diff --git a/articles/s/javascript-add-key-value-pair-to-object.md b/articles/s/javascript-add-key-value-pair-to-object.md index 923382acf..0acf28bc1 100644 --- a/articles/s/javascript-add-key-value-pair-to-object.md +++ b/articles/s/javascript-add-key-value-pair-to-object.md @@ -2,7 +2,8 @@ title: How can I add a key-value pair to a JavaScript object? shortTitle: Add key-value pair to object type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: pineapple-laptop excerpt: Adding a key-value pair to a JavaScript object is straightforward, yet there are multiple ways available to do so. diff --git a/articles/s/javascript-array-comparison.md b/articles/s/javascript-array-comparison.md index ff9cc1608..a74d35345 100644 --- a/articles/s/javascript-array-comparison.md +++ b/articles/s/javascript-array-comparison.md @@ -2,7 +2,8 @@ title: How do I compare two arrays in JavaScript? shortTitle: JavaScript array comparison type: question -tags: [javascript,array,comparison] +language: javascript +tags: [array,comparison] author: chalarangelo cover: coconuts excerpt: Learn how you can compare two arrays in JavaScript using various different techniques. diff --git a/articles/s/javascript-array-includes-value.md b/articles/s/javascript-array-includes-value.md index 5e1cc5d55..7ceb55ac4 100644 --- a/articles/s/javascript-array-includes-value.md +++ b/articles/s/javascript-array-includes-value.md @@ -2,7 +2,8 @@ title: How can I check if a JavaScript array includes a specific value? shortTitle: JavaScript array includes value type: question -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: bridge-drop excerpt: Checking if an array includes a specific value is pretty straightforward, except when it comes to objects. diff --git a/articles/s/javascript-arrow-function-event-listeners.md b/articles/s/javascript-arrow-function-event-listeners.md index ffbbb2775..379799b78 100644 --- a/articles/s/javascript-arrow-function-event-listeners.md +++ b/articles/s/javascript-arrow-function-event-listeners.md @@ -2,7 +2,8 @@ title: Can I use an arrow function as the callback for an event listener in JavaScript? shortTitle: Arrow function as callback for event listener type: question -tags: [javascript,browser,event,function] +language: javascript +tags: [browser,event,function] author: chalarangelo cover: coffee-float excerpt: Learn the differences between JavaScript ES6 arrow functions and regular functions and how they affect event listener callbacks. diff --git a/articles/s/javascript-arrow-functions.md b/articles/s/javascript-arrow-functions.md index 4831437bd..981c8adc7 100644 --- a/articles/s/javascript-arrow-functions.md +++ b/articles/s/javascript-arrow-functions.md @@ -2,7 +2,8 @@ title: Introduction to arrow functions in JavaScript shortTitle: Arrow functions introduction type: story -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: arrow-functions excerpt: JavaScript arrow functions are a very useful tool to learn and master. Here's a complete introduction to everything you need to know. diff --git a/articles/s/javascript-arrow-regular-function-differences.md b/articles/s/javascript-arrow-regular-function-differences.md index b6b00e820..afd0d85b4 100644 --- a/articles/s/javascript-arrow-regular-function-differences.md +++ b/articles/s/javascript-arrow-regular-function-differences.md @@ -2,7 +2,8 @@ title: What are the differences between arrow functions and regular functions in JavaScript? shortTitle: Arrow functions vs regular functions type: question -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: fallen-leaves excerpt: JavaScript's arrow functions are seemingly the same as regular functions, but there are some important differences you need to know. diff --git a/articles/s/javascript-async-array-loops.md b/articles/s/javascript-async-array-loops.md index cc96dd4d8..e66838ef6 100644 --- a/articles/s/javascript-async-array-loops.md +++ b/articles/s/javascript-async-array-loops.md @@ -2,7 +2,8 @@ title: Asynchronous array loops in JavaScript shortTitle: Asynchronous array loops type: story -tags: [javascript,array,function,promise] +language: javascript +tags: [array,function,promise] author: chalarangelo cover: sunflowers excerpt: Asynchronously looping over arrays in JavaScript comes with a few caveats you should watch out for. diff --git a/articles/s/javascript-await-timeout.md b/articles/s/javascript-await-timeout.md index e11ddf04a..3965ad77c 100644 --- a/articles/s/javascript-await-timeout.md +++ b/articles/s/javascript-await-timeout.md @@ -2,7 +2,8 @@ title: How can I add a timeout to a promise in JavaScript? shortTitle: Promise timeout type: question -tags: [javascript,promise,timeout,class] +language: javascript +tags: [promise,timeout,class] author: chalarangelo cover: walking excerpt: Oftentimes you might need to add a timeout to a promise in JavaScript. Learn how to do this and more in this short guide. diff --git a/articles/s/javascript-blank-value.md b/articles/s/javascript-blank-value.md index 3abb913f6..164b23e12 100644 --- a/articles/s/javascript-blank-value.md +++ b/articles/s/javascript-blank-value.md @@ -2,7 +2,8 @@ title: How can I check for a blank value in JavaScript? shortTitle: Value is blank type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: workspace-with-speaker excerpt: JavaScript doesn't have a built-in way to check if a value is blank, but it's easy to create one. diff --git a/articles/s/javascript-boolean-function.md b/articles/s/javascript-boolean-function.md index e8ab49a0d..20a6c038b 100644 --- a/articles/s/javascript-boolean-function.md +++ b/articles/s/javascript-boolean-function.md @@ -2,7 +2,8 @@ title: Where and how can I use the Boolean function in JavaScript? shortTitle: Boolean function use-cases type: question -tags: [javascript,function,type] +language: javascript +tags: [function,type] author: chalarangelo cover: rocky-lake excerpt: JavaScript's Boolean function can be used for truth-checking data among other things. Learn how to use it and level up your code today. diff --git a/articles/s/javascript-boolean-trap.md b/articles/s/javascript-boolean-trap.md index 0bc955220..b573302ed 100644 --- a/articles/s/javascript-boolean-trap.md +++ b/articles/s/javascript-boolean-trap.md @@ -2,7 +2,8 @@ title: Boolean traps and how to avoid them shortTitle: Boolean traps type: story -tags: [javascript,function,type,boolean] +language: javascript +tags: [function,type,boolean] author: chalarangelo cover: lighthouse excerpt: Boolean traps can cause readability and maintainability issues in your code. Learn what they are, how to spot and fix them in this article. diff --git a/articles/s/javascript-callbacks.md b/articles/s/javascript-callbacks.md index 0389c4ce0..9088577f0 100644 --- a/articles/s/javascript-callbacks.md +++ b/articles/s/javascript-callbacks.md @@ -2,7 +2,8 @@ title: A cautionary tale about JavaScript callbacks shortTitle: Callback pitfalls type: story -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: rabbit-call excerpt: JavaScript callbacks are especially tricky when you're not careful. Take a deeper dive into potential issues and how to avoid them. diff --git a/articles/s/javascript-classical-vs-prototypal-inheritance.md b/articles/s/javascript-classical-vs-prototypal-inheritance.md index bf00cf471..50d2f94ad 100644 --- a/articles/s/javascript-classical-vs-prototypal-inheritance.md +++ b/articles/s/javascript-classical-vs-prototypal-inheritance.md @@ -2,7 +2,8 @@ title: How does JavaScript's prototypal inheritance differ from classical inheritance? shortTitle: Prototypal vs classical inheritance type: question -tags: [javascript,object,class] +language: javascript +tags: [object,class] author: chalarangelo cover: last-light excerpt: Understanding the difference between these two object-oriented programming paradigms is key to taking your skills to the next level. diff --git a/articles/s/javascript-closures.md b/articles/s/javascript-closures.md index 8fc458488..c176915eb 100644 --- a/articles/s/javascript-closures.md +++ b/articles/s/javascript-closures.md @@ -2,7 +2,8 @@ title: What are JavaScript closures? shortTitle: Closures introduction type: question -tags: [javascript,function,closure] +language: javascript +tags: [function,closure] author: chalarangelo cover: cherry-trees excerpt: Learn and understand closures, a core concept in JavaScript programming, and level up your code. diff --git a/articles/s/javascript-copy-array.md b/articles/s/javascript-copy-array.md index c6dcf3195..f7bad403f 100644 --- a/articles/s/javascript-copy-array.md +++ b/articles/s/javascript-copy-array.md @@ -2,7 +2,8 @@ title: How can I clone an array in JavaScript? shortTitle: Clone an array type: question -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: colorful-plastic excerpt: Pick up a few new tricks which you can use to clone arrays in JavaScript. diff --git a/articles/s/javascript-date-comparison.md b/articles/s/javascript-date-comparison.md index 1e2e55dc9..bc02aae9b 100644 --- a/articles/s/javascript-date-comparison.md +++ b/articles/s/javascript-date-comparison.md @@ -2,7 +2,8 @@ title: How do I compare two dates in JavaScript? shortTitle: Date comparison type: question -tags: [javascript,date,comparison] +language: javascript +tags: [date,comparison] author: chalarangelo cover: pineapple-at-work excerpt: Learn how you can compare two dates in JavaScript using various different techniques. diff --git a/articles/s/javascript-deep-freeze-object.md b/articles/s/javascript-deep-freeze-object.md index efab9365c..1409ee333 100644 --- a/articles/s/javascript-deep-freeze-object.md +++ b/articles/s/javascript-deep-freeze-object.md @@ -2,7 +2,8 @@ title: How can I deep freeze an object in JavaScript? shortTitle: Deep freeze object type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: frozen-globe excerpt: Learn how mutability works in JavaScript, its applications to objects and how you can properly freeze them to make them constant. diff --git a/articles/s/javascript-destructuring-assignment.md b/articles/s/javascript-destructuring-assignment.md index 72a1ceb88..fc0d94fe5 100644 --- a/articles/s/javascript-destructuring-assignment.md +++ b/articles/s/javascript-destructuring-assignment.md @@ -2,7 +2,8 @@ title: Where and how can I use the destructuring assignment syntax in JavaScript? shortTitle: Destructuring assignment introduction type: question -tags: [javascript,array,object] +language: javascript +tags: [array,object] author: chalarangelo cover: building-blocks excerpt: Learn the basics of the destructuring assignment syntax in JavaScript ES6 and improve your code with this easy guide. diff --git a/articles/s/javascript-empty-array.md b/articles/s/javascript-empty-array.md index 67f2e54f0..c1d2cf031 100644 --- a/articles/s/javascript-empty-array.md +++ b/articles/s/javascript-empty-array.md @@ -2,7 +2,8 @@ title: How do I empty an array in JavaScript? shortTitle: Empty an array type: question -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: coconuts excerpt: You can use a lot of different techniques to empty an array in JavaScript. See which ones best suits your needs with this quick guide. diff --git a/articles/s/javascript-encodeuri-encodeuricomponent.md b/articles/s/javascript-encodeuri-encodeuricomponent.md index 49b76c1c8..cf0903618 100644 --- a/articles/s/javascript-encodeuri-encodeuricomponent.md +++ b/articles/s/javascript-encodeuri-encodeuricomponent.md @@ -2,7 +2,8 @@ title: What is the difference between encodeURI() and encodeURIComponent() in JavaScript? shortTitle: encodeURI() vs encodeURIComponent() type: question -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: laptop-view excerpt: JavaScript provides two methods for encoding characters to URL-safe strings. Do you know when to use each one? diff --git a/articles/s/javascript-enum.md b/articles/s/javascript-enum.md index d138c6156..7246d6b34 100644 --- a/articles/s/javascript-enum.md +++ b/articles/s/javascript-enum.md @@ -2,7 +2,8 @@ title: How can I define an enum in JavaScript? shortTitle: Enum implementation type: question -tags: [javascript,object,class,symbol,generator] +language: javascript +tags: [object,class,symbol,generator] author: chalarangelo cover: book-chair excerpt: Enums are part of TypeScript, but what about defining enums in plain old JavaScript? Here are a few way you can do that. diff --git a/articles/s/javascript-equality.md b/articles/s/javascript-equality.md index de3544b38..f3f076782 100644 --- a/articles/s/javascript-equality.md +++ b/articles/s/javascript-equality.md @@ -2,7 +2,8 @@ title: What is the difference between JavaScript's equality operators? shortTitle: JavaScript equality operators type: question -tags: [javascript,type,comparison] +language: javascript +tags: [type,comparison] author: chalarangelo cover: beach-pineapple excerpt: Learn all you need to know about the differences between JavaScript's double equals and triple equals operators. diff --git a/articles/s/javascript-event-bubbling-capturing-delegation.md b/articles/s/javascript-event-bubbling-capturing-delegation.md index 148cceae3..626f6bd62 100644 --- a/articles/s/javascript-event-bubbling-capturing-delegation.md +++ b/articles/s/javascript-event-bubbling-capturing-delegation.md @@ -2,7 +2,8 @@ title: Understanding event bubbling, capturing and delegation in JavaScript shortTitle: Event bubbling, capturing and delegation type: story -tags: [javascript,browser,event] +language: javascript +tags: [browser,event] author: chalarangelo cover: fishermen excerpt: Understand how events work in JavaScript and learn when to use event bubbling, event capturing and event delegation with this short guide. diff --git a/articles/s/javascript-event-loop-explained.md b/articles/s/javascript-event-loop-explained.md index 965249ce0..237d8c09a 100644 --- a/articles/s/javascript-event-loop-explained.md +++ b/articles/s/javascript-event-loop-explained.md @@ -2,7 +2,8 @@ title: What is the Event Loop in JavaScript? shortTitle: Event loop explained type: question -tags: [javascript,browser,event] +language: javascript +tags: [browser,event] author: chalarangelo cover: tranquility excerpt: The Event Loop is a source of confusion for many developers, but it's a fundamental piece of the JavaScript engine. diff --git a/articles/s/javascript-evil-closures.md b/articles/s/javascript-evil-closures.md index 405bfc100..553c5a490 100644 --- a/articles/s/javascript-evil-closures.md +++ b/articles/s/javascript-evil-closures.md @@ -2,7 +2,8 @@ title: Are JavaScript closures inherently evil? shortTitle: Closures and hidden state type: story -tags: [javascript,function,closure] +language: javascript +tags: [function,closure] author: chalarangelo cover: silver-flat-screen excerpt: Closures are used frequently, yet often misunderstood. Understanding them in depth is crucial to be able to write clean, maintainable code. diff --git a/articles/s/javascript-expression-statement.md b/articles/s/javascript-expression-statement.md index c318a888f..67f69dc47 100644 --- a/articles/s/javascript-expression-statement.md +++ b/articles/s/javascript-expression-statement.md @@ -2,7 +2,8 @@ title: What is the difference between an expression and a statement in JavaScript? shortTitle: Expressions and statements type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: forest-balcony excerpt: JavaScript distinguishes expressions and statements. Learn their differences in this short article. diff --git a/articles/s/javascript-for-in-for-of-foreach.md b/articles/s/javascript-for-in-for-of-foreach.md index f422228e0..37d85c415 100644 --- a/articles/s/javascript-for-in-for-of-foreach.md +++ b/articles/s/javascript-for-in-for-of-foreach.md @@ -2,7 +2,8 @@ title: What is the difference between JavaScript's for...in, for...of and forEach? shortTitle: JavaScript iteration methods comparison type: question -tags: [javascript,array,object,iterator] +language: javascript +tags: [array,object,iterator] author: chalarangelo cover: lake-loop excerpt: Learn the differences between the three most commonly used iteration methods in JavaScript, that often confuse beginners and veterans alike. diff --git a/articles/s/javascript-for-loop-early-break.md b/articles/s/javascript-for-loop-early-break.md index 0fc474df2..66a7b4fd7 100644 --- a/articles/s/javascript-for-loop-early-break.md +++ b/articles/s/javascript-for-loop-early-break.md @@ -2,7 +2,8 @@ title: "Tip: Use JavaScript for loops if you need to break out early" shortTitle: For loops for early breaking type: tip -tags: [javascript,array,loop] +language: javascript +tags: [array,loop] author: chalarangelo cover: armchair excerpt: Iteration in JavaScript can be done a handfuld of ways, most often using array methods, but sometimes a `for` loop is the best option. diff --git a/articles/s/javascript-function-call-apply-bind.md b/articles/s/javascript-function-call-apply-bind.md index 381422e77..c811f2f81 100644 --- a/articles/s/javascript-function-call-apply-bind.md +++ b/articles/s/javascript-function-call-apply-bind.md @@ -2,7 +2,8 @@ title: JavaScript function methods - call(), apply() and bind() shortTitle: Function methods - call(), apply() and bind() type: story -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: canoe excerpt: Learn everything you need to know about JavaScript's `call()`, `apply()` and `bind()` in this short guide. diff --git a/articles/s/javascript-higher-order-functions.md b/articles/s/javascript-higher-order-functions.md index 92c4cf6da..09eaf8c79 100644 --- a/articles/s/javascript-higher-order-functions.md +++ b/articles/s/javascript-higher-order-functions.md @@ -2,7 +2,8 @@ title: Understanding higher-order functions in JavaScript shortTitle: Higher-order functions type: story -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: rock-climbing excerpt: Learn everything you need to know about higher-order functions with this short guide and level up your programming skills. diff --git a/articles/s/javascript-iife.md b/articles/s/javascript-iife.md index 041ae8a1d..1d485f511 100644 --- a/articles/s/javascript-iife.md +++ b/articles/s/javascript-iife.md @@ -2,7 +2,8 @@ title: What is an IIFE in JavaScript? shortTitle: IIFE introduction type: question -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: tropical-waterfall excerpt: An Immediately Invoked Function Expression (IIFE) is a JavaScript trick that trips up many developers. Here's what you need to know. diff --git a/articles/s/javascript-index-for-of-loop.md b/articles/s/javascript-index-for-of-loop.md index c1689f2e7..5084d3966 100644 --- a/articles/s/javascript-index-for-of-loop.md +++ b/articles/s/javascript-index-for-of-loop.md @@ -2,7 +2,8 @@ title: "Tip: Get the index of an array item in a JavaScript for...of loop" shortTitle: Array index in for...of loops type: tip -tags: [javascript,array,iterator] +language: javascript +tags: [array,iterator] author: chalarangelo cover: cave-view excerpt: Did you know you can get the index of an array item in a JavaScript for...of loop? Learn how with this bite-sized tip. diff --git a/articles/s/javascript-iterable-to-array.md b/articles/s/javascript-iterable-to-array.md index 0ef951d15..48799ae25 100644 --- a/articles/s/javascript-iterable-to-array.md +++ b/articles/s/javascript-iterable-to-array.md @@ -2,7 +2,8 @@ title: How do I convert an iterable to an array in JavaScript? shortTitle: Iterable to array type: question -tags: [javascript,object,array,string] +language: javascript +tags: [object,array,string] author: chalarangelo cover: waves excerpt: Learn how to use the JavaScript ES6 spread syntax to converting iterables to arrays and level up your code today. diff --git a/articles/s/javascript-iterators.md b/articles/s/javascript-iterators.md index e2d376f40..b8d5cd7a9 100644 --- a/articles/s/javascript-iterators.md +++ b/articles/s/javascript-iterators.md @@ -2,7 +2,8 @@ title: What are JavaScript Iterators and where can I use them? shortTitle: JavaScript iterators introduction type: question -tags: [javascript,array,object,iterator] +language: javascript +tags: [array,object,iterator] author: chalarangelo cover: balloons excerpt: Learn how JavaScript's iterators work and how you can use them to level up your projects by understanding these short code examples. diff --git a/articles/s/javascript-json-stringify-pick-keys.md b/articles/s/javascript-json-stringify-pick-keys.md index 7baf239b6..65db724a3 100644 --- a/articles/s/javascript-json-stringify-pick-keys.md +++ b/articles/s/javascript-json-stringify-pick-keys.md @@ -2,7 +2,8 @@ title: "Tip: Serialize specific properties from a JSON object" shortTitle: Selective property serialization type: tip -tags: [javascript,object,json] +language: javascript +tags: [object,json] author: chalarangelo cover: coffee-drip excerpt: Have you ever wanted to serialize an object but only include certain keys? Turns out JavaScript provides an easy way to do this! diff --git a/articles/s/javascript-listen-once.md b/articles/s/javascript-listen-once.md index f747ea555..b3cf0588f 100644 --- a/articles/s/javascript-listen-once.md +++ b/articles/s/javascript-listen-once.md @@ -2,7 +2,8 @@ title: How can I execute an event handler at most once? shortTitle: Execute event handler only once type: question -tags: [javascript,browser,event] +language: javascript +tags: [browser,event] cover: dog-waiting excerpt: Learn how to attach an event handler to events that is executed at most once in this JavaScript article. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/javascript-make-iterable.md b/articles/s/javascript-make-iterable.md index 8346a86c5..700c6fb26 100644 --- a/articles/s/javascript-make-iterable.md +++ b/articles/s/javascript-make-iterable.md @@ -2,7 +2,8 @@ title: "Tip: Make any JavaScript value iterable" shortTitle: Make any value iterable type: tip -tags: [javascript,array,iterator,generator] +language: javascript +tags: [array,iterator,generator] author: chalarangelo cover: colorful-plastic excerpt: Did you know you can define an iterator for any JavaScript value? This quick tip will show you how. diff --git a/articles/s/javascript-memoization.md b/articles/s/javascript-memoization.md index 0fb0f6d9e..2e96cadbd 100644 --- a/articles/s/javascript-memoization.md +++ b/articles/s/javascript-memoization.md @@ -2,7 +2,8 @@ title: Where and how can I use memoization in JavaScript? shortTitle: Memoization introduction type: question -tags: [javascript,function,memoization] +language: javascript +tags: [function,memoization] author: chalarangelo cover: cherry-trees excerpt: Learn different ways to memoize function calls in JavaScript as well as when to use memoization to get the best performance results. diff --git a/articles/s/javascript-merge-arrays.md b/articles/s/javascript-merge-arrays.md index f56bc92c3..f80f16022 100644 --- a/articles/s/javascript-merge-arrays.md +++ b/articles/s/javascript-merge-arrays.md @@ -2,7 +2,8 @@ title: How do I merge two arrays in JavaScript? shortTitle: Merge arrays type: question -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: arrays excerpt: Arrays are one of the most used data types in any programming language. Learn how to merge two arrays in JavaScript with this short guide. diff --git a/articles/s/javascript-modify-url-without-reload.md b/articles/s/javascript-modify-url-without-reload.md index cea26d067..dcf4ab061 100644 --- a/articles/s/javascript-modify-url-without-reload.md +++ b/articles/s/javascript-modify-url-without-reload.md @@ -2,7 +2,8 @@ title: How do I use JavaScript to modify the URL without reloading the page? shortTitle: Modify URL without reloading type: question -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: compass excerpt: Learn all of the options JavaScript provides for modifying the URL of the current page in the browser without reloading the page. diff --git a/articles/s/javascript-module-cheatsheet.md b/articles/s/javascript-module-cheatsheet.md index c2545c599..472afbebf 100644 --- a/articles/s/javascript-module-cheatsheet.md +++ b/articles/s/javascript-module-cheatsheet.md @@ -1,7 +1,8 @@ --- title: JavaScript modules Cheat Sheet type: cheatsheet -tags: [javascript,cheatsheet] +language: javascript +tags: [cheatsheet] author: chalarangelo cover: mountain-lake-2 excerpt: Learn everything you need to know about JavaScript modules with this handy cheatsheet. diff --git a/articles/s/javascript-naming-conventions.md b/articles/s/javascript-naming-conventions.md index 74c93eda5..cba9aaf57 100644 --- a/articles/s/javascript-naming-conventions.md +++ b/articles/s/javascript-naming-conventions.md @@ -2,7 +2,8 @@ title: JavaScript naming conventions shortTitle: Naming conventions type: story -tags: [javascript,variable,cheatsheet] +language: javascript +tags: [variable,cheatsheet] author: chalarangelo cover: naming-conventions excerpt: Naming conventions make code easier to read and understand. Learn how to name your variables in JavaScript with this handy guide. diff --git a/articles/s/javascript-nullish-coalescing-optional-chaining.md b/articles/s/javascript-nullish-coalescing-optional-chaining.md index 8a61b28f5..92b0869fe 100644 --- a/articles/s/javascript-nullish-coalescing-optional-chaining.md +++ b/articles/s/javascript-nullish-coalescing-optional-chaining.md @@ -2,7 +2,8 @@ title: How can I use optional chaining and nullish coalescing in my JavaScript project? shortTitle: Optional chaining and nullish coalescing type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: purple-leaves excerpt: JavaScript ES2020 introduced optional chaining and nullish coalescing. Learn everything you need to know with this quick guide. diff --git a/articles/s/javascript-numeric-separator.md b/articles/s/javascript-numeric-separator.md index aded6caf2..0651f1ab2 100644 --- a/articles/s/javascript-numeric-separator.md +++ b/articles/s/javascript-numeric-separator.md @@ -2,7 +2,8 @@ title: JavaScript's numeric separators explained shortTitle: Numeric separators explained type: story -tags: [javascript,math,type] +language: javascript +tags: [math,type] author: chalarangelo cover: coffee-drip excerpt: Numeric separators are a somewhat lesser-known JavaScript syntactic sugar that can make working with large constants a lot easier. diff --git a/articles/s/javascript-object-array-proxy.md b/articles/s/javascript-object-array-proxy.md index 66b7086a1..dd3bbb078 100644 --- a/articles/s/javascript-object-array-proxy.md +++ b/articles/s/javascript-object-array-proxy.md @@ -2,7 +2,8 @@ title: Can I use an object as an array without modifying it in JavaScript? shortTitle: Object as array type: question -tags: [javascript,object,array,proxy,iterator,pattern] +language: javascript +tags: [object,array,proxy,iterator,pattern] author: chalarangelo cover: birds excerpt: Learn how you can leverage the Proxy object to use a JavaScript object the same way as you would use a regular array. diff --git a/articles/s/javascript-object-comparison.md b/articles/s/javascript-object-comparison.md index f0c37f621..187037bf4 100644 --- a/articles/s/javascript-object-comparison.md +++ b/articles/s/javascript-object-comparison.md @@ -2,7 +2,8 @@ title: How do I compare two objects in JavaScript? shortTitle: Object comparison type: question -tags: [javascript,object,comparison] +language: javascript +tags: [object,comparison] author: chalarangelo cover: blue-lake excerpt: Learn how you can compare two objects in JavaScript using various different techniques. diff --git a/articles/s/javascript-object-is-triple-equals.md b/articles/s/javascript-object-is-triple-equals.md index 016743b4c..eb879bfa5 100644 --- a/articles/s/javascript-object-is-triple-equals.md +++ b/articles/s/javascript-object-is-triple-equals.md @@ -2,7 +2,8 @@ title: What's the difference between Object.is() and the triple equals operator in JavaScript? shortTitle: Object.is() vs triple equals operator type: question -tags: [javascript,object,type] +language: javascript +tags: [object,type] author: chalarangelo cover: rocky-mountains excerpt: "`Object.is()` and the triple equals operator (`===`) can both be used for equality checking in JavaScript, but when should you use each one?" diff --git a/articles/s/javascript-pass-by-reference-or-pass-by-value.md b/articles/s/javascript-pass-by-reference-or-pass-by-value.md index 6a30d0337..a9a6de07c 100644 --- a/articles/s/javascript-pass-by-reference-or-pass-by-value.md +++ b/articles/s/javascript-pass-by-reference-or-pass-by-value.md @@ -2,7 +2,8 @@ title: Is JavaScript pass-by-value or pass-by-reference? shortTitle: Pass-by-value or pass-by-reference type: question -tags: [javascript,function,object] +language: javascript +tags: [function,object] author: chalarangelo cover: baloons-field excerpt: How JavaScript handles passing data is a source of confusion and bugs for many developers, especially when it comes to object types. diff --git a/articles/s/javascript-prefix-postfix-operators.md b/articles/s/javascript-prefix-postfix-operators.md index 4c4b946dc..2dfa92a20 100644 --- a/articles/s/javascript-prefix-postfix-operators.md +++ b/articles/s/javascript-prefix-postfix-operators.md @@ -2,7 +2,8 @@ title: What is the difference between prefix and postfix operators? shortTitle: Prefix and postfix operators type: question -tags: [javascript,math] +language: javascript +tags: [math] author: chalarangelo cover: plant-candle excerpt: While both the prefix and postfix operators increment a value, the resulting value of the expression is very different. diff --git a/articles/s/javascript-pretty-print-json.md b/articles/s/javascript-pretty-print-json.md index 59b90d6d1..7a5e44a9f 100644 --- a/articles/s/javascript-pretty-print-json.md +++ b/articles/s/javascript-pretty-print-json.md @@ -2,7 +2,8 @@ title: "Tip: Pretty-print a JSON object with JavaScript" shortTitle: Pretty-print JSON type: tip -tags: [javascript,object,json] +language: javascript +tags: [object,json] author: chalarangelo cover: memories-of-pineapple-3 excerpt: Pretty-printing JSON objects in pretty easy and customizable in JavaScript. Here's the gist of it. diff --git a/articles/s/javascript-prevent-string-being-escaped.md b/articles/s/javascript-prevent-string-being-escaped.md index 1610b9f34..52fd60f16 100644 --- a/articles/s/javascript-prevent-string-being-escaped.md +++ b/articles/s/javascript-prevent-string-being-escaped.md @@ -2,7 +2,8 @@ title: "Tip: Prevent a string from being escaped in JavaScript" shortTitle: Prevent string escaping type: tip -tags: [javascript,string] +language: javascript +tags: [string] author: chalarangelo cover: glass-blowing excerpt: Strings in JavaScript can be escaped in various ways. But how do you prevent a string from being escaped? Here's a handy trick for that. diff --git a/articles/s/javascript-primitive-instanceof.md b/articles/s/javascript-primitive-instanceof.md index 2adf78676..7cf2987e9 100644 --- a/articles/s/javascript-primitive-instanceof.md +++ b/articles/s/javascript-primitive-instanceof.md @@ -2,7 +2,8 @@ title: Is there a way to use instanceof for primitive JavaScript values? shortTitle: Using instanceof for primitive values type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: wooden-bowl excerpt: JavaScript's `instanceof` operator can't be used with primitive values, but there are a some tricks that you can leverage to your advantage. diff --git a/articles/s/javascript-promise-then-catch.md b/articles/s/javascript-promise-then-catch.md index 8bf49b8e9..925479055 100644 --- a/articles/s/javascript-promise-then-catch.md +++ b/articles/s/javascript-promise-then-catch.md @@ -2,7 +2,8 @@ title: "Tip: The order of then and catch matters" shortTitle: The order of then and catch matters type: tip -tags: [javascript,function,promise] +language: javascript +tags: [function,promise] author: chalarangelo cover: blue-sunrise excerpt: Messing up the order of chained `then` and `catch` methods in JavaScript promises can cause problems. Here's a short primer on the subject. diff --git a/articles/s/javascript-promise-then-finally.md b/articles/s/javascript-promise-then-finally.md index 6ef3633c7..59d85df9a 100644 --- a/articles/s/javascript-promise-then-finally.md +++ b/articles/s/javascript-promise-then-finally.md @@ -2,7 +2,8 @@ title: What is the difference between then and finally in a JavaScript promise? shortTitle: Promise then vs finally type: question -tags: [javascript,function,promise] +language: javascript +tags: [function,promise] author: chalarangelo cover: blue-sunrise excerpt: A JavaScript promise's `then` and `finally` methods seem very similar. But there are a few important differences you need to keep in mind. diff --git a/articles/s/javascript-promises.md b/articles/s/javascript-promises.md index 23b996443..19d98a8dc 100644 --- a/articles/s/javascript-promises.md +++ b/articles/s/javascript-promises.md @@ -2,7 +2,8 @@ title: What are promises in JavaScript? In which states can a promise be? shortTitle: Promises introduction type: question -tags: [javascript,function,promise] +language: javascript +tags: [function,promise] author: chalarangelo cover: sail-away excerpt: JavaScript's promises represent the eventual completion (or failure) of asynchronous operations and their resulting value. diff --git a/articles/s/javascript-property-enumerability.md b/articles/s/javascript-property-enumerability.md index 302affca2..018ada4f2 100644 --- a/articles/s/javascript-property-enumerability.md +++ b/articles/s/javascript-property-enumerability.md @@ -2,7 +2,8 @@ title: JavaScript property enumerability shortTitle: Property enumerability type: story -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: old-consoles excerpt: Property enumerability dictates how JavaScript object properties behave in different scenarios. diff --git a/articles/s/javascript-pure-functions.md b/articles/s/javascript-pure-functions.md index 018fb25f3..43adb6218 100644 --- a/articles/s/javascript-pure-functions.md +++ b/articles/s/javascript-pure-functions.md @@ -2,7 +2,8 @@ title: What is a pure function? shortTitle: Pure function introduction type: question -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: dark-leaves excerpt: Pure functions are a very important concept to know, especially if you're interested in functional programming. diff --git a/articles/s/javascript-query-selector-shorthand.md b/articles/s/javascript-query-selector-shorthand.md index 6a71adc7e..de2ae6028 100644 --- a/articles/s/javascript-query-selector-shorthand.md +++ b/articles/s/javascript-query-selector-shorthand.md @@ -2,7 +2,8 @@ title: "Tip: Create your own query selector shorthand" shortTitle: Query selector shorthand type: tip -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: pineapple-at-work excerpt: Ever wanted to create your own jquery-like query selector shorthand? Here's how! diff --git a/articles/s/javascript-random-value-pure-functions.md b/articles/s/javascript-random-value-pure-functions.md index 2af13f6b7..2964aa255 100644 --- a/articles/s/javascript-random-value-pure-functions.md +++ b/articles/s/javascript-random-value-pure-functions.md @@ -2,7 +2,8 @@ title: Using random values with pure functions shortTitle: Pure functions & randomness type: story -tags: [javascript,function,random,testing] +language: javascript +tags: [function,random,testing] author: chalarangelo cover: do-more-computer excerpt: Randomness and pure functions don't seem to go hand in hand. But where there's a will, there's a way. diff --git a/articles/s/javascript-range-generator.md b/articles/s/javascript-range-generator.md index e23edea98..a9e9f8711 100644 --- a/articles/s/javascript-range-generator.md +++ b/articles/s/javascript-range-generator.md @@ -2,7 +2,8 @@ title: Using JavaScript generator functions for ranges shortTitle: Generator functions for ranges type: story -tags: [javascript,function,array] +language: javascript +tags: [function,array] author: chalarangelo cover: generator excerpt: Learn how to use JavaScript ES6 generators and iterators to iterate over ranges of numbers. diff --git a/articles/s/javascript-recursion.md b/articles/s/javascript-recursion.md index abe944c57..6a18caded 100644 --- a/articles/s/javascript-recursion.md +++ b/articles/s/javascript-recursion.md @@ -2,7 +2,8 @@ title: What is recursion and when is it useful? shortTitle: Recursion introduction type: question -tags: [javascript,function,recursion] +language: javascript +tags: [function,recursion] author: chalarangelo cover: curve excerpt: Recursion is a very important programming concept all developers should be familiar with. diff --git a/articles/s/javascript-reload-page.md b/articles/s/javascript-reload-page.md index 37d62567f..09a0caceb 100644 --- a/articles/s/javascript-reload-page.md +++ b/articles/s/javascript-reload-page.md @@ -2,7 +2,8 @@ title: How can I use JavaScript to reload the page? shortTitle: Reload page type: story -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: night-tram excerpt: Need to reload the current page using JavaScript? Here's the best way to do it, as well as some alternatives. diff --git a/articles/s/javascript-remove-object-property.md b/articles/s/javascript-remove-object-property.md index 4320ca075..3cb5badd9 100644 --- a/articles/s/javascript-remove-object-property.md +++ b/articles/s/javascript-remove-object-property.md @@ -2,7 +2,8 @@ title: How do I remove a property from a JavaScript object? shortTitle: Remove property from object type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: brown-bird excerpt: Ever wanted to delete a property from a JavaScript object? Here are a few way you can accomplish that. diff --git a/articles/s/javascript-return-constructor.md b/articles/s/javascript-return-constructor.md index f6ef9b991..df0f8cbf5 100644 --- a/articles/s/javascript-return-constructor.md +++ b/articles/s/javascript-return-constructor.md @@ -2,7 +2,8 @@ title: What does a JavaScript constructor return? shortTitle: Constructor return value type: question -tags: [javascript,function,class,object] +language: javascript +tags: [function,class,object] author: chalarangelo cover: architectural excerpt: The constructor is a crucial part of any JavaScript class, which is why you might want to take a closer look at what they return. diff --git a/articles/s/javascript-shallow-deep-clone.md b/articles/s/javascript-shallow-deep-clone.md index 5d0224b6e..688dada85 100644 --- a/articles/s/javascript-shallow-deep-clone.md +++ b/articles/s/javascript-shallow-deep-clone.md @@ -2,7 +2,8 @@ title: How do I clone an object in JavaScript? shortTitle: Object cloning type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: pagodas excerpt: Learn how JavaScript handles mutable data, such as objects and arrays, and understand how shallow cloning and deep cloning work. diff --git a/articles/s/javascript-singleton-proxy.md b/articles/s/javascript-singleton-proxy.md index 814e0cf1a..fb2c4cfac 100644 --- a/articles/s/javascript-singleton-proxy.md +++ b/articles/s/javascript-singleton-proxy.md @@ -2,7 +2,8 @@ title: How can I implement a singleton in JavaScript? shortTitle: Singleton implementation type: question -tags: [javascript,object,proxy,pattern] +language: javascript +tags: [object,proxy,pattern] author: chalarangelo cover: obelisk excerpt: Learn how to implement the singleton design pattern in JavaScript, using the Proxy object. diff --git a/articles/s/javascript-sleep.md b/articles/s/javascript-sleep.md index 6f449d775..635fb44bc 100644 --- a/articles/s/javascript-sleep.md +++ b/articles/s/javascript-sleep.md @@ -2,7 +2,8 @@ title: How can I implement a sleep function in JavaScript? shortTitle: Sleep function type: question -tags: [javascript,date,promise] +language: javascript +tags: [date,promise] author: chalarangelo cover: sleepy-cat excerpt: Learn all the different ways you can implement a `sleep()` function in JavaScript. diff --git a/articles/s/javascript-spread-rest-syntax.md b/articles/s/javascript-spread-rest-syntax.md index 9f9730d7d..87f60164d 100644 --- a/articles/s/javascript-spread-rest-syntax.md +++ b/articles/s/javascript-spread-rest-syntax.md @@ -2,7 +2,8 @@ title: Understanding the spread and rest syntax in Javascript shortTitle: Spread and rest syntax type: story -tags: [javascript,array,function] +language: javascript +tags: [array,function] author: chalarangelo cover: antelope excerpt: JavaScript ES6 introduced us to powerful new features, such as the spread and rest syntax. Learn all you need to know in this quick guide. diff --git a/articles/s/javascript-store-dom-items.md b/articles/s/javascript-store-dom-items.md index c8489f82b..01f50b672 100644 --- a/articles/s/javascript-store-dom-items.md +++ b/articles/s/javascript-store-dom-items.md @@ -2,7 +2,8 @@ title: "Tip: Minimize DOM access" shortTitle: Minimize DOM access type: tip -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: armchair excerpt: Increase your JavaScript code's performance when working with the DOM by leveraging this simple trick. diff --git a/articles/s/javascript-string-contains-substring.md b/articles/s/javascript-string-contains-substring.md index a915e6e9f..e9ad28ad7 100644 --- a/articles/s/javascript-string-contains-substring.md +++ b/articles/s/javascript-string-contains-substring.md @@ -2,7 +2,8 @@ title: Check if a string contains a substring in JavaScript shortTitle: String contains substring type: story -tags: [javascript,string] +language: javascript +tags: [string] author: chalarangelo cover: sea-view-2 excerpt: Let's have a look at how to check if a string contains a substring in JavaScript. diff --git a/articles/s/javascript-string-immutability.md b/articles/s/javascript-string-immutability.md index c533fa18b..697742dcf 100644 --- a/articles/s/javascript-string-immutability.md +++ b/articles/s/javascript-string-immutability.md @@ -2,7 +2,8 @@ title: Are JavaScript strings immutable? shortTitle: String immutability type: question -tags: [javascript,string,type] +language: javascript +tags: [string,type] author: chalarangelo cover: purple-sunset excerpt: When it comes to immutability, JavaScript strings are often a source of confusion. Yet they're not as complicated as you might expect. diff --git a/articles/s/javascript-string-to-boolean.md b/articles/s/javascript-string-to-boolean.md index 9d47ad7a1..d4c5d05fa 100644 --- a/articles/s/javascript-string-to-boolean.md +++ b/articles/s/javascript-string-to-boolean.md @@ -2,7 +2,8 @@ title: "Tip: Convert a string to a boolean" shortTitle: String to boolean type: tip -tags: [javascript,string,boolean,type] +language: javascript +tags: [string,boolean,type] author: chalarangelo cover: two-cities excerpt: Have you ever tried to convert the string representation of a boolean to an actual boolean value? Here's a simple way to do it. diff --git a/articles/s/javascript-swap-two-variables.md b/articles/s/javascript-swap-two-variables.md index 5d5188f32..cb499d707 100644 --- a/articles/s/javascript-swap-two-variables.md +++ b/articles/s/javascript-swap-two-variables.md @@ -2,7 +2,8 @@ title: "Tip: How to swap two variables in JavaScript" shortTitle: Swap two variables type: tip -tags: [javascript,variables] +language: javascript +tags: [variables] author: chalarangelo cover: mountain-lake-2 excerpt: Learn how to swap the values of two variables in JavaScript using a single line of ES6 code. diff --git a/articles/s/javascript-switch-object.md b/articles/s/javascript-switch-object.md index e6113818e..4ddf70798 100644 --- a/articles/s/javascript-switch-object.md +++ b/articles/s/javascript-switch-object.md @@ -2,7 +2,8 @@ title: Replacing JavaScript switch statement with object literals shortTitle: Switch with object literals type: story -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: rocky-lake excerpt: JavaScript's `switch` statement often feels hard to remember and a little bit out of place. Maybe it's time to use object literals, instead. diff --git a/articles/s/javascript-sync-async.md b/articles/s/javascript-sync-async.md index 0d245bd20..b850e4a2a 100644 --- a/articles/s/javascript-sync-async.md +++ b/articles/s/javascript-sync-async.md @@ -2,7 +2,8 @@ title: What is the difference between synchronous and asynchronous code in JavaScript? shortTitle: Synchronous vs asynchronous code type: question -tags: [javascript,function,promise] +language: javascript +tags: [function,promise] author: chalarangelo cover: pineapple-on-green excerpt: Understanding the differences between synchronous and asynchronous code is a crucial piece of knowledge for every web developer. diff --git a/articles/s/javascript-target-blank.md b/articles/s/javascript-target-blank.md index 1d55164df..3f47c42c9 100644 --- a/articles/s/javascript-target-blank.md +++ b/articles/s/javascript-target-blank.md @@ -2,7 +2,8 @@ title: 'Tip: Protect your users from malicious websites when using target="_blank"' shortTitle: 'Safeguarding target="_blank"' type: tip -tags: [javascript,browser,security] +language: javascript +tags: [browser,security] author: chalarangelo cover: laptop-with-code excerpt: Opening a link in a new tab comes with a security vulnerability that you may not be aware of. Protect your users with this simple trick. diff --git a/articles/s/javascript-ternary-operator.md b/articles/s/javascript-ternary-operator.md index cafa33a89..6c95e6b2b 100644 --- a/articles/s/javascript-ternary-operator.md +++ b/articles/s/javascript-ternary-operator.md @@ -2,7 +2,8 @@ title: What is the ternary operator and how do I use it? shortTitle: Ternary operation introduction type: question -tags: [javascript,condition] +language: javascript +tags: [condition] cover: red-succulent excerpt: Learn everything you need to know about the conditional (ternary) operator and how to use it in JavaScript. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/javascript-this.md b/articles/s/javascript-this.md index 22d533841..e2b1307ca 100644 --- a/articles/s/javascript-this.md +++ b/articles/s/javascript-this.md @@ -2,7 +2,8 @@ title: Understanding the "this" keyword in JavaScript shortTitle: The "this" keyword in JavaScript type: story -tags: [javascript,function,object] +language: javascript +tags: [function,object] author: chalarangelo cover: u-got-this excerpt: JavaScript's `this` keyword can confuse beginners and veterans alike. Learn how it works in different scenarios and start using it correctly. diff --git a/articles/s/javascript-truthy-falsy-values.md b/articles/s/javascript-truthy-falsy-values.md index 9787954f3..006793b3c 100644 --- a/articles/s/javascript-truthy-falsy-values.md +++ b/articles/s/javascript-truthy-falsy-values.md @@ -2,7 +2,8 @@ title: What are truthy and falsy values in JavaScript? shortTitle: Truthy and falsy values type: question -tags: [javascript,type,comparison] +language: javascript +tags: [type,comparison] author: chalarangelo cover: little-bird excerpt: JavaScript uses type coercion in Boolean contexts, resulting in truthy or falsy values. Get a hang of how it all works in this quick guide. diff --git a/articles/s/javascript-undeclared-undefined-null.md b/articles/s/javascript-undeclared-undefined-null.md index dbc3021a4..98d34d532 100644 --- a/articles/s/javascript-undeclared-undefined-null.md +++ b/articles/s/javascript-undeclared-undefined-null.md @@ -2,7 +2,8 @@ title: What's the difference between undeclared, undefined and null in JavaScript? shortTitle: Undeclared, undefined and null type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: river-houses excerpt: JavaScript has three different empty states for variables. Learn their differences and how you can check for each one. diff --git a/articles/s/javascript-use-strict.md b/articles/s/javascript-use-strict.md index 8d252f112..3c580f1bf 100644 --- a/articles/s/javascript-use-strict.md +++ b/articles/s/javascript-use-strict.md @@ -2,7 +2,8 @@ title: What does 'use strict' do and what are some of the key benefits to using it? shortTitle: Strict mode introduction type: question -tags: [javascript,function,object] +language: javascript +tags: [function,object] author: chalarangelo cover: palm-tree-house excerpt: JavaScript's strict mode can make your code faster, cleaner and more secure. diff --git a/articles/s/javascript-value-as-number.md b/articles/s/javascript-value-as-number.md index 46c9f4262..2b9400b18 100644 --- a/articles/s/javascript-value-as-number.md +++ b/articles/s/javascript-value-as-number.md @@ -2,7 +2,8 @@ title: "Tip: You can get the value of an input element as a number" shortTitle: Input element value as number type: tip -tags: [javascript,browser,input] +language: javascript +tags: [browser,input] author: chalarangelo cover: mac-and-coffee excerpt: Ever wanted to get the value of an HTML input element as a number? Learn an easy way to do it with this handy trick. diff --git a/articles/s/javascript-value-not-equal-to-itself.md b/articles/s/javascript-value-not-equal-to-itself.md index 3285cf44b..374e7d63f 100644 --- a/articles/s/javascript-value-not-equal-to-itself.md +++ b/articles/s/javascript-value-not-equal-to-itself.md @@ -2,7 +2,8 @@ title: What is the only value not equal to itself in JavaScript? shortTitle: The only value not equal to itself type: question -tags: [javascript,type,comparison] +language: javascript +tags: [type,comparison] author: chalarangelo cover: eagle excerpt: Did you know there's a JavaScript value that's not equal to itself? diff --git a/articles/s/javascript-var-let-const.md b/articles/s/javascript-var-let-const.md index e85eacb22..9d35ce24a 100644 --- a/articles/s/javascript-var-let-const.md +++ b/articles/s/javascript-var-let-const.md @@ -2,7 +2,8 @@ title: What are the differences between var, let and const in JavaScript? shortTitle: Var, let and const type: question -tags: [javascript,type,variable] +language: javascript +tags: [type,variable] author: chalarangelo cover: highlands excerpt: JavaScript variables can be declared a handful of ways. However, understanding their differences can drastically change the way you code. diff --git a/articles/s/javascript-variable-hoisting.md b/articles/s/javascript-variable-hoisting.md index deb817766..d9b555f8b 100644 --- a/articles/s/javascript-variable-hoisting.md +++ b/articles/s/javascript-variable-hoisting.md @@ -2,7 +2,8 @@ title: What is hoisting in JavaScript? shortTitle: Hoisting introduction type: question -tags: [javascript,type,variable] +language: javascript +tags: [type,variable] author: chalarangelo cover: boat-port excerpt: Hoisting comes up a lot during JavaScript interviews. It's a concept that can require some getting used to, so read our guide to learn more. diff --git a/articles/s/javascript-variable-scope.md b/articles/s/javascript-variable-scope.md index 7fb9c4715..89f513ef5 100644 --- a/articles/s/javascript-variable-scope.md +++ b/articles/s/javascript-variable-scope.md @@ -2,7 +2,8 @@ title: Understanding JavaScript variables and scopes shortTitle: Variables and scopes type: story -tags: [javascript,type,variable] +language: javascript +tags: [type,variable] author: chalarangelo cover: periscope excerpt: JavaScript developers often get confused by JavaScript's variables and scope. Here's a quick guide to understanding these concepts. diff --git a/articles/s/javascript-void-links.md b/articles/s/javascript-void-links.md index 90c5d512f..3a41a669f 100644 --- a/articles/s/javascript-void-links.md +++ b/articles/s/javascript-void-links.md @@ -2,7 +2,8 @@ title: "Tip: Avoid \"javascript:void(0)\" for empty links" shortTitle: Avoid "javascript:void(0)" for empty links type: tip -tags: [javascript,browser,accessibility] +language: javascript +tags: [browser,accessibility] author: chalarangelo cover: white-flower excerpt: There are many ways to create empty links, some more appropriate than others. Learn how to best handle empty links with this quick tip. diff --git a/articles/s/jest-mock-global-methods.md b/articles/s/jest-mock-global-methods.md index e34a718b9..c0475088c 100644 --- a/articles/s/jest-mock-global-methods.md +++ b/articles/s/jest-mock-global-methods.md @@ -1,7 +1,8 @@ --- title: Mocking global object methods in Jest type: story -tags: [javascript,testing] +language: javascript +tags: [testing] author: chalarangelo cover: trippy-chemicals excerpt: Testing your code is important, but mocking can be tricky at times. Here's a quick guide on how to mock global object methods in Jest. diff --git a/articles/s/js-abort-fetch.md b/articles/s/js-abort-fetch.md index f9e9ba90c..ef205c9bd 100644 --- a/articles/s/js-abort-fetch.md +++ b/articles/s/js-abort-fetch.md @@ -2,7 +2,8 @@ title: "Tip: Abort a fetch request in JavaScript" shortTitle: Abort a fetch request type: story -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: cancel-typographer excerpt: Aborting a fetch request in JavaScript is a common problem. Here's how to handle it correctly. diff --git a/articles/s/js-append-elements-to-array.md b/articles/s/js-append-elements-to-array.md index 639115948..045de2d78 100644 --- a/articles/s/js-append-elements-to-array.md +++ b/articles/s/js-append-elements-to-array.md @@ -2,7 +2,8 @@ title: Append elements to a JavaScript array shortTitle: Append elements to array type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: switzerland-night excerpt: Have you ever tried appending elements to an array in JavaScript? Here's a primer on all the available options. diff --git a/articles/s/js-array-filtering-tips.md b/articles/s/js-array-filtering-tips.md index 7a937c2fe..24d0eaf60 100644 --- a/articles/s/js-array-filtering-tips.md +++ b/articles/s/js-array-filtering-tips.md @@ -2,7 +2,8 @@ title: JavaScript array filtering tips shortTitle: Array filtering tips type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: violin excerpt: A few tips and tricks to help you filter arrays in JavaScript more efficiently. diff --git a/articles/s/js-array-map-vs-foreach.md b/articles/s/js-array-map-vs-foreach.md index df3b4d0ee..dbe174048 100644 --- a/articles/s/js-array-map-vs-foreach.md +++ b/articles/s/js-array-map-vs-foreach.md @@ -2,7 +2,8 @@ title: What is the difference between Array.prototype.map() and Array.prototype.forEach()? shortTitle: Array.prototype.map() vs Array.prototype.forEach() type: question -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: fort-lamp excerpt: Which method do you reach for first? What are the differences between them? Let's find out! diff --git a/articles/s/js-array-min-max.md b/articles/s/js-array-min-max.md index 463102c6b..cc618c5f3 100644 --- a/articles/s/js-array-min-max.md +++ b/articles/s/js-array-min-max.md @@ -2,7 +2,8 @@ title: "Tip: Min and max value in a JavaScript array" shortTitle: Min and max value of an array type: tip -tags: [javascript,array,math] +language: javascript +tags: [array,math] author: chalarangelo cover: little-tree excerpt: When working with numeric arrays in JavaScript, you might need to find the minimum or maximum value. Here's a quick and easy way to do it. diff --git a/articles/s/js-array-sorting-shorthand.md b/articles/s/js-array-sorting-shorthand.md index 3226fc242..b75757e5a 100644 --- a/articles/s/js-array-sorting-shorthand.md +++ b/articles/s/js-array-sorting-shorthand.md @@ -2,7 +2,8 @@ title: "Tip: JavaScript array sorting shorthand" shortTitle: Array sorting shorthand type: tip -tags: [javascript,array] +language: javascript +tags: [array] cover: apples excerpt: Learn how to quickly write code to sort JavaScript arrays with this handy one-liner. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/js-async-defer.md b/articles/s/js-async-defer.md index c069b3b71..eb5caa447 100644 --- a/articles/s/js-async-defer.md +++ b/articles/s/js-async-defer.md @@ -2,7 +2,8 @@ title: What is the difference between async and defer in script loading? shortTitle: Async and defer type: question -tags: [javascript,html] +language: javascript +tags: [html] author: chalarangelo cover: coworking-space excerpt: Understanding how to correctly load your JavaScript files can significantly improve your web application's performance. diff --git a/articles/s/js-callbacks.md b/articles/s/js-callbacks.md index 14ad8b45d..5f2d329d9 100644 --- a/articles/s/js-callbacks.md +++ b/articles/s/js-callbacks.md @@ -2,7 +2,8 @@ title: What is a callback function? shortTitle: Callback functions type: question -tags: [javascript,function] +language: javascript +tags: [function] author: chalarangelo cover: rabbit-call excerpt: JavaScript uses callback functions quite a lot. From event listeners to asynchronous code, they're an invaluable tool you need to master. diff --git a/articles/s/js-cannot-extend-proxy-object.md b/articles/s/js-cannot-extend-proxy-object.md index 93c044328..e2ef64362 100644 --- a/articles/s/js-cannot-extend-proxy-object.md +++ b/articles/s/js-cannot-extend-proxy-object.md @@ -2,7 +2,8 @@ title: "Tip: You can't extend the Proxy object" shortTitle: Extending the Proxy object type: tip -tags: [javascript,object,proxy] +language: javascript +tags: [object,proxy] author: chalarangelo cover: icebreaker excerpt: Turns out the Proxy object is not extensible, but there's a way around its limitations. diff --git a/articles/s/js-compare-string-case-accent-insensitive.md b/articles/s/js-compare-string-case-accent-insensitive.md index 81296b956..d03c8ebb5 100644 --- a/articles/s/js-compare-string-case-accent-insensitive.md +++ b/articles/s/js-compare-string-case-accent-insensitive.md @@ -2,7 +2,8 @@ title: "Tip: Compare strings regardless of case and accent" shortTitle: Case and accent-insensitive string comparison type: tip -tags: [javascript,string,comparison] +language: javascript +tags: [string,comparison] author: chalarangelo cover: memories-of-pineapple-1 excerpt: Here's a quick tip on how to compare and sort arrays of strings, ignoring case and accents. diff --git a/articles/s/js-construct-url.md b/articles/s/js-construct-url.md index 5bc192d7f..1ff3793fe 100644 --- a/articles/s/js-construct-url.md +++ b/articles/s/js-construct-url.md @@ -2,7 +2,8 @@ title: How to construct a URL in JavaScript shortTitle: Construct a URL in JavaScript type: story -tags: [javascript,string,browser] +language: javascript +tags: [string,browser] author: chalarangelo cover: alfama excerpt: A short guide on how to correctly construct a URL in JavaScript. diff --git a/articles/s/js-create-element.md b/articles/s/js-create-element.md index 8e3ae1aa8..bc7e6e780 100644 --- a/articles/s/js-create-element.md +++ b/articles/s/js-create-element.md @@ -2,7 +2,8 @@ title: Creating HTML elements in JavaScript shortTitle: Creating HTML elements type: story -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: body-of-water excerpt: Learn how to create HTML elements in JavaScript, by abstracting the creation logic into a function. diff --git a/articles/s/js-data-structures-binary-search-tree.md b/articles/s/js-data-structures-binary-search-tree.md index 8ac363da8..a574171f3 100644 --- a/articles/s/js-data-structures-binary-search-tree.md +++ b/articles/s/js-data-structures-binary-search-tree.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Binary Search Tree shortTitle: Binary Search Tree type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-4 excerpt: A binary search tree is a hierarchical data structure of ordered nodes with at most two children each. diff --git a/articles/s/js-data-structures-binary-tree.md b/articles/s/js-data-structures-binary-tree.md index b487fc65a..c7bf44f8c 100644 --- a/articles/s/js-data-structures-binary-tree.md +++ b/articles/s/js-data-structures-binary-tree.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Binary Tree shortTitle: Binary Tree type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-3 excerpt: A binary tree is a hierarchical data structure of linked nodes with at most two children each. diff --git a/articles/s/js-data-structures-doubly-linked-list.md b/articles/s/js-data-structures-doubly-linked-list.md index 891ceaa14..bf34066c9 100644 --- a/articles/s/js-data-structures-doubly-linked-list.md +++ b/articles/s/js-data-structures-doubly-linked-list.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Doubly Linked List shortTitle: Doubly Linked List type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-4 excerpt: A doubly linked list is a linear data structure where each element points both to the next and the previous one. diff --git a/articles/s/js-data-structures-graph.md b/articles/s/js-data-structures-graph.md index 0e6817a55..384b1734c 100644 --- a/articles/s/js-data-structures-graph.md +++ b/articles/s/js-data-structures-graph.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Graph shortTitle: Graph type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-1 excerpt: A graph is a data structure consisting of a set of vertices connected by a set of edges. diff --git a/articles/s/js-data-structures-linked-list.md b/articles/s/js-data-structures-linked-list.md index efe23b86d..20dd9860f 100644 --- a/articles/s/js-data-structures-linked-list.md +++ b/articles/s/js-data-structures-linked-list.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Linked List shortTitle: Linked List type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-3 excerpt: A linked list is a linear data structure where each element points to the next. diff --git a/articles/s/js-data-structures-queue.md b/articles/s/js-data-structures-queue.md index a54146a80..85e107f2d 100644 --- a/articles/s/js-data-structures-queue.md +++ b/articles/s/js-data-structures-queue.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Queue shortTitle: Queue type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-2 excerpt: A queue is a linear data structure which follows a first in, first out (FIFO) order of operations. diff --git a/articles/s/js-data-structures-stack.md b/articles/s/js-data-structures-stack.md index aca725c98..7c8d80ee4 100644 --- a/articles/s/js-data-structures-stack.md +++ b/articles/s/js-data-structures-stack.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Stack shortTitle: Stack type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-1 excerpt: A stack is a linear data structure which follows a last in, first out (LIFO) order of operations. diff --git a/articles/s/js-data-structures-tree.md b/articles/s/js-data-structures-tree.md index 810944a4f..ced6fd344 100644 --- a/articles/s/js-data-structures-tree.md +++ b/articles/s/js-data-structures-tree.md @@ -2,7 +2,8 @@ title: JavaScript Data Structures - Tree shortTitle: Tree type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: purple-flower-macro-2 excerpt: A tree is a data structure consisting of a set of linked nodes representing a hierarchical tree structure. diff --git a/articles/s/js-decimal-to-hex.md b/articles/s/js-decimal-to-hex.md index 7d288f0f6..99d6f3696 100644 --- a/articles/s/js-decimal-to-hex.md +++ b/articles/s/js-decimal-to-hex.md @@ -2,7 +2,8 @@ title: "Tip: Convert decimal number to hexadecimal" shortTitle: Decimal to hexadecimal type: tip -tags: [javascript,math] +language: javascript +tags: [math] author: chalarangelo cover: waves-from-above excerpt: Ever needed to convert a decimal number to hexadecimal? Here's a quick and easy way to do it. diff --git a/articles/s/js-detect-undefined-object-property.md b/articles/s/js-detect-undefined-object-property.md index 7adcb976e..1a59353a2 100644 --- a/articles/s/js-detect-undefined-object-property.md +++ b/articles/s/js-detect-undefined-object-property.md @@ -2,7 +2,8 @@ title: How can I detect an undefined object property in JavaScript? shortTitle: Detect undefined object property type: story -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: pink-flower excerpt: Learn how to detect `undefined` object properties in JavaScript the correct way. diff --git a/articles/s/js-double-negation-operator.md b/articles/s/js-double-negation-operator.md index 6defd297f..56c5e0da5 100644 --- a/articles/s/js-double-negation-operator.md +++ b/articles/s/js-double-negation-operator.md @@ -2,7 +2,8 @@ title: What does the double negation operator do in JavaScript? shortTitle: Double negation operator type: question -tags: [javascript,type] +language: javascript +tags: [type] author: chalarangelo cover: memories-of-pineapple-2 excerpt: You've probably come across the double negation operator (`!!`) before, but do you know what it does? diff --git a/articles/s/js-dynamic-getter-chain-proxy.md b/articles/s/js-dynamic-getter-chain-proxy.md index 38f45578b..a6c8d4eca 100644 --- a/articles/s/js-dynamic-getter-chain-proxy.md +++ b/articles/s/js-dynamic-getter-chain-proxy.md @@ -2,7 +2,8 @@ title: Chaining dynamic getters using the Proxy object shortTitle: Dynamic getter chaining type: story -tags: [javascript,object,proxy] +language: javascript +tags: [object,proxy] author: chalarangelo cover: colorful-rocks excerpt: Using the Proxy object, we can create chainable dynamic getters for objects in JavaScript. diff --git a/articles/s/js-dynamic-getter-setter-proxy.md b/articles/s/js-dynamic-getter-setter-proxy.md index 4f8e78fb9..96df25688 100644 --- a/articles/s/js-dynamic-getter-setter-proxy.md +++ b/articles/s/js-dynamic-getter-setter-proxy.md @@ -2,7 +2,8 @@ title: Can I create dynamic setters and getters in JavaScript? shortTitle: Dynamic getters and setters type: question -tags: [javascript,object,proxy] +language: javascript +tags: [object,proxy] author: chalarangelo cover: green-cabin-cow excerpt: Using the Proxy object, we can create dynamic getters and setters for objects in JavaScript. diff --git a/articles/s/js-dynamic-properties-are-slow.md b/articles/s/js-dynamic-properties-are-slow.md index 9470895bb..79da575ec 100644 --- a/articles/s/js-dynamic-properties-are-slow.md +++ b/articles/s/js-dynamic-properties-are-slow.md @@ -2,7 +2,8 @@ title: "Tip: Optimize dynamically added object properties" shortTitle: Dynamically added property optimization type: tip -tags: [javascript,object,performance] +language: javascript +tags: [object,performance] author: chalarangelo cover: mountain-lake-cottage excerpt: Dynamically adding object properties can be pretty slow in some cases. Here's how to optimize it. diff --git a/articles/s/js-edit-url-params.md b/articles/s/js-edit-url-params.md index fbdbfd34c..74a72e873 100644 --- a/articles/s/js-edit-url-params.md +++ b/articles/s/js-edit-url-params.md @@ -2,7 +2,8 @@ title: "Tip: Edit URL Parameters in JavaScript" shortTitle: Edit URL Parameters type: tip -tags: [javascript,string] +language: javascript +tags: [string] author: chalarangelo cover: sofia-tram excerpt: Avoid the naive approach and use a more robust method to edit URL parameters in JavaScript. diff --git a/articles/s/js-element-from-point.md b/articles/s/js-element-from-point.md index 5e119e4cf..63b234cfe 100644 --- a/articles/s/js-element-from-point.md +++ b/articles/s/js-element-from-point.md @@ -2,7 +2,8 @@ title: "Tip: Element at a specific point on the page" shortTitle: Element at specific coordinates type: tip -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: armchair-in-yellow excerpt: Using `Document.elementFromPoint()` to easily get the element at a specific point on the page. diff --git a/articles/s/js-email-validation.md b/articles/s/js-email-validation.md index ab8455fc6..a4417b9b3 100644 --- a/articles/s/js-email-validation.md +++ b/articles/s/js-email-validation.md @@ -2,7 +2,8 @@ title: Can I validate an email address in JavaScript? shortTitle: Email address validation type: question -tags: [javascript,string,regexp] +language: javascript +tags: [string,regexp] author: chalarangelo cover: blank-card excerpt: Email address validation can be much trickier than it sounds. Here's why and my advice on how to approach this problem. diff --git a/articles/s/js-fast-remove-array-element.md b/articles/s/js-fast-remove-array-element.md index 14bb9d8d3..9fd0caa97 100644 --- a/articles/s/js-fast-remove-array-element.md +++ b/articles/s/js-fast-remove-array-element.md @@ -2,7 +2,8 @@ title: Faster element removal in unordered JavaScript arrays shortTitle: Faster element removal in unordered arrays type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: purple-flower-bunch excerpt: Are you performing a lot of array operations? Maybe element removal is a performance bottleneck you can avoid. diff --git a/articles/s/js-frequency-map-data-structure.md b/articles/s/js-frequency-map-data-structure.md index 227a13ccc..233f3de60 100644 --- a/articles/s/js-frequency-map-data-structure.md +++ b/articles/s/js-frequency-map-data-structure.md @@ -2,7 +2,8 @@ title: Frequency Map Data Structure shortTitle: Frequency Map type: story -tags: [javascript,class] +language: javascript +tags: [class] author: chalarangelo cover: radio-monstera excerpt: A custom data structure to keep track of value frequencies in an array. diff --git a/articles/s/js-immutable-object-proxy.md b/articles/s/js-immutable-object-proxy.md index 7c24cb8e3..5d1fc22d5 100644 --- a/articles/s/js-immutable-object-proxy.md +++ b/articles/s/js-immutable-object-proxy.md @@ -2,7 +2,8 @@ title: Immutable JavaScript objects using the Proxy object shortTitle: Immutable objects using Proxy type: story -tags: [javascript,object,proxy] +language: javascript +tags: [object,proxy] author: chalarangelo cover: frozen-globe excerpt: Freezing objects is not the only way to prevent mutations. Learn how you can leverage the Proxy object to your advantage. diff --git a/articles/s/js-last-element-of-array.md b/articles/s/js-last-element-of-array.md index 76ada793b..5e5ce95d5 100644 --- a/articles/s/js-last-element-of-array.md +++ b/articles/s/js-last-element-of-array.md @@ -2,7 +2,8 @@ title: "Tip: Get the last element of a JavaScript array" shortTitle: Last element of array type: tip -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: purple-laptop excerpt: Array destructuring can be leveraged in many different ways. Here's one of them. diff --git a/articles/s/js-locale-sensitive-string-truncation.md b/articles/s/js-locale-sensitive-string-truncation.md index 7962830de..601597180 100644 --- a/articles/s/js-locale-sensitive-string-truncation.md +++ b/articles/s/js-locale-sensitive-string-truncation.md @@ -2,7 +2,8 @@ title: How can I truncate a string accounting for locale? shortTitle: Locale-sensitive string truncation type: question -tags: [javascript,string] +language: javascript +tags: [string] author: chalarangelo cover: reflection-on-lake excerpt: Locale-sensitive string splitting and truncation are finally possible in JavaScript. diff --git a/articles/s/js-map-vs-object.md b/articles/s/js-map-vs-object.md index da0a00236..fdf900078 100644 --- a/articles/s/js-map-vs-object.md +++ b/articles/s/js-map-vs-object.md @@ -2,7 +2,8 @@ title: What are the differences between Maps and objects in JavaScript? shortTitle: Maps vs objects type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: tent-stars excerpt: Maps and objects are very similar, but they have some differences that can help you decide which one better fits your use-case. diff --git a/articles/s/js-native-data-structures.md b/articles/s/js-native-data-structures.md index fe71fb9c7..4bf1f5324 100644 --- a/articles/s/js-native-data-structures.md +++ b/articles/s/js-native-data-structures.md @@ -2,7 +2,8 @@ title: Native JavaScript Data Structures shortTitle: Native Data Structures type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: purple-flower-macro-2 excerpt: JavaScript provides a handful of native data structures that you can start using in your code right now. diff --git a/articles/s/js-object-freeze-vs-seal.md b/articles/s/js-object-freeze-vs-seal.md index 034c068fa..94f295568 100644 --- a/articles/s/js-object-freeze-vs-seal.md +++ b/articles/s/js-object-freeze-vs-seal.md @@ -2,7 +2,8 @@ title: What is the difference between Object.freeze() and Object.seal() in JavaScript? shortTitle: Object.freeze() vs Object.seal() type: question -tags: [javascript,object] +language: javascript +tags: [object] author: chalarangelo cover: frozen-globe excerpt: Both `Object.freeze()` and `Object.seal()` serve a similar purpose, but there's one key difference you need to remember. diff --git a/articles/s/js-proxy-array-negative-index.md b/articles/s/js-proxy-array-negative-index.md index 4d3a8c2f1..bd5e8f606 100644 --- a/articles/s/js-proxy-array-negative-index.md +++ b/articles/s/js-proxy-array-negative-index.md @@ -2,7 +2,8 @@ title: Negative index in JavaScript array shortTitle: Negative index array proxy type: story -tags: [javascript,array,proxy] +language: javascript +tags: [array,proxy] author: chalarangelo cover: budapest-palace excerpt: Ever wanted to use negative indices in JavaScript arrays? Here's a simple way to do it using a Proxy. diff --git a/articles/s/js-proxy-introduction.md b/articles/s/js-proxy-introduction.md index 915617cb4..8236d0e2c 100644 --- a/articles/s/js-proxy-introduction.md +++ b/articles/s/js-proxy-introduction.md @@ -2,7 +2,8 @@ title: An Introduction to JavaScript Proxy shortTitle: JavaScript Proxy Introduction type: story -tags: [javascript,object,proxy,pattern] +language: javascript +tags: [object,proxy,pattern] author: chalarangelo cover: red-mountain-range excerpt: A quick introduction to the JavaScript Proxy object and where it can be used. diff --git a/articles/s/js-remove-array-duplicates.md b/articles/s/js-remove-array-duplicates.md index 6cc64036a..d73bbeea4 100644 --- a/articles/s/js-remove-array-duplicates.md +++ b/articles/s/js-remove-array-duplicates.md @@ -2,7 +2,8 @@ title: "Tip: Remove duplicates from a JavaScript array" shortTitle: Remove duplicates from an array type: tip -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: architectural excerpt: Easily remove duplicates from a JavaScript array using the built-in `Set` object. diff --git a/articles/s/js-remove-element-from-array.md b/articles/s/js-remove-element-from-array.md index 587f331f3..adf0c2b7d 100644 --- a/articles/s/js-remove-element-from-array.md +++ b/articles/s/js-remove-element-from-array.md @@ -2,7 +2,8 @@ title: Remove an element from a JavaScript array shortTitle: Remove element from array type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: maple-leaf-palette excerpt: Did you know there are multiple ways to remove an element from an array? Let's take a look. diff --git a/articles/s/js-remove-trailing-zeros.md b/articles/s/js-remove-trailing-zeros.md index b69f6f92d..d2ca4c67a 100644 --- a/articles/s/js-remove-trailing-zeros.md +++ b/articles/s/js-remove-trailing-zeros.md @@ -2,7 +2,8 @@ title: How can I remove trailing zeros from a number in JavaScript? shortTitle: Remove trailing zeros from number type: story -tags: [javascript,math] +language: javascript +tags: [math] author: chalarangelo cover: island-corridor excerpt: When formatting decimal values in JavaScript, trailing zeros can be undesired. Here's how to deal with them. diff --git a/articles/s/js-replace-all-occurences-of-string.md b/articles/s/js-replace-all-occurences-of-string.md index 1db31f604..653dccd36 100644 --- a/articles/s/js-replace-all-occurences-of-string.md +++ b/articles/s/js-replace-all-occurences-of-string.md @@ -2,7 +2,8 @@ title: Replace all occurrences of a string in JavaScript shortTitle: Replace all occurrences of a string type: story -tags: [javascript,string,regexp] +language: javascript +tags: [string,regexp] author: chalarangelo cover: blue-computer excerpt: If you need to replace all occurrences of a string in JavaScript, you have a couple of options. diff --git a/articles/s/js-spread-operator-tricks.md b/articles/s/js-spread-operator-tricks.md index b6ea1bf85..f73bfee31 100644 --- a/articles/s/js-spread-operator-tricks.md +++ b/articles/s/js-spread-operator-tricks.md @@ -2,7 +2,8 @@ title: 3 ways to use the JavaScript spread operator with arrays shortTitle: Array tricks using the spread operator type: story -tags: [javascript,array] +language: javascript +tags: [array] author: chalarangelo cover: succulent-crowd excerpt: JavaScript’s spread operator is a very versatile tool. Here are some simple ways to use it. diff --git a/articles/s/js-static-instance-methods.md b/articles/s/js-static-instance-methods.md index f81071052..6b6327009 100644 --- a/articles/s/js-static-instance-methods.md +++ b/articles/s/js-static-instance-methods.md @@ -2,7 +2,8 @@ title: What is the difference between static and instance methods? shortTitle: Static Instance Methods type: question -tags: [javascript,object,function,class] +language: javascript +tags: [object,function,class] author: chalarangelo cover: lake-runner excerpt: Static and instance methods are pretty easy to distinguish and serve different purposes. Learn all about them in this article. diff --git a/articles/s/js-textcontent-or-innertext.md b/articles/s/js-textcontent-or-innertext.md index 0fe198657..0baa4443f 100644 --- a/articles/s/js-textcontent-or-innertext.md +++ b/articles/s/js-textcontent-or-innertext.md @@ -2,7 +2,8 @@ title: How are HTMLElement.innerText and Node.textContent different? shortTitle: Differences between innerText and textContent type: question -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: dark-city excerpt: While these two properties are very similar, there are some key differences that you should be aware of. diff --git a/articles/s/js-timeout-interval-delay.md b/articles/s/js-timeout-interval-delay.md index d5af27474..a9e3f924c 100644 --- a/articles/s/js-timeout-interval-delay.md +++ b/articles/s/js-timeout-interval-delay.md @@ -2,7 +2,8 @@ title: How delays work in JavaScript timing functions shortTitle: Delays in JavaScript timing functions type: story -tags: [javascript,browser,timeout] +language: javascript +tags: [browser,timeout] author: chalarangelo cover: river-house-lights excerpt: Did you know that the delay of `setTimeout()` and `setInterval()` is merely a suggestion? diff --git a/articles/s/js-typecheck-array.md b/articles/s/js-typecheck-array.md index 3de3c1b71..bda0b390b 100644 --- a/articles/s/js-typecheck-array.md +++ b/articles/s/js-typecheck-array.md @@ -2,7 +2,8 @@ title: "Tip: Typechecking arrays with Array.isArray()" shortTitle: Array typechecking type: tip -tags: [javascript,type,array] +language: javascript +tags: [type,array] author: chalarangelo cover: purple-flower-field excerpt: Make sure to use the correct method when checking if a JavaScript object is an array. diff --git a/articles/s/js-typecheck-proxy.md b/articles/s/js-typecheck-proxy.md index 4fc567699..289a432d3 100644 --- a/articles/s/js-typecheck-proxy.md +++ b/articles/s/js-typecheck-proxy.md @@ -2,7 +2,8 @@ title: Typechecking objects with Proxy in JavaScript shortTitle: Object typechecking with Proxy type: story -tags: [javascript,object,type,proxy] +language: javascript +tags: [object,type,proxy] author: chalarangelo cover: customs excerpt: A simple way to typecheck objects at runtime using the Proxy object. diff --git a/articles/s/js-window-location-cheatsheet.md b/articles/s/js-window-location-cheatsheet.md index ce1958058..487fda979 100644 --- a/articles/s/js-window-location-cheatsheet.md +++ b/articles/s/js-window-location-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Window.location Cheat Sheet type: cheatsheet -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: yellow-sofa excerpt: A quick reference for the `window.location` object. diff --git a/articles/s/lazy-loading-images.md b/articles/s/lazy-loading-images.md index 4fc14aa79..a35b29647 100644 --- a/articles/s/lazy-loading-images.md +++ b/articles/s/lazy-loading-images.md @@ -2,7 +2,8 @@ title: "Tip: Lazy load images in HTML" shortTitle: Image lazy loading type: tip -tags: [webdev,html,image] +language: html +tags: [webdev,image] author: chalarangelo cover: bridge excerpt: Did you know you can use a native HTML attribute to add lazy load to images? Learn all you need to know with this quick tip. diff --git a/articles/s/nodejs-chrome-debugging.md b/articles/s/nodejs-chrome-debugging.md index 6be76a277..e3915a3fa 100644 --- a/articles/s/nodejs-chrome-debugging.md +++ b/articles/s/nodejs-chrome-debugging.md @@ -2,7 +2,8 @@ title: "Tip: Debugging Node.js using Chrome Developer Tools" shortTitle: Debug Node.js with Chrome Developer Tools type: tip -tags: [javascript,node,debugging] +language: javascript +tags: [node,debugging] author: chalarangelo cover: bug excerpt: Did you know you can use Chrome Developer Tools to debug your Node.js code? Find out how in this short guide. diff --git a/articles/s/nodejs-static-file-server.md b/articles/s/nodejs-static-file-server.md index ae58aa156..8ddd0f15d 100644 --- a/articles/s/nodejs-static-file-server.md +++ b/articles/s/nodejs-static-file-server.md @@ -2,7 +2,8 @@ title: Create a static file server with Node.js shortTitle: Node.js static file server type: story -tags: [javascript,node,server] +language: javascript +tags: [node,server] author: chalarangelo cover: man-cup-laptop excerpt: Create your own static file server with Node.js in just 70 lines of code. diff --git a/articles/s/nodejs-test-module-introduction.md b/articles/s/nodejs-test-module-introduction.md index 01fc72b17..e67331c5f 100644 --- a/articles/s/nodejs-test-module-introduction.md +++ b/articles/s/nodejs-test-module-introduction.md @@ -2,7 +2,8 @@ title: Introduction to the Node.js test module shortTitle: Node.js test module introduction type: story -tags: [javascript,node,testing] +language: javascript +tags: [node,testing] author: chalarangelo cover: contemporary-desk excerpt: The Node.js test module is a new testing tool that's still in its early stages. Learn more about it in this short introduction. diff --git a/articles/s/passive-scroll-listener-performance.md b/articles/s/passive-scroll-listener-performance.md index 651f35094..e4d42717d 100644 --- a/articles/s/passive-scroll-listener-performance.md +++ b/articles/s/passive-scroll-listener-performance.md @@ -2,7 +2,8 @@ title: "Tip: Improve scroll listener performance" shortTitle: Improve scroll listener performance type: tip -tags: [javascript,browser,event] +language: javascript +tags: [browser,event] author: chalarangelo cover: chill-surfing excerpt: Scroll listeners can easily become a performance bottleneck for your web application. Here's how to fix that. diff --git a/articles/s/password-autocomplete-suggestion.md b/articles/s/password-autocomplete-suggestion.md index 12d4ee834..3c7e0a634 100644 --- a/articles/s/password-autocomplete-suggestion.md +++ b/articles/s/password-autocomplete-suggestion.md @@ -2,6 +2,7 @@ title: "Tip: Adding autocomplete to a password field" shortTitle: Password field autocomplete type: tip +language: html tags: [webdev] author: chalarangelo cover: padlocks diff --git a/articles/s/perfect-css-transition-duration.md b/articles/s/perfect-css-transition-duration.md index 3a496c40e..6e76e83f1 100644 --- a/articles/s/perfect-css-transition-duration.md +++ b/articles/s/perfect-css-transition-duration.md @@ -2,7 +2,8 @@ title: "Tip: The perfect duration for CSS transitions" shortTitle: CSS transition duration type: tip -tags: [css,interactivity,visual,animation] +language: css +tags: [interactivity,visual,animation] author: chalarangelo cover: perfect-timing excerpt: Learn how to make your CSS transitions feel perfect when users interact with elements on the page with this simple tip. diff --git a/articles/s/prefetching-resources.md b/articles/s/prefetching-resources.md index 9cef8bf29..0ebe0252a 100644 --- a/articles/s/prefetching-resources.md +++ b/articles/s/prefetching-resources.md @@ -2,7 +2,8 @@ title: "Tip: Prefetching resources in the browser" shortTitle: Resource prefetching type: tip -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: playing-fetch excerpt: Resource prefetching is a great way to improve perceived page speed on your website and requires little effort. Learn how to use it today. diff --git a/articles/s/python-bare-except.md b/articles/s/python-bare-except.md index 51c97ec18..ebd12e50a 100644 --- a/articles/s/python-bare-except.md +++ b/articles/s/python-bare-except.md @@ -2,7 +2,8 @@ title: "Tip: Avoid using bare except in Python" shortTitle: Bare except best practices type: tip -tags: [python,error] +language: python +tags: [error] cover: dark-cloud excerpt: It's generally not a good idea to use bare `except` clause in Python, but do you know why? dateModified: 2022-02-20T05:00:00-04:00 diff --git a/articles/s/python-dict-getkey-vs-dictkey.md b/articles/s/python-dict-getkey-vs-dictkey.md index 6bcab9ea8..ff88c76c5 100644 --- a/articles/s/python-dict-getkey-vs-dictkey.md +++ b/articles/s/python-dict-getkey-vs-dictkey.md @@ -2,7 +2,8 @@ title: "Tip: You should use dict.get(key) instead of dict[key]" shortTitle: dict.get(key) vs dict[key] type: tip -tags: [python,dictionary] +language: python +tags: [dictionary] cover: fruit-feast excerpt: Learn the difference between two common ways to access values in Python dictionaries and level up your code today. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-empty-list.md b/articles/s/python-empty-list.md index 54b4e2003..66912ed08 100644 --- a/articles/s/python-empty-list.md +++ b/articles/s/python-empty-list.md @@ -2,7 +2,8 @@ title: How can I check if a Python list is empty? shortTitle: Empty list type: question -tags: [python,list] +language: python +tags: [list] author: chalarangelo cover: salad-2 excerpt: There's a good way to test the emptiness of a Python list and a better one. Which one are you using? diff --git a/articles/s/python-file-close.md b/articles/s/python-file-close.md index 9fdf58274..b05cc92cc 100644 --- a/articles/s/python-file-close.md +++ b/articles/s/python-file-close.md @@ -2,7 +2,8 @@ title: How to correctly close files in Python shortTitle: Closing files type: story -tags: [python,file] +language: python +tags: [file] cover: flower-pond excerpt: When working with files in Python, it's important to ensure that the file is closed correctly. Here are a couple of ways to do that. dateModified: 2022-02-03T05:00:00-04:00 diff --git a/articles/s/python-fstrings-str-format.md b/articles/s/python-fstrings-str-format.md index b201c9341..63efc8ebf 100644 --- a/articles/s/python-fstrings-str-format.md +++ b/articles/s/python-fstrings-str-format.md @@ -2,7 +2,8 @@ title: "Tip: 2 ways to format a string in Python" shortTitle: String formatting type: tip -tags: [python,string] +language: python +tags: [string] cover: feathers excerpt: Learn two ways to format a string in Python with this quick tip. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-identity-equality.md b/articles/s/python-identity-equality.md index e12cc23a5..ac0a6711d 100644 --- a/articles/s/python-identity-equality.md +++ b/articles/s/python-identity-equality.md @@ -2,7 +2,8 @@ title: What is the difference between Python's equality operators? shortTitle: Python equality operators type: question -tags: [python,type,comparison] +language: python +tags: [type,comparison] cover: umbrellas excerpt: Python provides two distinct comparison operators for different task. Stop mixing them up using this quick guide. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-lists-tuples.md b/articles/s/python-lists-tuples.md index cb61943c6..7acd1e262 100644 --- a/articles/s/python-lists-tuples.md +++ b/articles/s/python-lists-tuples.md @@ -2,7 +2,8 @@ title: What is the difference between lists and tuples in Python? shortTitle: Lists vs Tuples type: question -tags: [python,list] +language: python +tags: [list] author: chalarangelo cover: red-mountain excerpt: Learn how Python's lists and tuples are different and level up your code today. diff --git a/articles/s/python-lowercase.md b/articles/s/python-lowercase.md index 92d8e0885..648871210 100644 --- a/articles/s/python-lowercase.md +++ b/articles/s/python-lowercase.md @@ -2,7 +2,8 @@ title: How do I convert a string to lowercase in Python? shortTitle: Lowercase string type: question -tags: [python,string] +language: python +tags: [string] cover: type-stamps excerpt: Learn of the two different ways to convert strings to lowercase in Python and understand when you should use each one with this quick guide. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-mutable-default-arguments.md b/articles/s/python-mutable-default-arguments.md index d8fe69066..90946ab00 100644 --- a/articles/s/python-mutable-default-arguments.md +++ b/articles/s/python-mutable-default-arguments.md @@ -2,7 +2,8 @@ title: "Tip: Watch out for mutable default arguments in Python" shortTitle: Mutable default arguments type: tip -tags: [python,function] +language: python +tags: [function] cover: goat-wooden-cottage excerpt: Mutable default arguments can trip up Python beginners and veterans alike. Here's a quick workaround to deal with them. dateModified: 2022-02-27T05:00:00-04:00 diff --git a/articles/s/python-named-tuples.md b/articles/s/python-named-tuples.md index 22a16202d..783eefe17 100644 --- a/articles/s/python-named-tuples.md +++ b/articles/s/python-named-tuples.md @@ -2,7 +2,8 @@ title: What are named tuples in Python? shortTitle: Named Tuples type: question -tags: [python,list,dictionary] +language: python +tags: [list,dictionary] cover: mask-quiet excerpt: Understand Python's named tuples and start using them in your projects today. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-slice-assignment.md b/articles/s/python-slice-assignment.md index c021da540..ca262d98a 100644 --- a/articles/s/python-slice-assignment.md +++ b/articles/s/python-slice-assignment.md @@ -2,7 +2,8 @@ title: Understanding Python's slice assignment shortTitle: Python slice assignment type: story -tags: [python,list] +language: python +tags: [list] cover: sliced-fruits excerpt: Learn everything you need to know about Python's slice assignment with this handy guide. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-slice-notation.md b/articles/s/python-slice-notation.md index 362130519..1d2a19661 100644 --- a/articles/s/python-slice-notation.md +++ b/articles/s/python-slice-notation.md @@ -2,7 +2,8 @@ title: Understanding Python's slice notation shortTitle: Python slice notation type: story -tags: [python,list] +language: python +tags: [list] cover: sliced-fruits excerpt: Learn everything you need to know about Python's slice notation with this handy guide. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-sort-dictionary-tuple-key.md b/articles/s/python-sort-dictionary-tuple-key.md index 44116ba09..9e030a47b 100644 --- a/articles/s/python-sort-dictionary-tuple-key.md +++ b/articles/s/python-sort-dictionary-tuple-key.md @@ -2,7 +2,8 @@ title: "Tip: Sort Python dictionary list using a tuple key" shortTitle: Sort dictionary list using a tuple key type: tip -tags: [python,list,dictionary] +language: python +tags: [list,dictionary] author: chalarangelo cover: matrix-flow excerpt: Learn how to sort a Python dictionary list using a tuple key. diff --git a/articles/s/python-sortedlist-vs-list-sort.md b/articles/s/python-sortedlist-vs-list-sort.md index 46d321d5a..cd9d3911c 100644 --- a/articles/s/python-sortedlist-vs-list-sort.md +++ b/articles/s/python-sortedlist-vs-list-sort.md @@ -2,7 +2,8 @@ title: What is the difference between list.sort() and sorted() in Python? shortTitle: List.sort vs sorted type: question -tags: [python,list] +language: python +tags: [list] cover: duck-plants excerpt: Learn the difference between Python's built-in list sorting methods and when one is preferred over the other. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/python-string-is-empty.md b/articles/s/python-string-is-empty.md index ae3086cd3..650f9aedf 100644 --- a/articles/s/python-string-is-empty.md +++ b/articles/s/python-string-is-empty.md @@ -2,7 +2,8 @@ title: How can I check if a string is empty in Python? shortTitle: String is empty type: question -tags: [python,string] +language: python +tags: [string] author: chalarangelo cover: tea-laptop-table excerpt: Here are two quick and elegant ways to check if a string is empty in Python. diff --git a/articles/s/python-swap-variables.md b/articles/s/python-swap-variables.md index ac05170a9..577dd8a59 100644 --- a/articles/s/python-swap-variables.md +++ b/articles/s/python-swap-variables.md @@ -2,7 +2,8 @@ title: 3 ways to swap two variables in Python shortTitle: Variable swapping type: story -tags: [python,variables] +language: python +tags: [variables] cover: leaves-read excerpt: Learn 3 easy ways to swap the values of two variables in Python. dateModified: 2021-11-07T16:34:37+03:00 diff --git a/articles/s/python-trim-whitespace.md b/articles/s/python-trim-whitespace.md index e987b206f..018192dd5 100644 --- a/articles/s/python-trim-whitespace.md +++ b/articles/s/python-trim-whitespace.md @@ -2,7 +2,8 @@ title: How do I trim whitespace from a string in Python? shortTitle: Trim whitespace type: question -tags: [python,string] +language: python +tags: [string] cover: organizer excerpt: Oftentimes you might need to trim whitespace from a string in Python. Learn of three different way to do this in this short guide. dateModified: 2021-12-13T05:00:00-04:00 diff --git a/articles/s/react-conditional-classname.md b/articles/s/react-conditional-classname.md index 6cd92780e..27017128c 100644 --- a/articles/s/react-conditional-classname.md +++ b/articles/s/react-conditional-classname.md @@ -2,7 +2,8 @@ title: "Tip: React conditional className, empty strings and null" shortTitle: Conditional className type: tip -tags: [react,components] +language: react +tags: [components] cover: succulent-red-light excerpt: In React components, you might need to conditionally apply a `className`. Learn how to handle empty values correctly using this handy tip. dateModified: 2021-11-07T16:34:37+03:00 diff --git a/articles/s/react-proptypes-objectof-vs-shape.md b/articles/s/react-proptypes-objectof-vs-shape.md index 3a7277d3b..1a306054b 100644 --- a/articles/s/react-proptypes-objectof-vs-shape.md +++ b/articles/s/react-proptypes-objectof-vs-shape.md @@ -2,7 +2,8 @@ title: React PropTypes - objectOf vs shape shortTitle: PropTypes - objectOf vs shape type: story -tags: [react,components,proptypes] +language: react +tags: [components,proptypes] author: chalarangelo cover: shapes excerpt: Learn the differences between `PropTypes.objectOf()` and `PropTypes.shape()` and where to use each one with this quick guide. diff --git a/articles/s/react-redux-readable-reducers.md b/articles/s/react-redux-readable-reducers.md index c9d72bdd6..40902d9d4 100644 --- a/articles/s/react-redux-readable-reducers.md +++ b/articles/s/react-redux-readable-reducers.md @@ -2,7 +2,8 @@ title: Writing readable reducers in Redux shortTitle: Readable reducer tips type: story -tags: [react,logic] +language: react +tags: [logic] author: chalarangelo cover: beach-from-above excerpt: When working with stateful code, you can run into issues realted to complexity and readability. Oftentimes, they are easily fixable. diff --git a/articles/s/react-rendering-basics.md b/articles/s/react-rendering-basics.md index 2677783f6..84d5b32b9 100644 --- a/articles/s/react-rendering-basics.md +++ b/articles/s/react-rendering-basics.md @@ -1,7 +1,8 @@ --- title: React rendering basics type: story -tags: [react,render] +language: react +tags: [render] author: chalarangelo cover: comic-glasses excerpt: Take a deeper dive into React's rendering process and understand the basics behind the popular JavaScript framework. diff --git a/articles/s/react-rendering-optimization.md b/articles/s/react-rendering-optimization.md index 5ce120ab0..dcfa1d263 100644 --- a/articles/s/react-rendering-optimization.md +++ b/articles/s/react-rendering-optimization.md @@ -1,7 +1,8 @@ --- title: React rendering optimization type: story -tags: [react,render] +language: react +tags: [render] author: chalarangelo cover: comic-glasses excerpt: Take a deeper dive into React's rendering process and understand how to make small yet powerful tweaks to optimize performance. diff --git a/articles/s/react-rendering-state.md b/articles/s/react-rendering-state.md index 5db319f7b..587589689 100644 --- a/articles/s/react-rendering-state.md +++ b/articles/s/react-rendering-state.md @@ -1,7 +1,8 @@ --- title: React rendering state type: story -tags: [react,render] +language: react +tags: [render] author: chalarangelo cover: comic-glasses excerpt: Take a deeper dive into React's rendering process and understand the role of the Context API and Redux in it. diff --git a/articles/s/react-selected-option.md b/articles/s/react-selected-option.md index 3fa1235a9..6aec811ff 100644 --- a/articles/s/react-selected-option.md +++ b/articles/s/react-selected-option.md @@ -2,7 +2,8 @@ title: How can I set the value of a select input in React? shortTitle: Select input value type: question -tags: [react,components,input] +language: react +tags: [components,input] cover: two-doors excerpt: Learn of all the different ways to set the value of a selected input in React with this quick guide. dateModified: 2021-06-12T19:30:41+03:00 diff --git a/articles/s/react-use-effect-primitive-dependencies.md b/articles/s/react-use-effect-primitive-dependencies.md index b21aa1a01..4c2757226 100644 --- a/articles/s/react-use-effect-primitive-dependencies.md +++ b/articles/s/react-use-effect-primitive-dependencies.md @@ -2,7 +2,8 @@ title: "Tip: Prefer primitives in useEffect dependencies" shortTitle: Primitive useEffect dependencies type: tip -tags: [react,hooks,effect,object,comparison] +language: react +tags: [hooks,effect,object,comparison] author: chalarangelo cover: automaton excerpt: Avoid unnecessary re-runs by using primitive dependencies in your React effect. diff --git a/articles/s/react-use-interval-explained.md b/articles/s/react-use-interval-explained.md index 6a9635bf7..7e19886af 100644 --- a/articles/s/react-use-interval-explained.md +++ b/articles/s/react-use-interval-explained.md @@ -2,7 +2,8 @@ title: Write a useInterval hook in React shortTitle: Step-by-step useInterval hook type: story -tags: [react,hooks,effect] +language: react +tags: [hooks,effect] author: chalarangelo cover: clock excerpt: Wrapping your mind around React hooks and how they interact with `setInterval()` can be difficult. Here's a guide to get you started. diff --git a/articles/s/react-use-state-with-label.md b/articles/s/react-use-state-with-label.md index 970e7526b..750199e55 100644 --- a/articles/s/react-use-state-with-label.md +++ b/articles/s/react-use-state-with-label.md @@ -2,7 +2,8 @@ title: "Tip: Label your useState values in React developer tools" shortTitle: Labelling useState values type: tip -tags: [react,hooks] +language: react +tags: [hooks] author: chalarangelo cover: bunny-poster excerpt: Multiple `useState` hooks in React can complicate things while debugging. Luckily, there's an easy way to label these values. diff --git a/articles/s/regexp-cheatsheet.md b/articles/s/regexp-cheatsheet.md index c76eca08a..8d1a8ca0c 100644 --- a/articles/s/regexp-cheatsheet.md +++ b/articles/s/regexp-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Regular Expressions Cheat Sheet type: cheatsheet -tags: [javascript,string,regexp,cheatsheet] +language: javascript +tags: [string,regexp,cheatsheet] author: chalarangelo cover: tools excerpt: Regular expressions are a very useful tool. Save this cheatsheet for when you need to look up their syntax and speed up your development. diff --git a/articles/s/resource-preloading-cheatsheet.md b/articles/s/resource-preloading-cheatsheet.md index c371fa15d..d49765cd3 100644 --- a/articles/s/resource-preloading-cheatsheet.md +++ b/articles/s/resource-preloading-cheatsheet.md @@ -1,7 +1,8 @@ --- title: Resource Preloading Cheat Sheet type: cheatsheet -tags: [webdev,html,browser] +language: html +tags: [webdev,browser] author: chalarangelo cover: folded-map excerpt: Preloading content is one of many ways to improve your website's performance. diff --git a/articles/s/responsive-favicon-dark-mode.md b/articles/s/responsive-favicon-dark-mode.md index 223f9f7f5..18d6bb89e 100644 --- a/articles/s/responsive-favicon-dark-mode.md +++ b/articles/s/responsive-favicon-dark-mode.md @@ -2,7 +2,8 @@ title: How can I create a custom responsive favicon for dark mode? shortTitle: Responsive dark mode favicon type: question -tags: [css,visual] +language: css +tags: [visual] author: chalarangelo cover: dark-mode excerpt: Learn how to create a custom responsive favicon that can adapt its color palette for dark mode with this quick guide. diff --git a/articles/s/reversed-list.md b/articles/s/reversed-list.md index 7fff2e137..ebe352de7 100644 --- a/articles/s/reversed-list.md +++ b/articles/s/reversed-list.md @@ -2,7 +2,8 @@ title: "Tip: Create a descending list of numbered items" shortTitle: Descending list type: tip -tags: [webdev,html] +language: html +tags: [webdev] author: chalarangelo cover: ancient-greek-building excerpt: Did you know there's an easy way to create a descending list of numbered items with pure HTML? Learn how with this handy tip. diff --git a/articles/s/select-focused-dom-element.md b/articles/s/select-focused-dom-element.md index 6d6e4d8db..c19da1505 100644 --- a/articles/s/select-focused-dom-element.md +++ b/articles/s/select-focused-dom-element.md @@ -2,7 +2,8 @@ title: "Tip: Select the focused DOM element" shortTitle: Focused DOM element type: tip -tags: [javascript,browser] +language: javascript +tags: [browser] author: chalarangelo cover: horse-sunset excerpt: Here's a quick and easy way to select the currently focused DOM element in JavaScript. diff --git a/articles/s/setup-python3-pip3-as-default.md b/articles/s/setup-python3-pip3-as-default.md index 4d3be44e9..1b502700e 100644 --- a/articles/s/setup-python3-pip3-as-default.md +++ b/articles/s/setup-python3-pip3-as-default.md @@ -2,7 +2,8 @@ title: "Tip: Set up Python 3 and pip 3 as default" shortTitle: Python 3 and pip 3 setup type: tip -tags: [python,setup] +language: python +tags: [setup] author: chalarangelo cover: avocado-slices excerpt: A very common problem when working with Python is having to remember the correct version. Luckily, there's an easy fix for that. diff --git a/articles/s/technical-debt.md b/articles/s/technical-debt.md index 557e6b54f..1b3e12acf 100644 --- a/articles/s/technical-debt.md +++ b/articles/s/technical-debt.md @@ -1,7 +1,7 @@ --- title: Technical debt type: story -tags: [career,webdev,programming,management] +tags: [webdev,career,programming,management] author: chalarangelo cover: new-york excerpt: Learn what technical debt is, its causes and symptoms, and how to deal with it. diff --git a/articles/s/testing-async-react-components.md b/articles/s/testing-async-react-components.md index d543f8a14..ef5585a97 100644 --- a/articles/s/testing-async-react-components.md +++ b/articles/s/testing-async-react-components.md @@ -2,7 +2,8 @@ title: Testing React components that update asynchronously with React Testing Library shortTitle: Asynchronous component update testing type: story -tags: [react,testing,event] +language: react +tags: [testing,event] cover: colorful-lounge excerpt: Testing React components that update asynchronously is pretty common. Learn how to deal with common issues and speed up your testing. dateModified: 2021-11-07T16:34:37+03:00 diff --git a/articles/s/testing-react-portals.md b/articles/s/testing-react-portals.md index d270f84c8..9dae1744c 100644 --- a/articles/s/testing-react-portals.md +++ b/articles/s/testing-react-portals.md @@ -2,7 +2,8 @@ title: Testing React portals shortTitle: Portal testing type: story -tags: [react,testing] +language: react +tags: [testing] author: chalarangelo cover: portal-timelapse excerpt: Testing React components that use portals can be difficult until you understand what you really need to be testing. diff --git a/articles/s/testing-redux-connected-components.md b/articles/s/testing-redux-connected-components.md index 45e31ab81..ae71c251f 100644 --- a/articles/s/testing-redux-connected-components.md +++ b/articles/s/testing-redux-connected-components.md @@ -2,7 +2,8 @@ title: Testing Redux-connected components with React Testing Library shortTitle: Redux-connected components testing type: story -tags: [react,testing] +language: react +tags: [testing] author: chalarangelo cover: sparkles excerpt: Testing Redux-connected components is pretty common. Learn how to use this simple utility function to speed up your testing. diff --git a/articles/s/testing-stateful-ui-components.md b/articles/s/testing-stateful-ui-components.md index aa5bf2047..a2222b752 100644 --- a/articles/s/testing-stateful-ui-components.md +++ b/articles/s/testing-stateful-ui-components.md @@ -2,7 +2,8 @@ title: An approach to testing stateful React components shortTitle: Stateful component testing type: story -tags: [react,testing] +language: react +tags: [testing] author: chalarangelo cover: lake-trees excerpt: Testing stateful React components is not difficult, but did you know there's a solution that doesn't involve testing state directly? diff --git a/articles/s/the-case-for-javascript-trailing-commas.md b/articles/s/the-case-for-javascript-trailing-commas.md index c95323244..4de39230e 100644 --- a/articles/s/the-case-for-javascript-trailing-commas.md +++ b/articles/s/the-case-for-javascript-trailing-commas.md @@ -2,7 +2,8 @@ title: The case for trailing commas in JavaScript shortTitle: Trailing commas in JavaScript type: story -tags: [javascript,webdev] +language: javascript +tags: [webdev] author: chalarangelo cover: contemporary-desk excerpt: Trailing commas are not without controversy. Here's why I think you should use them. diff --git a/articles/s/typographic-scale-basics.md b/articles/s/typographic-scale-basics.md index e3f076b3d..66c40143e 100644 --- a/articles/s/typographic-scale-basics.md +++ b/articles/s/typographic-scale-basics.md @@ -1,7 +1,8 @@ --- title: Typographic scale basics type: story -tags: [css,webdev,typography] +language: css +tags: [webdev,typography] author: chalarangelo cover: typography excerpt: Typography might seem intimidating, but you can quickly and easily create a simple typographic scale with this basic technique. diff --git a/articles/s/zooming-accessibility-tips.md b/articles/s/zooming-accessibility-tips.md index 48061d358..67f73044c 100644 --- a/articles/s/zooming-accessibility-tips.md +++ b/articles/s/zooming-accessibility-tips.md @@ -2,6 +2,7 @@ title: Why using maximum-scale can harm your page's accessibility shortTitle: Accessibility and maximum-scale type: story +language: html tags: [webdev] author: chalarangelo cover: camera-zoom diff --git a/articles/template.md b/articles/template.md index dbfaa896e..f748a08cf 100644 --- a/articles/template.md +++ b/articles/template.md @@ -2,7 +2,8 @@ title: My amazing story shortTitle: Amazing story type: story -tags: [javascript,webdev] +language: javascript +tags: [webdev] author: chalarangelo cover: image excerpt: A short summary of your story up to 180 characters long. diff --git a/css/template.md b/css/template.md index 782c0e7b7..b566cd4f2 100644 --- a/css/template.md +++ b/css/template.md @@ -1,6 +1,7 @@ --- title: Snippet Name type: snippet +language: css tags: [other] cover: image dateModified: 2021-06-13T05:00:00-04:00 diff --git a/git/template.md b/git/template.md index 4da503afa..b7197756a 100644 --- a/git/template.md +++ b/git/template.md @@ -1,6 +1,7 @@ --- title: Snippet name type: snippet +language: git tags: [branch] cover: image dateModified: 2021-06-13T05:00:00-04:00 diff --git a/js/template.md b/js/template.md index c969a2509..102512676 100644 --- a/js/template.md +++ b/js/template.md @@ -1,6 +1,7 @@ --- title: Function name type: snippet +language: javascript tags: [array] cover: image dateModified: 2021-06-13T05:00:00-04:00 diff --git a/python/template.md b/python/template.md index a62658cc0..7426e5003 100644 --- a/python/template.md +++ b/python/template.md @@ -1,6 +1,7 @@ --- title: Function name type: snippet +language: python tags: [utility] cover: image dateModified: 2021-06-13T05:00:00-04:00 diff --git a/react/template.md b/react/template.md index 13b7acf17..1b7b39729 100644 --- a/react/template.md +++ b/react/template.md @@ -1,6 +1,7 @@ --- title: Component Name type: snippet +language: react tags: [components,state,effect] cover: image dateModified: 2021-06-13T05:00:00-04:00