📖 Guide

GitHub Actions — Complete Reference

Complete GitHub Actions cheat sheet — workflows, triggers, jobs, and CI/CD patterns.

152 commands across 18 categories

Workflow Basics

CommandDescription
.github/workflows/ci.yml
Workflow files live in .github/workflows/ directory
name: CI Pipeline
Set the workflow display name
on: push
Trigger workflow on push events
runs-on: ubuntu-latest
Specify the runner OS (ubuntu-latest, windows-latest, macos-latest)
jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4
Minimal workflow structure
concurrency: group: ci-main cancel-in-progress: true
Cancel redundant runs for the same group
permissions: contents: read packages: write
Set GITHUB_TOKEN permissions for the workflow

Triggers

CommandDescription
on: push: branches: [main, develop]
Trigger on push to specific branches
on: pull_request: types: [opened, synchronize]
Trigger on PR events
on: push: paths: - "src/**" - "!docs/**"
Trigger only when specific paths change (with exclusion)
on: schedule: - cron: "0 6 * * 1"
Scheduled trigger (every Monday at 06:00 UTC)Try the Cron Expression Builder →
on: workflow_dispatch: inputs: environment: type: choice options: [staging, production]
Manual trigger with input parameters
on: release: types: [published]
Trigger on new release publication
on: workflow_call: inputs: node-version: type: string required: true
Make workflow reusable (callable from other workflows)
on: push: tags: - "v*"
Trigger on version tags

Jobs & Steps

CommandDescription
steps: - uses: actions/checkout@v4
Check out the repository code
- name: Install deps run: npm ci
Run a shell command
- name: Multi-line script run: | echo "Line 1" echo "Line 2"
Multi-line shell commands
needs: [build, lint]
Job dependency — wait for other jobs to finish
if: github.ref == 'refs/heads/main'
Conditional job/step execution
- name: Upload if: success() run: echo "Only on success"
Run step only if previous steps succeeded (also: failure(), always(), cancelled())
timeout-minutes: 15
Set timeout for a job
continue-on-error: true
Allow a step to fail without failing the job
working-directory: ./frontend
Set working directory for a step's run commands
services: postgres: image: postgres:15 ports: - 5432:5432
Run service containers alongside the job

Environment Variables

CommandDescription
env: NODE_ENV: production
Set env vars at workflow, job, or step level
GITHUB_SHA
Built-in: the commit SHA that triggered the workflow
GITHUB_REF
Built-in: the branch or tag ref (e.g. refs/heads/main)
GITHUB_REPOSITORY
Built-in: owner/repo name
GITHUB_ACTOR
Built-in: username that triggered the workflow
GITHUB_RUN_NUMBER
Built-in: sequential number for each workflow run
echo "MY_VAR=value" >> "$GITHUB_ENV"
Set environment variable for subsequent steps
echo "result=success" >> "$GITHUB_OUTPUT"
Set step output for use in other steps

Secrets

CommandDescription
secrets.GITHUB_TOKEN
Auto-generated token with repo permissions
secrets.MY_SECRET
Access a repository or organization secret
env: API_KEY: ${{ secrets.API_KEY }}
e.g. Use single quotes around the expression in YAML
Pass secret as environment variable
vars.MY_VARIABLE
Access a repository configuration variable (non-secret)
environment: production
Use environment-specific secrets by specifying an environment
secrets.inherit
e.g. jobs: call: uses: ./.github/workflows/reusable.yml secrets: inherit
Pass all secrets to a called reusable workflow

Matrix Strategy

CommandDescription
strategy: matrix: node-version: [18, 20, 22]
Run job across multiple configurations
- uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }}
Use matrix value in a step
strategy: matrix: os: [ubuntu-latest, windows-latest] node: [18, 20]
e.g. runs-on: ${{ matrix.os }}
Multi-dimensional matrix (creates all combinations)
include: - os: ubuntu-latest node: 22 experimental: true
Add specific combinations to the matrix
exclude: - os: windows-latest node: 18
Exclude specific combinations from the matrix
strategy: fail-fast: false
Continue other matrix jobs even if one fails
strategy: max-parallel: 2
Limit concurrent matrix jobs

