pocket-guide
A complete pocket guide for data, AI and deployment work: from the terminal and Git to LLM apps, agents and cloud deployment. Numbered from basic to advanced; every guide explains what a tool is, why it exists, how it works (with mental-model diagrams) and when to use each command.
New here? Start with 00 - Big Picture (how everything connects, the journey of a request through an AI app, learning paths), then 01 - Core Concepts (the basic vocabulary: packages, APIs, SDKs, configuration, reading errors).
Start
| # |
Guide |
Covers |
| 00 |
Big Picture |
Map of the stack, request journey, dev lifecycle, learning paths, "I want to..." finder |
| 97 |
Capstone Project |
Build, test, evaluate, containerise, automate and deploy a document chatbot, step by step |
| 98 |
Glossary |
Every key term from all guides, A to Z, linked to its guide |
| 99 |
Quick Reference |
The most-used commands of every guide on one page |
Practice: every guide ends with a Try It section (exercises with hidden solutions), and examples/ has runnable, tested mini-projects: LLM basics, a tool-using agent, a RAG chatbot API and an MCP server.
Website: the same content as a searchable site with dark mode: https://harmandeep2993.github.io/pocket-guide/
Foundations
| # |
Guide |
Covers |
| 01 |
Core Concepts |
Code and runtimes, terminal, paths, packages and dependencies, libraries vs frameworks, APIs, SDKs in depth, config and secrets, reading errors |
| 02 |
Markdown |
Headings, formatting, lists, links, images, code, tables, anchors |
| 03 |
Terminal and PowerShell |
Navigation, files, search, pipes, env vars, processes, network, winget, CMD/Bash equivalents |
| 04 |
Linux |
Navigation, files, grep/find, permissions, apt, processes, systemd, network, SSH, tar, cron |
| 05 |
Git and GitHub |
Commit, branch, merge/rebase, conflicts, undo, stash, .gitignore, gh CLI, PR workflow |
| 06 |
VS Code |
Shortcuts, multi-cursor, search, debugging, Python setup, Git, extensions, settings, remote |
| 07 |
Regex |
Classes, anchors, quantifiers, groups, lookarounds, common patterns, Python re, pandas, grep, SQL |
| 08 |
YAML, JSON, TOML and .env |
Syntax, Python parsing, jq, JSONL, JSON Schema, config formats, secrets files |
| 09 |
HTTP and APIs |
Methods, status codes, headers, REST, auth, curl, requests/httpx, retries, rate limits, SSE, webhooks |
Python
| # |
Guide |
Covers |
| 10 |
Python Basics |
Types, strings, f-strings, lists, dicts, loops, comprehensions, functions, errors, files, classes, logging |
| 11 |
Python Virtual Environment |
venv create/activate, pip, requirements.txt, VS Code, troubleshooting |
| 12 |
uv |
Projects, add/remove, run, lock/sync, Python versions, pip interface, uvx tools, Docker |
| 13 |
Pydantic |
Models, validation, constraints, validators, JSON Schema, settings, LLM structured output |
| 14 |
Async Python |
async/await, gather, TaskGroup, semaphores, timeouts, async HTTP and LLM calls, queues |
| 15 |
pytest |
Fixtures, parametrize, markers, mocking APIs and LLMs, FastAPI tests, coverage |
| 16 |
Jupyter |
Kernels from venv, shortcuts, magics, display options, autoreload, export, notebooks in Git |
Data and Machine Learning
| # |
Guide |
Covers |
| 17 |
NumPy |
Create arrays, indexing, filtering, reshape, math, broadcasting, axis, random, linear algebra |
| 18 |
Pandas |
Read/write, inspect, select, filter, clean, groupby, pivot, merge |
| 19 |
Polars and DuckDB |
Parquet, expressions, lazy mode, pandas translation, SQL on files and DataFrames |
| 20 |
SQL |
SELECT, WHERE, GROUP BY, JOINs, CTEs, window functions, DDL/DML, psql/sqlite3, SQL from pandas |
| 21 |
Matplotlib |
Line, scatter, bar, hist, box, pie, labels, legend, subplots, styles, save |
| 22 |
Seaborn |
Distribution, categorical, relationship, regression, heatmap, pairplot, facets, palettes |
| 23 |
Scikit-learn |
Split, preprocessing, pipelines, models, metrics, cross-validation, tuning, saving models |
| 24 |
PyTorch |
Tensors, GPU, autograd, nn.Module, training loop, evaluation, saving, overfitting |
| 25 |
Hugging Face |
Hub, pipelines, tokenizers, open LLMs, chat templates, quantization, embeddings, datasets |
AI Engineering
| # |
Guide |
Covers |
| 26 |
LLM Fundamentals |
Tokens, next-token prediction, training, context, sampling, reasoning, hallucinations, cost, model choice |
| 27 |
LLM APIs |
Claude SDK in depth, streaming, structured outputs, vision/PDF, thinking, caching, batches, OpenAI equivalents |
| 28 |
Prompt Engineering |
Clarity, context, XML tags, examples, output formats, long docs, templates, chaining, checklist |
| 29 |
Tool Use |
Tool definitions, the tool loop, tool runner, parallel calls, errors, server tools, tool design, safety |
| 30 |
Embeddings and Vector DBs |
Embedding models, similarity, ANN/HNSW, FAISS, Chroma, pgvector, Qdrant, hybrid search |
| 31 |
RAG |
Loading, chunking, retrieval, reranking, citations, contextual/agentic RAG, evaluation, security |
| 32 |
AI Agents |
Agent loop, workflows vs agents, patterns, memory, planning, multi-agent, human-in-the-loop, limits |
| 33 |
Agent Frameworks |
Claude Agent SDK, OpenAI Agents SDK, LangChain/LangGraph, LlamaIndex, PydanticAI, CrewAI, choosing |
| 34 |
MCP |
Model Context Protocol: architecture, Python servers, Claude Code/Desktop/VS Code, clients, security |
| 35 |
Evals and Observability |
Eval sets, graders, LLM-as-judge, CI evals, tracing, logging, cost monitoring, feedback |
| 36 |
Local LLMs |
Ollama in depth, hardware sizing, quantization, llama.cpp, LM Studio, vLLM, Docker |
| 37 |
Fine-tuning |
When to fine-tune, LoRA/QLoRA, datasets, TRL training, evaluation, GGUF export, DPO, hosted options |
| 38 |
AI Security |
OWASP LLM Top 10, prompt injection, excessive agency, data leakage, guardrails, regulation, red teaming |
| 39 |
AI UIs |
Streamlit, Gradio, Chainlit chat apps, streaming, state, secrets, FastAPI frontend, deployment |
APIs and Deployment
| # |
Guide |
Covers |
| 40 |
FastAPI |
Routes, Pydantic validation, dependencies, settings, routers, testing, ML model API, Docker |
| 41 |
Uvicorn |
ASGI server: running apps, reload, workers, Gunicorn, proxy headers, HTTPS, timeouts, logging, Docker, systemd |
| 42 |
Redis and Task Queues |
Caching, LLM response cache, rate limiting, sessions, RQ, Celery, arq, job status pattern |
| 43 |
Docker |
Images, containers, run options, Dockerfile, volumes, networks, Compose, cleanup, registry |
| 44 |
GitHub Actions |
Workflows, triggers, Python CI with uv, secrets, caching, evals in CI, Docker builds, Azure OIDC deploy |
| 45 |
Nginx and HTTPS |
Reverse proxy, Let's Encrypt, streaming/WebSockets, basic auth, rate limits, systemd, Caddy |
| 46 |
Kubernetes |
Pods, Deployments, Services, Ingress, config, probes, scaling, rollouts, GPUs, Helm, AKS |
| 47 |
Terraform |
HCL, providers, resources, variables, state, modules, environments, Azure example, CI/CD |
| 48 |
Azure |
Concepts, CLI, resource groups, VMs, storage, ACR, Container Apps, App Service, Key Vault, databases, RBAC, Azure OpenAI, cost, Bicep |
| 49 |
Azure VM + Linux + Ollama |
Azure CLI, VM, NSG, SSH, Linux basics, Ollama, SSH tunnel |
| 50 |
Project Structure |
Monorepo for Python microservices in Docker + React frontend: layers, uv workspace, proxy, config, Compose, tests, CI, deploy (with a runnable starter) |
| 51 |
Project Templates |
When to make a template, GitHub template repos, Copier (questions, placeholders, update), Cookiecutter, testing templates in CI |
What's in This Repository
pocket-guide/
README.md this page: the index of all guides
guides/ every guide, 00_big-picture.md ... 99_quick-reference.md
examples/ runnable mini-projects with tests (no API key needed)
llm_basics/ one call, streaming, structured output
tool_agent/ tool definitions and a manual agent loop
docs_chatbot/ RAG chatbot: FastAPI, vector index, evals, Docker (the capstone code)
mcp_server/ MCP server exposing document search
templates/ starting points to copy into your own projects
fullstack-microservices/ Python services in Docker + React frontend + Nginx proxy
service-template/ Copier template that adds a new service to the starter
tools/ scripts: doc checks, navigation, glossary, website build
site_assets/ website stylesheet (extra.css)
mkdocs.yml website configuration and page order
requirements-docs.txt packages needed to build the website
lychee.toml link checker settings
.markdownlint-cli2.jsonc Markdown style rules
.github/workflows/ CI: doc checks, link check, examples, templates, website deploy
| Folder |
Details |
| guides/ |
Numbering groups, the parts every guide has, what is generated, how to add a guide |
| examples/ |
What each example shows, setup, running tests and demos |
| templates/ |
The microservices starter and the Copier service template, quick start |
| tools/ |
What each script checks or generates, building the website locally, CI workflows |
Conventions
- File names:
guides/NN_topic.md (two-digit number, lowercase, hyphens), ordered from basic to advanced.
- Each Introduction starts with Before you start: what to read first, the problem the tool solves, how it was done before, and an everyday analogy.
- Each guide opens with an Introduction: what the tool is, why we use it, a mental model, key terms and where it fits with the other guides.
- Each Introduction ends with an Official docs table: the tool's home page and key reference pages for the latest information.
- Then a numbered Contents list; sections are numbered to match.
- Section 0. Flags and Parameters breaks a sample command into its parts and explains every flag / parameter used in that guide.
- Each section opens with a short summary: what it is, how it works, and when you would use it.
- Previous / Next links at the top and bottom of every guide follow the reading order (generated by
tools/build_nav.py).
- Commands have a short comment on the right explaining what they do.
- Most guides end with a Troubleshooting table of common errors and fixes.
- Each guide shows a Last verified date and ends with a Try It exercise section.
- Quality checks run in CI:
tools/check_docs.py (structure, links between guides, anchors), markdownlint, a weekly external link check, the site build and the example tests.
- Fast-moving tools (LLM models, agent frameworks, cloud services) change often: the concepts are stable, but check the Official docs links in each guide for exact current versions and names.