← Home

💧

⌘K
ðŸĪ–
Claude Code AI Tools
ðŸĪ—
Hugging Face AI Tools
ðŸĶœ
LangChain AI Tools
🧠
Keras AI Tools
ðŸĶ™
Ollama AI Tools
🐍
Python Programming Languages
ðŸŸĻ
JavaScript Programming Languages
🔷
TypeScript Programming Languages
⚛ïļ
React Programming Languages
ðŸđ
Go Programming Languages
ðŸĶ€
Rust Programming Languages
📊
MATLAB Programming Languages
🗄ïļ
SQL Programming Languages
⚙ïļ
C/C++ Programming Languages
☕
Java Programming Languages
ðŸŸĢ
C# Programming Languages
🍎
Swift Programming Languages
🟠
Kotlin Programming Languages
â–ē
Next.js Programming Languages
💚
Vue.js Programming Languages
ðŸ”Ĩ
Svelte Programming Languages
ðŸŽĻ
Tailwind CSS Programming Languages
💚
Node.js Programming Languages
🌐
HTML Programming Languages
ðŸŽĻ
CSS/SCSS Programming Languages
🐘
PHP Programming Languages
💎
Ruby Programming Languages
ðŸ”ī
Scala Programming Languages
📊
R Programming Languages
ðŸŽŊ
Dart Programming Languages
💧
Elixir Programming Languages
🌙
Lua Programming Languages
🐊
Perl Programming Languages
🅰ïļ
Angular Programming Languages
🚂
Express.js Programming Languages
ðŸą
NestJS Programming Languages
ðŸ›Īïļ
Ruby on Rails Programming Languages
◾ïļ
GraphQL Programming Languages
🟊
Haskell Programming Languages
💚
Nuxt.js Programming Languages
🔷
SolidJS Programming Languages
⚡
htmx Programming Languages
ðŸ’ŧ
VS Code Development Tools
🧠
PyCharm Development Tools
📓
Jupyter Development Tools
🧠
IntelliJ IDEA Development Tools
💚
Neovim Development Tools
ðŸ”Ū
Emacs Development Tools
🔀
Git DevOps & CLI
ðŸģ
Docker DevOps & CLI
â˜ļïļ
Kubernetes DevOps & CLI
☁ïļ
AWS CLI DevOps & CLI
🔄
GitHub Actions DevOps & CLI
🐧
Linux Commands DevOps & CLI
ðŸ’ŧ
Bash Scripting DevOps & CLI
🌐
Nginx DevOps & CLI
📝
Vim DevOps & CLI
ðŸ”Ļ
Makefile DevOps & CLI
🧊
Pytest DevOps & CLI
🊟
Windows DevOps & CLI
ðŸ“Ķ
Package Managers DevOps & CLI
🍎
macOS DevOps & CLI
🏗ïļ
Terraform DevOps & CLI
🔧
Ansible DevOps & CLI
⎈
Helm DevOps & CLI
ðŸ”Ļ
Jenkins DevOps & CLI
ðŸ”Ĩ
Prometheus DevOps & CLI
📊
Grafana DevOps & CLI
ðŸ’ŧ
Zsh DevOps & CLI
🐟
Fish Shell DevOps & CLI
💙
PowerShell DevOps & CLI
🔄
Argo CD DevOps & CLI
🔀
Traefik DevOps & CLI
☁ïļ
Azure CLI DevOps & CLI
☁ïļ
Google Cloud CLI DevOps & CLI
📟
tmux DevOps & CLI
🔧
jq DevOps & CLI
✂ïļ
sed DevOps & CLI
📊
awk DevOps & CLI
🌊
Apache Airflow DevOps & CLI
ðŸ”Ē
NumPy Databases & Data
🐞
Pandas Databases & Data
ðŸ”Ĩ
PyTorch Databases & Data
🧠
TensorFlow Databases & Data
📈
Matplotlib Databases & Data
🐘
PostgreSQL Databases & Data
🐎
MySQL Databases & Data
🍃
MongoDB Databases & Data
ðŸ”ī
Redis Databases & Data
🔍
Elasticsearch Databases & Data
ðŸĪ–
Scikit-learn Databases & Data
👁ïļ
OpenCV Databases & Data
⚡
Apache Spark Databases & Data
ðŸŠķ
SQLite Databases & Data
⚡
Supabase Databases & Data
ðŸ”ĩ
Neo4j Databases & Data
ðŸ“Ļ
Apache Kafka Databases & Data
🐰
RabbitMQ Databases & Data
ðŸ”Ī
Regex Utilities
📝
Markdown Utilities
📄
LaTeX Utilities
🔐
SSH & GPG Utilities
🌐
curl & HTTP Utilities
📜
reStructuredText Utilities
🚀
Postman Utilities
🎎
FFmpeg Utilities
🖞ïļ
ImageMagick Utilities
🔍
ripgrep Utilities
🔍
fzf Utilities
📗
Microsoft Excel Office Applications
📘
Microsoft Word Office Applications
📙
Microsoft PowerPoint Office Applications
📝
Hancom Hangul Hancom Office
ðŸ“―ïļ
Hancom Hanshow Hancom Office
📊
Hancom Hancell Hancom Office
📄
Google Docs Google Workspace
📊
Google Sheets Google Workspace
ðŸ“―ïļ
Google Slides Google Workspace
🔌
Cadence Virtuoso EDA & Hardware
⚙ïļ
Synopsys EDA EDA & Hardware
💎
Verilog & VHDL EDA & Hardware
⚡
LTSpice EDA & Hardware
🔧
KiCad EDA & Hardware
📝
Notion Productivity
💎
Obsidian Productivity
💎
Slack Productivity
ðŸŽŪ
Discord Productivity
ðŸŽĻ
Figma Design Tools
📘
Confluence Atlassian
📋
Jira Atlassian
🃏
Jest Testing
⚡
Vitest Testing
🎭
Playwright Testing
ðŸŒē
Cypress Testing
🌐
Selenium Testing
💙
Flutter Mobile Development
ðŸ“ą
React Native Mobile Development
🍎
SwiftUI Mobile Development
ðŸ“ą
Expo Mobile Development
🐍
Django Web Frameworks
⚡
FastAPI Web Frameworks
ðŸŒķïļ
Flask Web Frameworks
🍃
Spring Boot Web Frameworks
ðŸļ
Gin Web Frameworks
⚡
Vite Build Tools
ðŸ“Ķ
Webpack Build Tools
⚡
esbuild Build Tools
🐘
Gradle Build Tools
ðŸŠķ
Maven Build Tools
🔧
CMake Build Tools
ðŸŽŪ
Unity Game Development
ðŸĪ–
Godot Game Development
🔌
Arduino Embedded & IoT
🔍
Nmap Security
🐕
Datadog Monitoring
📖
Swagger/OpenAPI Documentation
No results found
EN KO