Caching

CommandDescription
- uses: actions/cache@v4 with: path: ~/.npm key: npm-${{ hashFiles('**/package-lock.json') }}
Cache npm dependencies
restore-keys: | npm-${{ runner.os }}-
Fallback cache keys when exact match not found
- uses: actions/setup-node@v4 with: node-version: 20 cache: npm
Built-in caching with setup-node (simplest)
- uses: actions/cache@v4 with: path: | ~/.cache/pip ~/.local key: pip-${{ hashFiles('**/requirements.txt') }}
Cache multiple directories
- uses: actions/cache/restore@v4 with: path: ./dist key: build-${{ github.sha }}
Restore cache without saving (read-only)
- uses: actions/cache/save@v4 if: always() with: path: ./dist key: build-${{ github.sha }}
Save cache even if job fails

Artifacts

CommandDescription
- uses: actions/upload-artifact@v4 with: name: build-output path: dist/
Upload build artifacts
- uses: actions/download-artifact@v4 with: name: build-output
Download artifacts in a later job
retention-days: 5
Set artifact retention period
if-no-files-found: error
Fail if no files match the path (warn, ignore, error)
path: | dist/ coverage/ !dist/**/*.map
Upload multiple paths with exclusions
- uses: actions/download-artifact@v4 with: name: build-output path: ./downloaded
Download artifact to a specific directory

Common Actions

CommandDescription
uses: actions/checkout@v4
Check out repository (most used action)
uses: actions/setup-node@v4 with: node-version: 20
Set up Node.js environment
uses: actions/setup-python@v5 with: python-version: "3.12"
Set up Python environment
uses: docker/build-push-action@v5 with: push: true tags: user/app:latest
Build and push Docker image
uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }}
Log in to container registry
uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./dist
Deploy to GitHub Pages
uses: softprops/action-gh-release@v1 with: files: dist/*.zip
Create GitHub Release with assets
uses: actions/github-script@v7 with: script: | github.rest.issues.createComment({ ... })
Run JavaScript with GitHub API access

Expressions & Contexts

CommandDescription
github.event_name
The event that triggered the workflow (push, pull_request, etc.)
github.event.pull_request.number
PR number from the event payload
runner.os
The OS of the runner (Linux, Windows, macOS)
steps.step_id.outputs.result
Access output from a previous step by its id
needs.job_id.outputs.my_output
Access output from a dependent job
contains(github.event.head_commit.message, '[skip ci]')
Check if commit message contains a string
startsWith(github.ref, 'refs/tags/v')
Check if ref starts with a value
toJSON(github.event)
Convert context to JSON string (useful for debugging)
hashFiles('**/package-lock.json')
Generate hash of files (used for cache keys)
format('Hello {0}, from {1}!', 'world', 'GHA')
String formatting function
endsWith(github.ref, '/release')
Check if a string ends with a given value — e.g. detect a branch named like *-release
join(fromJSON('["a","b","c"]'), ', ')
Join array elements into a single string (default separator is a comma)
fromJSON(needs.setup.outputs.matrix)
Parse a JSON string into an object/array — commonly used to build a matrix from a prior job's output
if: success()
The implicit default when a step or job has no if: at all — write always(), cancelled(), or failure() explicitly to change it

Reusable Workflows

