# Optional:
category: React
-updated: 2017-08-30 # To show in the updated list
+updated: 2020-06-14
ads: false # Add this to disable ads
weight: -5 # lower number = higher in related posts list
deprecated: true # Don't show in related posts
weight: -1
authors:
- github: ZackNeyland
-updated: 2018-03-06
+updated: 2018-03-07
---
### Device Basics
---
title: AppleScript
-updated: 2018-03-17
+updated: 2018-12-06
layout: 2017/sheet
category: macOS
prism_languages: [applescript]
title: Atom
category: Apps
layout: 2017/sheet
-updated: 2017-09-20
+updated: 2020-07-03
---
## Shortcuts
title: Awesome Redux
category: React
layout: 2017/sheet
-updated: 2017-08-30
+updated: 2017-11-19
---
### redux-actions
---
title: Backbone.js
layout: 2017/sheet
-updated: 2017-09-04
+updated: 2018-12-06
category: JavaScript libraries
---
category: CLI
layout: 2017/sheet
tags: [Featured]
-updated: 2019-10-02
+updated: 2020-07-04
keywords:
- Variables
- Functions
echo {A,B}.js
```
-| `{A,B}` | Same as `A B` |
+| Expression | Description |
+| ---------- | ------------------- |
+| `{A,B}` | Same as `A B` |
| `{A,B}.js` | Same as `A.js B.js` |
-| `{1..5}` | Same as `1 2 3 4 5` |
+| `{1..5}` | Same as `1 2 3 4 5` |
See: [Brace expansion](http://wiki.bash-hackers.org/syntax/expansion/brace)
### Substitution
-| Code | Description |
-| --- | --- |
-| `${FOO%suffix}` | Remove suffix |
-| `${FOO#prefix}` | Remove prefix |
-| --- | --- |
-| `${FOO%%suffix}` | Remove long suffix |
-| `${FOO##prefix}` | Remove long prefix |
-| --- | --- |
-| `${FOO/from/to}` | Replace first match |
-| `${FOO//from/to}` | Replace all |
-| --- | --- |
-| `${FOO/%from/to}` | Replace suffix |
-| `${FOO/#from/to}` | Replace prefix |
+| Code | Description |
+| ----------------- | ------------------- |
+| `${FOO%suffix}` | Remove suffix |
+| `${FOO#prefix}` | Remove prefix |
+| --- | --- |
+| `${FOO%%suffix}` | Remove long suffix |
+| `${FOO##prefix}` | Remove long prefix |
+| --- | --- |
+| `${FOO/from/to}` | Replace first match |
+| `${FOO//from/to}` | Replace all |
+| --- | --- |
+| `${FOO/%from/to}` | Replace suffix |
+| `${FOO/#from/to}` | Replace prefix |
### Comments
### Commands
-| `history` | Show history |
+| Command | Description |
+| --------------------- | ----------------------------------------- |
+| `history` | Show history |
| `shopt -s histverify` | Don't execute expanded result immediately |
### Expansions
-| `!$` | Expand last parameter of most recent command |
-| `!*` | Expand all parameters of most recent command |
-| `!-n` | Expand `n`th most recent command |
-| `!n` | Expand `n`th command in history |
+| Expression | Description |
+| ------------ | ---------------------------------------------------- |
+| `!$` | Expand last parameter of most recent command |
+| `!*` | Expand all parameters of most recent command |
+| `!-n` | Expand `n`th most recent command |
+| `!n` | Expand `n`th command in history |
| `!<command>` | Expand most recent invocation of command `<command>` |
### Operations
### Special variables
-| `$?` | Exit status of last task |
-| `$!` | PID of last background task |
-| `$$` | PID of shell |
-| `$0` | Filename of the shell script |
+| Expression | Description |
+| ---------- | ---------------------------- |
+| `$?` | Exit status of last task |
+| `$!` | PID of last background task |
+| `$$` | PID of shell |
+| `$0` | Filename of the shell script |
See [Special parameters](http://wiki.bash-hackers.org/syntax/shellvars#special_parameters_and_shell_variables).
category: JavaScript libraries
layout: 2017/sheet
weight: -1
-updated: 2017-09-04
+updated: 2017-09-08
---
### Also see
category: Ruby libraries
layout: 2017/sheet
weight: -5
-updated: 2017-08-30
+updated: 2020-06-13
tags: [Featurable]
---
category: JavaScript libraries
layout: 2017/sheet
weight: -3
-updated: 2017-08-30
+updated: 2018-06-25
version: chai v4.x
description: |
expect(x).to.be.equal(y) 〉 assert.equal(x, y) 〉 .to.be.true 〉 jQuery, assertions, TDD and BDD, and other Chai examples.
title: Cheatsheet styles
layout: 2017/sheet
tags: [WIP]
-updated: 2017-09-22
+updated: 2017-10-26
intro: |
This is a reference of styles that you can use on Devhints cheatsheets. How
meta!
weight: -1
authors:
- github: benolot
-updated: 2018-03-06
+updated: 2020-02-23
description: |
Basic guide on how to use Composer, the PHP Package manager.
---
title: Cron
category: CLI
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2018-05-03
weight: -3
---
title: CSS antialiasing
category: CSS
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2017-10-13
intro: |
Here's a 4-line snippet on how to get beautiful, antialiased text with CSS.
---
title: CSS flexbox
category: CSS
layout: 2017/sheet
-updated: 2017-08-29
+updated: 2020-06-13
prism_languages: [css]
weight: -3
---
---
title: CSS Grid
category: CSS
-updated: 2018-12-06
+updated: 2019-08-23
layout: 2017/sheet
prism_languages: [css]
---
title: cssnext
category: CSS
layout: 2017/sheet
-updated: 2017-08-30
+updated: 2017-10-30
tags: [Featurable]
weight: -3
---
title: Curl
category: CLI
layout: 2017/sheet
-updated: 2017-09-20
+updated: 2020-03-09
---
## Options
title: Date & time formats
layout: 2017/sheet
weight: -5
-updated: 2017-09-04
+updated: 2017-11-27
tags: [Featurable]
---
layout: 2017/sheet
prism_languages: [yaml]
weight: -1
-updated: 2018-06-26
+updated: 2020-01-01
---
### Basic example
category: Devops
layout: 2017/sheet
prism_languages: [docker]
-updated: 2018-03-17
+updated: 2019-10-20
---
## Reference
layout: 2017/sheet
prism_languages: [ini]
weight: -1
-updated: 2017-09-04
+updated: 2019-09-25
category: Apps
---
category: Elixir
layout: 2017/sheet
tags: [New]
-updated: 2017-08-26
+updated: 2018-07-04
weight: -10
---
category: Markup
layout: 2017/sheet
prism_languages: [html, css]
-updated: 2018-11-10
+updated: 2020-07-03
intro: |
Emmet is a markup language for expanding CSS rules into HTML
---
title: Enzyme
category: React
layout: 2017/sheet
-updated: 2018-04-27
+updated: 2020-02-12
tags: [Featured]
weight: -1
keywords:
title: Enzyme v2
category: React
layout: 2017/sheet
-updated: 2017-09-14
+updated: 2017-10-12
weight: -1
deprecated_by: /enzyme
intro: |
category: JavaScript
layout: 2017/sheet
tags: [Featured]
-updated: 2017-10-21
+updated: 2020-07-02
weight: -10
intro: |
A quick overview of new JavaScript features in ES2015, ES2016, ES2017, ES2018 and beyond.
title: ExUnit
category: Elixir
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2018-11-19
---
### Test cases
title: Fastify
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-09-21
+updated: 2017-09-23
intro: |
[Fastify](https://github.com/fastify/fastify) lets you create HTTP servers in Node.js with good performance. This guide targets fastify v0.28.x.
---
---
title: Figlet
layout: 2017/sheet
-updated: 2017-10-08
+updated: 2018-06-14
introduction: |
[Figlet] renders text as ASCII art. Here's a list of Figlet fonts for Figlet 2.2.5.
[Figlet]: http://www.figlet.org/
title: Find
category: CLI
layout: 2017/sheet
-updated: 2019-10-01
+updated: 2019-11-17
---
### Usage
category: CLI
layout: 2017/sheet
prism_languages: [fish]
-updated: 2017-10-16
+updated: 2018-01-31
weight: -1
---
title: Phat
category: Fitness
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2017-08-30
---
### Day 1: Upper Body Power
title: Flow
layout: 2017/sheet
category: JavaScript libraries
-updated: 2017-09-20
+updated: 2018-11-07
weight: -3
tags: [Featurable]
---
title: Git branches
category: Git
layout: 2017/sheet
-updated: 2017-09-20
+updated: 2020-02-13
---
## Working with branches
title: Git log format string
category: Git
layout: 2017/sheet
-updated: 2017-10-18
+updated: 2018-11-07
weight: -1
keywords:
- "git log --pretty=format:%H"
category: CLI
layout: 2017/sheet
tags: []
-updated: 2017-10-18
+updated: 2017-10-22
weight: 0
intro: |
[GnuPG](https://gnupg.org/) is a complete and free implementation of the OpenPGP standard.
weight: -3
tags: [Featured]
category: C-like
-updated: 2017-09-15
+updated: 2020-07-02
---
## Getting started
layout: 2017/sheet
prism_languages: [ruby]
weight: -3
-updated: 2018-04-07
+updated: 2018-12-06
category: Ruby
intro: |
Goby's language design is based on Ruby language's, slim and shaped up. Differences in syntax between them is very small.
---
title: GraphQL
layout: 2017/sheet
-updated: 2017-09-23
+updated: 2019-07-07
category: API
---
title: Gremlins.js
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-10-11
+updated: 2017-10-22
weight: -1
intro: |
[Gremlins](https://github.com/marmelab/gremlins.js) is a JavaScript library to do "monkey-testing" by providing random user input (clicks, scrolls, and so on).
title: HTML emails
category: HTML
layout: 2017/sheet
-updated: 2017-08-29
+updated: 2017-08-30
---
### Properties to avoid
title: Input tag
category: HTML
layout: 2017/sheet
-updated: 2017-10-29
+updated: 2017-10-30
weight: -3
---
title: HTML meta tags
category: HTML
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2020-03-20
weight: -3
---
category: CLI
layout: 2017/sheet
weight: -3
-updated: 2017-09-04
+updated: 2018-11-16
description: |
$ http POST http://example.com name="John" Host:example.com — JSON, cookies, files, auth, and other httpie examples.
intro: |
title: Internet Explorer
category: HTML
layout: 2017/sheet
-updated: 2017-09-20
+updated: 2018-03-06
---
## Support table
title: Legacy IE bugs
category: HTML
layout: 2017/sheet
-updated: 2017-10-29
+updated: 2018-03-06
intro: |
A bunch of bugs to take care of if you're going to target legacy IE browsers.
---
layout: 2017/sheet
category: Jekyll
tags: [WIP]
-updated: 2017-08-26
+updated: 2017-11-17
---
{% raw %}
layout: 2017/sheet
prism_languages: [bash, yaml, ruby]
category: Jekyll
-updated: 2017-09-01
+updated: 2018-08-25
---
{% raw %}
title: Jest
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-09-01
+updated: 2020-06-17
weight: -3
tags: [Featurable]
intro: |
title: Jsdoc
category: JavaScript
layout: 2017/sheet
-updated: 2019-01-10
+updated: 2020-06-23
weight: -1
---
---
title: Knex
layout: 2017/sheet
-updated: 2017-09-23
+updated: 2020-06-03
category: Databases
intro: |
[Knex](http://knexjs.org/) is an SQL query builder for Node.js.
title: Ledger CLI
category: Ledger
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2020-05-23
weight: -5
---
title: Licenses
section: Development
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2017-08-30
---
## Licenses
category: JavaScript libraries
layout: 2017/sheet
weight: -3
-updated: 2017-10-17
+updated: 2020-06-24
description: |
This is not a complete list.
---
category: Markup
layout: 2017/sheet
prism_languages: [markdown]
-updated: 2017-09-20
+updated: 2020-06-24
weight: -1
---
title: Mobx
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-05-14
+updated: 2018-05-14
---
### Properties
title: Moment.js
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-10-10
+updated: 2020-02-12
tags: [Featurable]
---
---
title: MySQL
-updated: 2018-12-25
+updated: 2020-01-03
layout: 2017/sheet
category: Databases
---
category: JavaScript
layout: 2017/sheet
weight: -1
-updated: 2017-10-27
+updated: 2019-12-24
---
### Package management
category: Node.js
layout: 2017/sheet
prism_languages: [json]
-updated: 2017-08-30
+updated: 2020-06-23
weight: -3
---
---
title: Parsley.js
-updated: 2017-10-19
+updated: 2018-12-06
weight: -1
layout: 2017/sheet
category: JavaScript libraries
title: "Phoenix: Plug.Conn"
category: Elixir
layout: 2017/sheet
-updated: 2017-08-29
+updated: 2018-01-19
weight: -5
---
category: Elixir
layout: 2017/sheet
tags: [WIP]
-updated: 2017-08-29
+updated: 2017-08-30
---
## Schemas
category: Elixir
layout: 2017/sheet
weight: -1
-updated: 2017-09-04
+updated: 2020-02-23
---
### Creating
category: Elixir
layout: 2017/sheet
weight: -1
-updated: 2018-01-15
+updated: 2018-03-06
---
### Quick start
category: Elixir
layout: 2017/sheet
weight: -1
-updated: 2018-01-15
+updated: 2018-03-06
---
See [Phoenix](./phoenix) for a more updated cheatsheet.
category: CLI
layout: 2017/sheet
authors: { github: "Dr-Dino" }
-updated: 2018-03-15
+updated: 2020-05-08
---
### Fork mode
---
title: Polyfill.io
category: JavaScript libraries
-updated: 2017-10-26
+updated: 2020-07-02
layout: 2017/sheet
intro: |
[Polyfill.io](https://polyfill.io) is a service that serves JavaScript polyfills.
title: PostgreSQL JSON
layout: 2017/sheet
prism_languages: [sql]
-updated: 2017-09-22
+updated: 2018-12-06
category: Databases
---
category: JavaScript libraries
layout: 2017/sheet
prism_languages: [jade]
-updated: 2017-08-31
+updated: 2017-10-30
weight: -3
tags: [Featurable]
---
title: rbenv
category: Ruby
layout: 2017/sheet
-updated: 2017-10-11
+updated: 2018-02-20
weight: -1
description: |
A one-page guide to rbenv Ruby version manager, with usage examples and more.
layout: 2017/sheet
ads: true
tags: [Featured]
-updated: 2018-10-04
+updated: 2020-07-04
weight: -10
keywords:
- React.Component
{: .-two-column}
### Mounting
-
-| Method | Description |
-| --- | --- |
-| `constructor` _(props)_ | Before rendering [#](https://reactjs.org/docs/react-component.html#constructor) |
-| `componentWillMount()` | _Don't use this_ [#](https://reactjs.org/docs/react-component.html#componentwillmount) |
-| `render()` | Render [#](https://reactjs.org/docs/react-component.html#render) |
-| `componentDidMount()` | After rendering (DOM available) [#](https://reactjs.org/docs/react-component.html#componentdidmount) |
-| --- | --- |
-| `componentWillUnmount()` | Before DOM removal [#](https://reactjs.org/docs/react-component.html#componentwillunmount) |
-| --- | --- |
-| `componentDidCatch()` | Catch errors (16+) [#](https://reactjs.org/blog/2017/07/26/error-handling-in-react-16.html) |
+| Method | Description |
+| ------------------------ | ---------------------------------------------------------------------------------------------------- |
+| `constructor` _(props)_ | Before rendering [#](https://reactjs.org/docs/react-component.html#constructor) |
+| `componentWillMount()` | _Don't use this_ [#](https://reactjs.org/docs/react-component.html#componentwillmount) |
+| `render()` | Render [#](https://reactjs.org/docs/react-component.html#render) |
+| `componentDidMount()` | After rendering (DOM available) [#](https://reactjs.org/docs/react-component.html#componentdidmount) |
+| --- | --- |
+| `componentWillUnmount()` | Before DOM removal [#](https://reactjs.org/docs/react-component.html#componentwillunmount) |
+| --- | --- |
+| `componentDidCatch()` | Catch errors (16+) [#](https://reactjs.org/blog/2017/07/26/error-handling-in-react-16.html) |
Set initial the state on `constructor()`.
Add DOM event handlers, timers (etc) on `componentDidMount()`, then remove them on `componentWillUnmount()`.
### Updating
-
-| Method | Description |
-| --- | --- |
-| `componentDidUpdate` *(prevProps, prevState, snapshot)* | Use `setState()` here, but remember to compare props |
-| `shouldComponentUpdate` *(newProps, newState)* | Skips `render()` if returns false |
-| `render()` | Render |
-| `componentDidUpdate` *(prevProps, prevState)* | Operate on the DOM here |
+| Method | Description |
+| ------------------------------------------------------- | ---------------------------------------------------- |
+| `componentDidUpdate` _(prevProps, prevState, snapshot)_ | Use `setState()` here, but remember to compare props |
+| `shouldComponentUpdate` _(newProps, newState)_ | Skips `render()` if returns false |
+| `render()` | Render |
+| `componentDidUpdate` _(prevProps, prevState)_ | Operate on the DOM here |
Called when parents change properties and `.setState()`. These are not called for initial renders.
See: [Typechecking with PropTypes](https://reactjs.org/docs/typechecking-with-proptypes.html)
-| `any` | Anything |
+| Key | Description |
+| ----- | ----------- |
+| `any` | Anything |
#### Basic
-| `string` | |
-| `number` | |
-| `func` | Function |
-| `bool` | True or false |
+| Key | Description |
+| -------- | ------------- |
+| `string` | |
+| `number` | |
+| `func` | Function |
+| `bool` | True or false |
#### Enum
-| `oneOf`_(any)_ | Enum types |
-| `oneOfType`_(type array)_ | Union |
+| Key | Description |
+| ------------------------- | ----------- |
+| `oneOf`_(any)_ | Enum types |
+| `oneOfType`_(type array)_ | Union |
#### Array
-| `array` | |
-| `arrayOf`_(...)_ | |
+| Key | Description |
+| ---------------- | ----------- |
+| `array` | |
+| `arrayOf`_(...)_ | |
#### Object
-| `object` | |
-| `objectOf`_(...)_ | Object with values of a certain type |
-| `instanceOf`_(...)_ | Instance of a class |
-| `shape`_(...)_ | |
+| Key | Description |
+| ------------------- | ------------------------------------ |
+| `object` | |
+| `objectOf`_(...)_ | Object with values of a certain type |
+| `instanceOf`_(...)_ | Instance of a class |
+| `shape`_(...)_ | |
#### Elements
-| `element` | React element |
-| `node` | DOM node |
+| Key | Description |
+| --------- | ------------- |
+| `element` | React element |
+| `node` | DOM node |
#### Required
-| `(···).isRequired` | Required |
+| Key | Description |
+| ------------------ | ----------- |
+| `(···).isRequired` | Required |
### Basic types
- github: izzergh
- github: kolapsys
- github: samtrion
-updated: 2019-11-14
+updated: 2020-03-10
description: |
Basic cheatsheets for regular expression
---
---
title: Screen resolutions
layout: 2017/sheet
-updated: 2017-10-30
+updated: 2020-07-03
weight: -1
---
---
title: RESTful API
-updated: 2018-12-25
+updated: 2020-06-06
layout: 2017/sheet
category: API
---
title: Rollup.js
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-11-01
+updated: 2020-01-29
authors:
- github: ryanSN
keywords:
category: CSS
layout: 2017/sheet
tags: [Featured]
-updated: 2017-08-26
+updated: 2020-07-03
weight: -5
keywords:
- Variables
---
title: Semver
layout: 2017/sheet
-updated: 2018-08-23
+updated: 2019-12-31
weight: -3
---
title: Sketch
category: Apps
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2018-02-20
---
## Shortcuts
title: Spacemacs
layout: 2017/sheet
category: Apps
-updated: 2018-02-15
+updated: 2020-05-22
tags: [WIP]
intro: |
[Spacemacs](http://spacemacs.org) is a distribution for Emacs.
title: SQL joins
layout: 2017/sheet
category: Databases
-updated: 2017-10-30
+updated: 2018-12-06
weight: -1
---
title: Stencil
category: JavaScript libraries
layout: 2017/sheet
-updated: 2017-10-11
+updated: 2019-05-08
keywords:
- "@Component"
- "@Prop()"
title: strftime format
layout: 2017/sheet
weight: -5
-updated: 2017-09-04
+updated: 2017-11-27
tags: [Featurable]
intro: |
The strftime format is the standard date formatting for UNIX. It's used in C, Ruby, and more.
layout: 2017/sheet
prism_languages: [stylus]
weight: -3
-updated: 2017-09-20
+updated: 2017-10-30
tags: [Featurable]
---
title: Tig
category: Git
layout: 2017/sheet
-updated: 2017-08-29
+updated: 2018-11-16
weight: -3
---
title: Vimdiff
category: Vim
layout: 2017/sheet
-updated: 2017-08-26
+updated: 2018-12-06
weight: -10
intro: |
[Vim](http://www.vim.org/) is a very efficient text editor. This reference was made for Vim 8.0.
category: Vim
layout: 2017/sheet
tags: [Featured]
-updated: 2018-09-11
+updated: 2020-07-03
weight: -10
intro: |
[Vim](http://www.vim.org/) is a very efficient text editor. This reference was made for Vim 8.0.
category: Vim
prism_languages: [vim]
layout: 2017/sheet
-updated: 2017-08-30
+updated: 2017-10-30
weight: -10
tags: [Featurable]
---
title: Visual Studio Code
category: Apps
layout: 2017/sheet
-updated: 2018-02-03
+updated: 2018-02-12
weight: -5
keywords:
- "⌘P: Show files"
category: JavaScript libraries
layout: 2017/sheet
weight: -3
-updated: 2017-09-08
+updated: 2019-09-30
prism_languages: [json, bash]
tags: [Featurable]
---