Basics

Data Types

Integer
42
0b1010  # binary
0o17    # octal
0x1F    # hex
Float
3.14
1.0e-10
Atom
:hello
:ok
:error
Boolean
true  # same as :true
false # same as :false
String
"Hello, World!"
"Hello, #{name}!"  # interpolation
List
[1, 2, 3]
[1 | [2, 3]]  # head | tail
Tuple
{:ok, "Success"}
{:error, reason}
Map
%{name: "Alice", age: 30}
%{"key" => "value"}
Keyword list
[name: "Alice", age: 30]

Variables & Operators

Variable binding
name = "Elixir"
Pattern matching
{a, b} = {1, 2}  # a=1, b=2
[head | tail] = [1, 2, 3]
Pin operator
x = 1
^x = 1  # match against value
Comparison
==, !=, ===, !==
>, <, >=, <=
Logical
and, or, not  # strict boolean
&&, ||, !    # truthy/falsy
String concat
"Hello" <> " World"
List concat
[1, 2] ++ [3, 4]
List subtract
[1, 2, 3] -- [1]  # [2, 3]

Control Flow

Conditionals

If/else
if condition do
  "true"
else
  "false"
end
Unless
unless condition do
  "false branch"
end
Cond
cond do
  x > 0 -> "positive"
  x < 0 -> "negative"
  true -> "zero"
end
Case
case value do
  {:ok, result} -> result
  {:error, reason} -> reason
  _ -> "default"
end
With
with {:ok, a} <- fetch_a(),
     {:ok, b} <- fetch_b(a) do
  {:ok, a + b}
else
  {:error, reason} -> {:error, reason}
end

Loops & Recursion