CommandDescription
on: workflow_call: inputs: node-version: type: string required: true environment: type: string default: staging
Define a reusable workflow's callable inputs (the workflow_call trigger)
on: workflow_call: secrets: npm-token: required: true
Declare a secret a reusable workflow requires its caller to pass
on: workflow_call: outputs: build-version: description: "The built version string" value: ${{ jobs.build.outputs.version }}
Expose a workflow-level output computed by one of the reusable workflow's jobs
jobs: call-ci: uses: ./.github/workflows/ci.yml
Call a reusable workflow from the same repository
jobs: call-ci: uses: octo-org/shared-workflows/.github/workflows/ci.yml@main
Call a reusable workflow from another repository at a specific ref
jobs: call-ci: uses: ./.github/workflows/ci.yml with: node-version: "20"
Pass inputs to a called reusable workflow
jobs: call-ci: uses: ./.github/workflows/ci.yml secrets: npm-token: ${{ secrets.NPM_TOKEN }}
Pass one specific secret to a called reusable workflow
jobs: call-ci: uses: ./.github/workflows/ci.yml secrets: inherit
Pass every secret available to the caller down to the called workflow
${{ inputs.node-version }}
Read a workflow_call input from inside the called workflow
${{ needs.call-ci.outputs.build-version }}
Read a called reusable workflow's output from the caller job

Composite Actions

CommandDescription
name: "My Action" description: "What it does" runs: using: "composite" steps: - run: echo "hi" shell: bash
Minimal action.yml for a composite action — every run: step needs its own shell:
inputs: who-to-greet: description: "Name to greet" required: true default: World
Declare a composite action's inputs in action.yml
${{ inputs.who-to-greet }}
Read a composite action's input from inside its own steps
outputs: greeting: description: "The generated greeting" value: ${{ steps.greet.outputs.text }}
Declare a composite action output, sourced from one of its own steps
runs: using: "composite" steps: - id: greet run: echo "text=Hello" >> "$GITHUB_OUTPUT" shell: bash
Set the step output that a composite action's outputs: block references
- uses: ./.github/actions/my-composite-action with: who-to-greet: Mona
Call a local composite action and pass its inputs
runs: using: "composite" steps: - run: npm install shell: bash
shell: is mandatory on every run: step inside a composite action, unlike a normal job step
outputs: greeting: value: ${{ steps.greet.outputs.text }}
A composite action's outputs are declared once in action.yml, not per-caller

Environments & Deployments

CommandDescription
environment: production
Run a job against an environment by name (string form)
environment: name: production url: https://example.com
Run a job against an environment with a linked deployment URL
environment: name: production url: ${{ steps.deploy.outputs.url }}
Set an environment's URL dynamically from a step output
environment: ${{ github.ref == 'refs/heads/main' && 'production' || 'staging' }}
Choose an environment at runtime with an expression
jobs: deploy: environment: production steps: - run: echo ${{ secrets.PROD_API_KEY }}
Environment-scoped secrets are exposed only to jobs that reference that environment
# Settings → Environments → Required reviewers
Required reviewers — up to 6 people/teams; only one approval is needed for the job to proceed
# Settings → Environments → Wait timer
Wait timer — delay a job for a set number of minutes before it's allowed to access the environment
# Settings → Environments → Deployment branches and tags
Deployment branch policy — restrict which branches/tags are allowed to deploy to an environment

Runners & Containers

CommandDescription
runs-on: [self-hosted, linux, x64]
Target a self-hosted runner by labels — all listed labels must match
runs-on: group: production-runners
Target a runner group instead of (or alongside) labels
runs-on: group: production-runners labels: ubuntu-24.04-16core
Combine a runner group with a specific label
self-hosted
Default label every self-hosted runner gets automatically, alongside OS (linux/windows/macos) and architecture (x64/arm/arm64) labels
container: node:20
Run every step of a job inside a container image (shorthand form)
container: image: node:20 env: NODE_ENV: test ports: - 80 volumes: - my_docker_volume:/volume_mount options: --cpus 1
Run a job in a container with extra Docker options
container: image: ghcr.io/org/private-image:latest credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }}
Authenticate to a private registry for a container job
container: image: node:20 steps: - run: | if [[ "$FOO" == "bar" ]]; then echo match; fi shell: bash
Gotcha: a container job's run: steps default to sh, not bash, even when the image has bash installed — bash-only syntax like [[ ]] fails under sh unless shell: bash is set explicitly
runs-on: [self-hosted, gpu] container: image: nvidia/cuda:12.4.0-base-ubuntu22.04
Combine a self-hosted runner with a container image for a reproducible toolchain
options: --cpus 1 --memory 2g
container: options: accepts extra `docker run` flags — --network and --entrypoint are not supported here