For comprehension
for x <- [1, 2, 3], do: x * 2
With filter
for x <- 1..10, rem(x, 2) == 0, do: x
Multiple generators
for x <- [1, 2], y <- [3, 4], do: {x, y}
Into
for {k, v} <- map, into: %{}, do: {k, v * 2}
Recursion
def sum([]), do: 0
def sum([h | t]), do: h + sum(t)
Tail recursion
def sum(list), do: sum(list, 0)
defp sum([], acc), do: acc
defp sum([h | t], acc), do: sum(t, acc + h)

Functions

Defining Functions

Named function
def greet(name) do
  "Hello, #{name}!"
end
One-liner
def add(a, b), do: a + b
Private function
defp helper(x), do: x * 2
Default arguments
def greet(name \\ "World"), do: "Hello, #{name}!"
Pattern matching
def handle({:ok, result}), do: result
def handle({:error, reason}), do: raise reason
Guard clauses
def abs(x) when x >= 0, do: x
def abs(x), do: -x

Anonymous Functions

Basic
add = fn a, b -> a + b end
add.(1, 2)  # note the dot
Shorthand
add = &(&1 + &2)
add.(1, 2)
Capture operator
&String.upcase/1
&Enum.map/2
As argument
Enum.map([1, 2, 3], fn x -> x * 2 end)
Enum.map([1, 2, 3], &(&1 * 2))

Modules

Module Definition

Basic module
defmodule MyModule do
  def hello do
    "Hello!"
  end
end
Module attributes
defmodule MyModule do
  @my_constant 42
  @moduledoc "Documentation"
end
Alias
alias MyApp.Accounts.User
alias MyApp.Accounts.User, as: U
Import
import Enum, only: [map: 2, filter: 2]
Use
use GenServer
Require
require Logger
Logger.info("message")

Structs

Define struct
defmodule User do
  defstruct name: "", age: 0
end
Create struct
user = %User{name: "Alice", age: 30}
Update struct
updated = %{user | age: 31}
Access field
user.name
Pattern match
%User{name: name} = user

Enum & Stream

Enum Functions

Map
Enum.map([1, 2, 3], &(&1 * 2))
Filter
Enum.filter([1, 2, 3, 4], &(rem(&1, 2) == 0))
Reduce
Enum.reduce([1, 2, 3], 0, &(&1 + &2))
Find
Enum.find([1, 2, 3], &(&1 > 1))
Any/All
Enum.any?([1, 2, 3], &(&1 > 2))
Enum.all?([1, 2, 3], &(&1 > 0))
Count
Enum.count([1, 2, 3])
Enum.count([1, 2, 3], &(&1 > 1))
Sort
Enum.sort([3, 1, 2])
Enum.sort([3, 1, 2], :desc)
Group by
Enum.group_by([1, 2, 3, 4], &rem(&1, 2))
Zip
Enum.zip([1, 2], [:a, :b])

Pipe Operator

Basic pipe
[1, 2, 3]
|> Enum.map(&(&1 * 2))
|> Enum.filter(&(&1 > 2))
|> Enum.sum()
Stream (lazy)
1..1_000_000
|> Stream.map(&(&1 * 2))
|> Stream.filter(&(&1 > 100))
|> Enum.take(10)

Processes

Basic Processes

Spawn
pid = spawn(fn -> IO.puts("Hello") end)
Send message
send(pid, {:hello, "world"})
Receive
receive do
  {:hello, msg} -> IO.puts(msg)
  _ -> IO.puts("Unknown")
after
  1000 -> IO.puts("Timeout")
end
Self
self()
Link
spawn_link(fn -> raise "Error" end)

GenServer

Basic GenServer
defmodule Counter do
  use GenServer

  def start_link(initial) do
    GenServer.start_link(__MODULE__, initial)
  end

  def init(initial), do: {:ok, initial}

  def handle_call(:get, _from, state) do
    {:reply, state, state}
  end

  def handle_cast(:inc, state) do
    {:noreply, state + 1}
  end
end
Call (sync)
GenServer.call(pid, :get)
Cast (async)
GenServer.cast(pid, :inc)

Testing

ExUnit

Test module
defmodule MyTest do
  use ExUnit.Case

  test "the truth" do
    assert 1 + 1 == 2
  end
end
Assertions
assert value
refute value
assert_raise RuntimeError, fn -> ... end
Setup
setup do
  {:ok, user: %User{}}
end

test "with context", %{user: user} do
  # use user
end
Describe
describe "function_name/1" do
  test "case 1" do
    # ...
  end
end
Run tests
mix test
mix test test/my_test.exs:10