Job Outputs & Data Flow

CommandDescription
jobs: build: outputs: version: ${{ steps.get-version.outputs.value }} steps: - id: get-version run: echo "value=1.2.3" >> "$GITHUB_OUTPUT"
Declare a job-level output sourced from one of its steps
jobs: deploy: needs: build steps: - run: echo ${{ needs.build.outputs.version }}
Consume another job's output via needs.<job_id>.outputs.<name>
needs: [build, test]
Depend on multiple jobs — outputs from all of them become available via needs
needs.build.result
Read a dependency job's result: success, failure, cancelled, or skipped
echo "value=1.2.3" >> "$GITHUB_OUTPUT"
Write the step output that a job-level outputs: block (and other jobs, via needs) can read
jobs: build: strategy: matrix: os: [ubuntu-latest, windows-latest] outputs: last-os: ${{ matrix.os }}
Gotcha: a matrix job's outputs only reflect its LAST completed matrix leg, not all of them

Contexts Reference

CommandDescription
github
Info about the workflow run and triggering event — github.event, github.sha, github.ref, github.actor, etc.
env
Variables set at workflow, job, or step level with env: — not available in id or uses keys
vars
Configuration variables set at the repository, organization, or environment level (non-secret)
job
Info about the currently running job, e.g. job.status
jobs
Reusable-workflow only — used to populate jobs.<job_id>.outputs for the on.workflow_call.outputs mapping
steps
Outputs and conclusions of steps already run in the current job — unavailable before those steps execute
runner
Info about the runner executing the job — runner.os, runner.arch, runner.temp, runner.tool_cache
secrets
Names and values of secrets available to the run — unavailable inside a composite action for security
strategy
Info about the current job's matrix execution strategy
matrix
The matrix properties assigned to the current job, e.g. matrix.os, matrix.node-version
needs
Outputs and results of jobs the current job depends on via needs:
inputs
Inputs passed to a reusable workflow (workflow_call) or a manually triggered run (workflow_dispatch)

Workflow Commands

CommandDescription
echo "### Build Summary" >> "$GITHUB_STEP_SUMMARY"
Write Markdown to the job summary shown on the workflow run page
echo "- ✅ Build passed" >> "$GITHUB_STEP_SUMMARY"
Append additional Markdown lines to the step summary
echo "::group::Install dependencies" npm ci echo "::endgroup::"
Group log lines into a collapsible section in the run log
echo "::add-mask::${{ secrets.MY_TOKEN }}"
Mask a value in the log output, even one that isn't a registered secret
echo "::notice file=app.js,line=1,col=5::Missing semicolon"
Create a notice annotation on a specific file/line, shown in the checks UI
echo "::warning file=app.js,line=1,title=Deprecated::This API is deprecated"
Create a warning annotation with a title
echo "::error file=app.js,line=1,col=5,endColumn=7::Missing semicolon"
Create an error annotation pointing at a specific column range
echo "::debug::Setting up variables"
Print a debug message — only visible when the ACTIONS_STEP_DEBUG secret is set to true

Troubleshooting & Gotchas

CommandDescription
on: pull_request:
Gotcha: for a pull_request from a FORK, GITHUB_TOKEN is read-only and no other secrets are passed to the run
GITHUB_TOKEN
New repositories default this to read-only permissions; older repos may still default to read/write — set permissions: explicitly instead of relying on the default
permissions: read-all
Shorthand to grant GITHUB_TOKEN read access to every scope
permissions: write-all
Shorthand to grant GITHUB_TOKEN write access to every scope — avoid unless genuinely needed
permissions: {}
Remove every GITHUB_TOKEN permission — any scope not listed under permissions: is set to none
- uses: actions/checkout@v4 with: fetch-depth: 0
Gotcha: the default fetch-depth: 1 is a shallow clone — full history and tags need fetch-depth: 0
- uses: actions/checkout@v4 with: fetch-depth: 0 fetch-tags: true
Force tag refs to be fetched even when combined with a limited fetch-depth
if: always() && (needs.build.result == 'success' || needs.build.result == 'skipped')
Gotcha: by default a job is skipped if ANY of its needs: dependencies failed or was itself skipped — always() overrides that, so re-check needs.<job>.result explicitly to still exclude real failures
if: ${{ !cancelled() }}
Run a step/job regardless of prior failure, but not if the run itself was cancelled
on: push: branches: [main] branches-ignore: [main]
Gotcha: branches and branches-ignore (or paths and paths-ignore) cannot both be set for the same event — use one filter with ! to exclude instead

More Guides

🌿
Git Commands
Complete Git command reference cheat sheet — from basics to advanced workflows, including branching, stashing, rebasing, and tagging. Searchable, with examples.
📝
Vim Commands
Complete Vim/Vi command reference cheat sheet — modes, motions, editing, search and replace, macros, registers, marks, and window management.
🐳
Docker Commands
Complete Docker & Docker Compose command reference cheat sheet — containers, images, volumes, networks, registry auth, buildx multi-platform builds, & cleanup.
🔤
Regex Reference
Complete regular expression reference cheat sheet — character classes, anchors, quantifiers, groups, lookaheads, flags, and JavaScript string methods.
🐧
Linux Commands
Complete Linux/Bash command reference cheat sheet — file management, text processing, networking, system admin, and shell scripting.
☸️
Kubernetes Commands
Complete Kubernetes & kubectl command reference cheat sheet — pods, deployments, services, secrets, namespaces, scaling, RBAC, networking, and Helm charts.
🐍
Python Reference
Complete Python reference — syntax, data structures, string methods, control flow, classes, error handling, file I/O, comprehensions, and built-ins.
🗃️
SQL Reference
Complete SQL reference cheat sheet — queries, joins, aggregation, subqueries, indexes, window functions, string and date functions, and database management.
🌐
Nginx Reference
Complete Nginx configuration reference — server blocks, locations, proxying, SSL, load balancing, caching, security headers, and rate limiting.
🔐
SSH Commands
Complete SSH reference — connections, key management, tunneling, config, SCP/SFTP, agent forwarding, security hardening, and troubleshooting.
👷
Jenkins Reference
Complete Jenkins reference — pipeline syntax, Jenkinsfile, plugins, CLI, agents, shared libraries, credentials, and CI/CD patterns.
📨
HTTP Headers Reference
Complete HTTP headers reference — request headers, response headers, caching, security, CORS, and content negotiation. Searchable, with examples.
🐘
PostgreSQL Reference
Comprehensive PostgreSQL reference — from connection basics to advanced features like JSONB, full-text search, window functions, and performance tuning.
⚡
Async Patterns Reference
Multi-language async/concurrency patterns — JavaScript, Python, Go, Rust, Java, plus retry, rate limiting, and circuit breaker patterns.
📡
Protobuf & gRPC Reference
Comprehensive reference for Protocol Buffers (proto3) and gRPC — message definitions, services, streaming, and common patterns.
📚
JS Array Methods
Complete JavaScript Array methods reference — creating, searching, transforming, sorting, iterating, and common patterns. Searchable, with examples.
🌊
Tailwind CSS Reference
Complete Tailwind CSS reference — layout, spacing, typography, colors, responsive design, states, and common patterns. Searchable, with examples.
◈
GraphQL Reference
Complete GraphQL reference — schema definition, types, queries, mutations, directives, fragments, and common patterns. Searchable, with examples.
💻
VS Code Shortcuts
Complete VS Code keyboard shortcuts cheat sheet — editing, navigation, search, multi-cursor, terminal, debug, and more. Searchable, with Cmd/Ctrl notation.
🔲
CSS Grid Reference
Complete CSS Grid reference — container properties, item placement, grid functions, and common layout patterns. Searchable, with examples.
📦
CSS Flexbox Reference
Complete CSS Flexbox reference — container properties, item properties, and common layout patterns. Searchable, with examples.
⚛️
React Hooks Reference
Complete React Hooks reference — useState, useEffect, useContext, custom hooks, and common patterns. Searchable, with examples.
🔷
TypeScript Reference
Complete TypeScript reference — types, interfaces, generics, utility types, and advanced patterns. Searchable, with examples.
☁️
AWS CLI Reference
Complete AWS CLI reference — EC2, S3, IAM, Lambda, ECS, RDS, CloudFormation, CloudWatch, SQS/SNS, Route 53, and common operations.
🐹
Go Reference
Complete Go (Golang) reference — syntax, types, structs, interfaces, goroutines, channels, error handling, testing, and the standard library.
💠
PowerShell Reference
Complete PowerShell reference — cmdlets, pipelines, scripting, file operations, remote management, and Active Directory.
💾
Redis Commands
Complete Redis command reference — strings, hashes, lists, sets, sorted sets, pub/sub, transactions, and server management.
🏗️
Terraform Commands
Complete Terraform reference — init, plan, apply, state management, modules, workspaces, providers, backend configuration, and HCL syntax.
⚙️
Ansible Commands
Complete Ansible reference — playbooks, modules, inventory, roles, vault, Galaxy, handlers, conditionals, loops, and ad-hoc commands.
🪶
Apache
Complete Apache HTTP Server cheat sheet — virtual hosts, modules, rewrite rules, and SSL, plus access control, logging, and performance.
🔤
ASCII Table
Complete ASCII character reference with decimal, hexadecimal, and character values, plus control codes and common escape sequences.
🔧
Awk
Powerful text processing language for pattern scanning, data extraction, arrays, control flow, and report generation with built-in variables.
💻
Bash
Complete Bash reference cheat sheet — variables, strings, arrays, conditionals, loops, functions, file tests, I/O redirection, process management, and more.
⚙️
C
Complete C programming cheat sheet covering syntax, pointers, memory management, structs, file I/O, preprocessor, and standard library.
🔐
Chmod
Linux file permission commands and patterns for chmod, covering numeric and symbolic modes, recursive changes, and SUID/SGID/sticky bits.
🔧
Chrome DevTools
Essential Chrome DevTools shortcuts, commands, and workflows for web developers — covering Network, Performance, and Application panels.
🔷
C++
Complete C++ cheat sheet covering STL containers, OOP, templates, smart pointers, iterators, lambda expressions, and modern C++ features.
⏰
Cron
Cron scheduling reference covering syntax, special strings, field values, crontab management, environment variables, and logging.
🎨
CSS
Complete CSS reference cheat sheet — selectors, box model, positioning, typography, animations, media queries, custom properties, and more.
🌐
Curl
Curl command-line reference for HTTP requests, headers, authentication, cookies, proxies, file transfers, SSL/TLS, debugging, and API patterns.
🎯
Dart
Dart language cheat sheet covering syntax, types, OOP, null safety, and async patterns, plus collections, error handling, and classes.
🐳
Docker Compose
Docker Compose reference covering CLI commands, service configuration, networking, volumes, health checks, profiles, and build options.
💧
Drizzle ORM
Complete Drizzle ORM reference for schema definition, column types, queries, filters, joins, relations, migrations, indexes, and patterns.
⚡
Emmet
Quick reference for Emmet abbreviations for lightning-fast HTML and CSS coding, covering nesting, multiplication, numbering, and grouping.
🔍
Find
Search for files and directories in a directory hierarchy with powerful filtering by name, size, time, permissions, type, and actions.
🔥
Firebase
Firebase reference covering Authentication, Firestore, Realtime Database, Cloud Functions, Hosting, Storage, and security rules.
🔎
Grep
Search text using patterns. Filter lines from files, command output, or streams with regular expressions, context options, and file filtering.
📄
HTML
Complete HTML reference — document structure, text content, links, forms, tables, media, semantic elements, meta tags, attributes, and accessibility.
📡
HTTP Status Codes
Complete reference of all standard HTTP response status codes across 1xx-5xx classes, with descriptions, examples, and common usage patterns.
☕
Java
Complete Java reference — data types, strings, collections, OOP, interfaces, exceptions, file I/O, streams, lambdas, and more.
🟨
JavaScript
Complete JavaScript reference — variables, types, operators, strings, arrays, objects, functions, async, DOM, ES6+, and more.
💲
jQuery
Quick reference for jQuery selectors, DOM manipulation, events, AJAX, and more, including animation effects, traversing, and plugins.
🔺
Laravel
Laravel PHP framework cheat sheet for routing, Eloquent, Blade, Artisan, and more, plus middleware, validation, and authentication.
📐
LaTeX
Quick reference for LaTeX document structure, math mode, formatting, and common packages, plus figures, tables, and citation styles.
📝
Markdown
Complete Markdown syntax reference for headings, formatting, links, tables, code blocks, task lists, footnotes, and extensions.
🍃
MongoDB
MongoDB reference covering CRUD operations, aggregation, indexes, and administration, plus replica sets, users, roles, and query operators.
🐬
MySQL
Complete MySQL cheat sheet covering queries, joins, indexes, transactions, data types, user permissions, and database administration.
▲
Next.js
Next.js App Router reference covering routing, data fetching, server components, API routes, middleware, and deployment configuration.
🟩
Node.js
Comprehensive Node.js runtime reference covering modules, file system, HTTP, streams, events, child processes, and npm scripts.
📦
npm
Complete npm cheat sheet — package management, scripts, publishing, and configuration, plus workspaces, security audits, and npx.
🔢
NumPy
Essential NumPy commands for array manipulation and numerical computing in Python, covering reshaping, broadcasting, and linear algebra.
🐼
Pandas
Pandas cheat sheet for data manipulation, analysis, and transformation in Python, covering DataFrames, grouping, merging, and date/time.
🐘
PHP
Complete PHP cheat sheet covering syntax, OOP, arrays, PDO, and modern PHP 8.x features, plus file I/O, superglobals, and error handling.
🔄
PM2
Production process manager for Node.js applications with cluster mode, monitoring, log management, startup scripts, and zero-downtime reloads.
💎
Prisma
Complete Prisma ORM cheat sheet — schema, queries, migrations, and CLI, plus relations, aggregations, filtering, and seeding patterns.
🦀
Rust
Comprehensive Rust language cheat sheet covering ownership, traits, pattern matching, structs, enums, error handling, closures, and concurrency.
💅
Sass
Complete Sass/SCSS cheat sheet covering variables, mixins, functions, nesting, extends, maps, and the modern module system.
📺
Screen
GNU Screen terminal multiplexer for persistent sessions, window and split-region management, key bindings, copy mode, and remote work.
✂️
Sed
Stream editor for filtering and transforming text, line by line — substitution, address ranges, hold space, branching, and flags.
⚡
Supabase
Complete Supabase cheat sheet — auth, database, realtime, storage, and edge functions, plus row level security and migrations.
🖥️
Tmux
Terminal multiplexer cheat sheet for managing multiple sessions, windows, and panes from a single terminal, with copy mode and status bar configuration.
📦
TOML
Quick reference for TOML configuration file syntax, types, tables, and common patterns, including arrays of tables and inline tables.
▲
Vercel CLI
Complete Vercel CLI reference for deployment, project management, domains, environment variables, secrets, logs, edge functions, and configuration.
⚡
Vite
Next-generation frontend build tool with instant HMR, native ES modules, plugins, environment variables, library mode, and Rollup-based builds.
📦
Webpack
Module bundler for JavaScript applications — entry/output config, loaders, plugins, code splitting, module resolution, and optimization.
🎯
XPath
Quick reference for XPath expressions, axes, predicates, string functions, node tests, and operators for XML/HTML querying.
📋
YAML
YAML syntax reference covering scalars, collections, anchors, aliases, multi-line strings, nested structures, and common patterns.

📖 Free, searchable command reference. Bookmark this page for quick access.