{
    "api": "YAML JSON TOON Database",
    "version": "1.0.0",
    "format": "json",
    "categories": [
        {
            "id": 1,
            "slug": "programming-languages",
            "name": "Programming Languages",
            "description": "Syntax, features, and comparisons of major programming languages.",
            "icon": "code",
            "created_at": 1783090350,
            "dataset_count": 12,
            "topic": {
                "overview": "Programming-language reference data compares languages by the ideas they are built on and the features they added: paradigms and typing disciplines, the concurrency models of Go and Rust, the modern features of C++, C#, JavaScript, Swift and TypeScript, the built-in vocabulary of Python and the metaprogramming of Ruby. Features are tied to versions, since most languages evolve continuously, and a feature that is idiomatic in one language can be unavailable or discouraged in another. A question about a language should always carry a version, because the answer for Python 2 and Python 3 or for ES5 and ES2024 differs.",
                "key_ideas": [
                    {
                        "term": "Paradigm",
                        "meaning": "A style of structuring programs, such as procedural, object-oriented, functional or declarative. Most languages are multi-paradigm."
                    },
                    {
                        "term": "Static vs dynamic typing",
                        "meaning": "Static typing checks types before running, dynamic typing checks them at runtime. Gradual typing, as in TypeScript, adds static checks to a dynamic base."
                    },
                    {
                        "term": "Memory management",
                        "meaning": "How a language reclaims memory: manual, garbage collection, reference counting or ownership rules such as Rust's."
                    },
                    {
                        "term": "Concurrency model",
                        "meaning": "How a language handles simultaneous work: threads and locks, async/await, goroutines and channels or actors."
                    },
                    {
                        "term": "Compiled vs interpreted",
                        "meaning": "Whether code is translated ahead of time to machine code, run by a virtual machine or interpreted directly. Many languages do a mix."
                    },
                    {
                        "term": "Language version",
                        "meaning": "A specific release, such as C++20 or ES2022. Feature availability and standard-library behavior are version-specific."
                    },
                    {
                        "term": "Standard library",
                        "meaning": "The functions and types that ship with a language, which shape what idiomatic code looks like."
                    }
                ],
                "pitfalls": [
                    "Quoting a feature without its version, so users try it on a runtime that lacks it.",
                    "Comparing languages by a single benchmark or popularity ranking; fit depends on the problem and the team.",
                    "Equating typing discipline with safety: static typing catches some errors and memory-safe languages prevent others, but neither guarantees correctness.",
                    "Copying idioms between languages (for example exceptions in Go style or global state in Rust) without adapting them."
                ],
                "agent_tips": [
                    "State the language version and runtime when giving code or recommending a feature.",
                    "Prefer the language's own standard idiom and cite the official documentation when unsure.",
                    "Run or reason through the code before presenting it; small syntax errors are common in generated snippets."
                ],
                "start_with": [
                    "language-comparison-2026",
                    "python-builtins"
                ]
            }
        },
        {
            "id": 2,
            "slug": "http-status-codes",
            "name": "HTTP Status Codes",
            "description": "Complete reference of HTTP response status codes.",
            "icon": "globe",
            "created_at": 1783090350,
            "dataset_count": 13,
            "topic": {
                "overview": "This category is the reference for how HTTP clients and servers talk: the status codes that summarize a response, the methods that say what a request wants, the headers that carry metadata, and the mechanisms layered on top (authentication, caching, content negotiation, CORS and redirects). The codes and methods are defined by IETF specifications, chiefly RFC 9110, so their meaning is stable, but real servers and APIs bend them. The practical skill is to pick the most specific correct code and to know which behaviors (caching, retries, redirects) a client will infer from it.",
                "key_ideas": [
                    {
                        "term": "Status code class",
                        "meaning": "The first digit gives the class: 1xx informational, 2xx success, 3xx redirection, 4xx client error, 5xx server error."
                    },
                    {
                        "term": "Safe and idempotent methods",
                        "meaning": "Safe methods (GET, HEAD, OPTIONS) do not change server state. Idempotent methods (those plus PUT and DELETE) have the same effect when repeated, which makes retries safe."
                    },
                    {
                        "term": "401 vs 403",
                        "meaning": "401 means authentication is missing or invalid; 403 means the client is authenticated but not allowed."
                    },
                    {
                        "term": "Redirect semantics",
                        "meaning": "301 and 308 are permanent, 302 and 307 temporary. 307 and 308 preserve the request method; 301 and 302 historically allow clients to change POST to GET."
                    },
                    {
                        "term": "Cache validators",
                        "meaning": "ETag and Last-Modified let a client ask whether its stored copy is still valid and receive 304 Not Modified instead of the full body."
                    },
                    {
                        "term": "Content negotiation",
                        "meaning": "The client states preferences with Accept headers and the server chooses a representation, signaling dependence with Vary."
                    },
                    {
                        "term": "CORS",
                        "meaning": "A browser mechanism that lets a server permit cross-origin requests with Access-Control headers, often after a preflight OPTIONS request."
                    }
                ],
                "pitfalls": [
                    "Returning 200 with an error message in the body. Clients, caches and monitors rely on the status code.",
                    "Using 404 and 403 inconsistently to hide or reveal that a resource exists; decide the policy and apply it uniformly.",
                    "Redirecting with 301 when a temporary move is intended. Browsers and search engines cache permanent redirects aggressively.",
                    "Setting Access-Control-Allow-Origin to * on responses that use credentials; browsers reject that combination."
                ],
                "agent_tips": [
                    "Retry only idempotent requests and 429, 502, 503 and 504 responses, honoring Retry-After and using exponential backoff with jitter.",
                    "When asked what a code means, give the code, the name, the typical cause and the action the client should take.",
                    "Quote RFC 9110 for definitions of methods and status codes and RFC 9111 for caching."
                ],
                "start_with": [
                    "http-status-codes-complete",
                    "http-methods-reference"
                ]
            }
        },
        {
            "id": 3,
            "slug": "data-structures",
            "name": "Data Structures",
            "description": "Fundamental data structures with properties and complexity analysis.",
            "icon": "layers",
            "created_at": 1783090350,
            "dataset_count": 10,
            "topic": {
                "overview": "Data-structure reference data describes how information is organized in memory so that operations are fast: arrays, linked lists, hash tables, trees, heaps and graphs, plus the specialized structures built for particular problems (probabilistic filters, spatial indexes, concurrent containers) and the algorithms that run on them. The usual comparison is by time and space complexity in Big-O terms, which says how cost grows with input size and ignores constants, caches and implementation quality. Choosing a structure means matching its strong operations to the program's access pattern.",
                "key_ideas": [
                    {
                        "term": "Big-O",
                        "meaning": "A notation for how an operation's cost grows with input size n, ignoring constant factors. O(1) is constant, O(log n) logarithmic, O(n) linear, O(n^2) quadratic."
                    },
                    {
                        "term": "Amortized cost",
                        "meaning": "The average cost per operation over a sequence, even when some single operations are expensive, as with appending to a dynamic array."
                    },
                    {
                        "term": "Balanced tree",
                        "meaning": "A search tree that keeps its height near log n by rebalancing, so lookups, insertions and deletions stay logarithmic."
                    },
                    {
                        "term": "Hash table",
                        "meaning": "A structure that maps keys to buckets by a hash function, giving average O(1) lookup, with collisions handled by chaining or open addressing."
                    },
                    {
                        "term": "Heap",
                        "meaning": "A tree-based structure that keeps the minimum or maximum at the root, the basis of priority queues."
                    },
                    {
                        "term": "Graph",
                        "meaning": "A set of nodes and edges, stored as an adjacency list (sparse graphs) or matrix (dense graphs)."
                    },
                    {
                        "term": "Probabilistic data structure",
                        "meaning": "A compact structure that answers membership or counting queries approximately, trading a bounded error for much less space."
                    }
                ],
                "pitfalls": [
                    "Quoting average-case complexity as the guaranteed bound. Hash tables and quicksort have worse worst cases.",
                    "Ignoring constants and cache behavior: an array often beats a linked list in practice even when Big-O suggests otherwise.",
                    "Using a structure whose strong operation is not the one your program performs most.",
                    "Forgetting that probabilistic structures can give false positives (Bloom filters) or approximate counts."
                ],
                "agent_tips": [
                    "State the operation, the structure and the case (best, average or worst) when quoting a complexity.",
                    "Ask what operations dominate and how large the data is before recommending a structure.",
                    "Mention the standard-library equivalent in the user's language (for example HashMap, dict, TreeMap) with the structure name."
                ],
                "start_with": [
                    "complexity-analysis",
                    "hash-tables"
                ]
            }
        },
        {
            "id": 4,
            "slug": "algorithms",
            "name": "Algorithms",
            "description": "Classic algorithms, strategies, and complexity.",
            "icon": "cpu",
            "created_at": 1783090350,
            "dataset_count": 7,
            "topic": {
                "overview": "Algorithm reference data is organized by design strategy rather than by application: searching and sorting, dynamic programming, greedy methods, backtracking and graph traversal, topped by the complexity classes that say which problems are efficiently solvable at all. An algorithm entry gives its idea and its cost, and the cost is the part that decides whether it is usable: an O(n log n) sort handles millions of items, an exponential search does not. The recurring skill is recognizing the structure of a problem (overlapping subproblems, a greedy-choice property, a need to explore all possibilities) and picking the matching strategy.",
                "key_ideas": [
                    {
                        "term": "Time and space complexity",
                        "meaning": "How running time and memory grow with input size, in Big-O terms. The same problem can have algorithms with very different growth rates."
                    },
                    {
                        "term": "Divide and conquer",
                        "meaning": "Split a problem into smaller independent parts, solve them and combine the results. Merge sort and binary search are examples."
                    },
                    {
                        "term": "Dynamic programming",
                        "meaning": "Solve a problem with overlapping subproblems by storing the results of subproblems so each is computed once."
                    },
                    {
                        "term": "Greedy algorithm",
                        "meaning": "Make the locally best choice at each step. It is correct only when the problem has the greedy-choice property."
                    },
                    {
                        "term": "Backtracking",
                        "meaning": "Build a solution step by step and abandon a partial solution as soon as it cannot lead to a valid one."
                    },
                    {
                        "term": "P versus NP",
                        "meaning": "P is the class of problems solvable in polynomial time; NP those whose solutions can be verified in polynomial time. Whether they are equal is open."
                    },
                    {
                        "term": "Stable sort",
                        "meaning": "A sort that keeps equal elements in their original order, which matters when sorting by several keys in turn."
                    }
                ],
                "pitfalls": [
                    "Choosing an algorithm by its best-case bound. Quicksort's worst case is O(n^2) and linear search's best case is O(1), but average and worst cases decide the experience.",
                    "Applying a greedy method without proving it correct; many problems that look greedy are not (the 0/1 knapsack).",
                    "Treating Big-O as a speed measurement. It compares growth rates, not the time of one run on one machine.",
                    "Assuming NP-hard means impossible. Approximation, heuristics and exact methods on small instances are often practical."
                ],
                "agent_tips": [
                    "State the input assumptions (sorted, non-negative weights, bounded range) when recommending an algorithm.",
                    "Explain the key idea in one sentence, give the complexity and mention a common library implementation.",
                    "For optimization problems, say whether the algorithm is exact or approximate."
                ],
                "start_with": [
                    "sorting-algorithms",
                    "complexity-classes"
                ]
            }
        },
        {
            "id": 5,
            "slug": "ai-ml-terms",
            "name": "AI & ML Terms",
            "description": "Key terminology in artificial intelligence and machine learning.",
            "icon": "cpu",
            "created_at": 1783090350,
            "dataset_count": 12,
            "topic": {
                "overview": "AI and machine-learning reference data covers the vocabulary around large language models and the methods under them: how models are structured (architectures, attention), how they are trained (optimizers, training algorithms, regularization, transfer learning), how they are evaluated (metrics) and the concepts that shape their use (tokens, context windows, sampling, retrieval, fine-tuning) and their risks (ethics, interpretability, hallucination). The field moves quickly, so definitions of broad terms are stable while specific model names, sizes and benchmarks age within months. An entry should be read as the concept, not as a snapshot of the state of the art.",
                "key_ideas": [
                    {
                        "term": "Token",
                        "meaning": "The unit of text a language model reads and writes, often a word fragment. Costs and context limits are measured in tokens, not characters."
                    },
                    {
                        "term": "Context window",
                        "meaning": "The maximum number of tokens a model can consider at once, covering the prompt and the response together."
                    },
                    {
                        "term": "Training vs inference",
                        "meaning": "Training adjusts model parameters from data; inference uses the trained model to produce outputs. Their costs and tools differ."
                    },
                    {
                        "term": "Overfitting and regularization",
                        "meaning": "Overfitting is memorizing training data at the expense of generalization; regularization techniques reduce it."
                    },
                    {
                        "term": "Embedding",
                        "meaning": "A vector representation of text, images or other data in which similar items are close together."
                    },
                    {
                        "term": "Retrieval-augmented generation",
                        "meaning": "Supplying a model with retrieved documents at query time so answers can use current or private information."
                    },
                    {
                        "term": "Evaluation metric",
                        "meaning": "A number that summarizes performance on a task. Different metrics reward different behavior, so the choice shapes what gets optimized."
                    }
                ],
                "pitfalls": [
                    "Treating model output as verified fact. Language models can produce fluent, wrong statements (hallucination).",
                    "Choosing a metric that does not match the cost of errors; accuracy is misleading on imbalanced data.",
                    "Quoting model sizes, context lengths or benchmark scores as current without a date.",
                    "Confusing correlation in training data with understanding, or assuming interpretability methods explain a model exactly."
                ],
                "agent_tips": [
                    "Distinguish a concept (attention) from a named product or model, and date any claim about a specific model.",
                    "Ground factual answers in retrieved sources and cite them; verify numbers against reference data before stating them.",
                    "When explaining a metric, state its formula and what kind of error it ignores."
                ],
                "start_with": [
                    "llm-glossary",
                    "ml-evaluation-metrics"
                ]
            }
        },
        {
            "id": 6,
            "slug": "web-technologies",
            "name": "Web Technologies",
            "description": "Standards, protocols, and APIs for web development.",
            "icon": "layout",
            "created_at": 1783090350,
            "dataset_count": 13,
            "topic": {
                "overview": "Web-technology reference data covers the platform that browsers and servers share: the HTTP protocol and its evolution, the request and response headers that carry control information, the browser APIs that give pages access to storage, networking and hardware, the CSS layout systems that arrange content, and the JavaScript frameworks that structure applications. Standards come from several bodies (IETF for protocols, WHATWG and W3C for the platform) and support arrives browser by browser, so almost every entry needs the qualifier 'supported in which browsers, since which version'. Behavior also differs between secure contexts (HTTPS) and plain pages, which gate many APIs.",
                "key_ideas": [
                    {
                        "term": "Web standard",
                        "meaning": "A specification maintained by a body such as the IETF, W3C or WHATWG. Browsers implement them at different times and with different completeness."
                    },
                    {
                        "term": "Secure context",
                        "meaning": "A page served over HTTPS (or localhost). Many powerful APIs, such as service workers and geolocation, are available only there."
                    },
                    {
                        "term": "Progressive enhancement",
                        "meaning": "Building a page that works with basic features and adds capabilities where the browser supports them."
                    },
                    {
                        "term": "Same-origin policy",
                        "meaning": "A browser rule that restricts how a document from one origin may interact with resources from another; CORS relaxes it deliberately."
                    },
                    {
                        "term": "Request and response headers",
                        "meaning": "Key-value metadata that accompanies every HTTP message: content type, caching, authentication, cookies and security policy."
                    },
                    {
                        "term": "Flexbox and Grid",
                        "meaning": "CSS layout systems: Flexbox arranges items along one axis, Grid in two dimensions."
                    },
                    {
                        "term": "Framework vs library",
                        "meaning": "A library is called by your code; a framework calls your code and imposes structure. React is usually described as a library, Angular as a framework."
                    }
                ],
                "pitfalls": [
                    "Assuming a feature works everywhere because it works in one browser. Check compatibility data and have a fallback.",
                    "Setting security headers (CSP, HSTS) without testing; a restrictive policy can break the site or a permissive one gives false comfort.",
                    "Choosing a framework by popularity alone instead of by the team's skills and the app's needs.",
                    "Treating localStorage as secure storage. Any script on the page can read it."
                ],
                "agent_tips": [
                    "Give the specification or MDN reference for a feature and state the support level (baseline, experimental).",
                    "Recommend security headers as a set (HSTS, CSP, X-Content-Type-Options, Referrer-Policy) and explain each one's purpose.",
                    "When comparing frameworks, state the criteria (learning curve, ecosystem, performance model) and avoid declaring a winner."
                ],
                "start_with": [
                    "http-request-headers",
                    "css-layout-systems"
                ]
            }
        },
        {
            "id": 7,
            "slug": "unix-commands",
            "name": "Unix Commands",
            "description": "Common Unix/Linux shell commands and their usage.",
            "icon": "terminal",
            "created_at": 1783090350,
            "dataset_count": 11,
            "topic": {
                "overview": "Unix-command reference data collects the tools that make the shell productive: file and process commands, text processors such as grep, sed and awk, networking utilities, package managers, git for version control and the conventions of shell scripting. The commands are decades old and stable, but their flags differ between GNU/Linux, BSD and macOS, and shell syntax differs between bash, zsh and POSIX sh. Many everyday tasks reduce to composing small commands with pipes. The commands here are the common forms; always read the manual page for the system actually in use.",
                "key_ideas": [
                    {
                        "term": "Pipe",
                        "meaning": "The | operator connects one command's output to the next one's input, building pipelines from small tools."
                    },
                    {
                        "term": "Exit status",
                        "meaning": "Every command returns a number: 0 for success and non-zero for failure. Scripts branch on it and set -e makes a failure stop the script."
                    },
                    {
                        "term": "Standard streams",
                        "meaning": "Standard input, output and error (file descriptors 0, 1 and 2), which can be redirected with <, > and 2>."
                    },
                    {
                        "term": "Globbing vs regex",
                        "meaning": "The shell expands wildcards such as *.txt before the command runs; grep, sed and awk interpret regular expressions themselves."
                    },
                    {
                        "term": "Quoting",
                        "meaning": "Single quotes prevent all expansion, double quotes allow variable expansion, and unquoted variables are split on whitespace, a common source of bugs."
                    },
                    {
                        "term": "Permissions",
                        "meaning": "Files carry read, write and execute bits for owner, group and others, set with chmod and shown by ls -l."
                    },
                    {
                        "term": "POSIX vs GNU",
                        "meaning": "POSIX defines portable behavior; GNU tools add extensions (such as sed -i without a suffix) that BSD and macOS may not support."
                    }
                ],
                "pitfalls": [
                    "Running destructive commands (rm -rf, git reset --hard, git clean) without checking the target and having a backup.",
                    "Parsing ls output or leaving variables unquoted, which breaks on filenames with spaces.",
                    "Assuming GNU flags work on macOS or BSD; check the manual page or use portable forms.",
                    "Using sed -i or in-place edits without a backup suffix on files you cannot recover."
                ],
                "agent_tips": [
                    "Show the exact command and explain each flag; state the shell and OS assumptions.",
                    "Prefer a dry run (echo, -n, --dry-run) or a preview before destructive commands, and warn clearly about irreversible effects.",
                    "Quote variables and paths in examples to model safe habits."
                ],
                "start_with": [
                    "git-essential-commands",
                    "file-operations"
                ]
            }
        },
        {
            "id": 8,
            "slug": "design-patterns",
            "name": "Design Patterns",
            "description": "Software design patterns with descriptions and use cases.",
            "icon": "box",
            "created_at": 1783090350,
            "dataset_count": 8,
            "topic": {
                "overview": "Design-pattern reference data names the recurring solutions to recurring software-design problems: the creational, structural and behavioral patterns of the 'Gang of Four', the concurrency patterns that coordinate threads, the architectural patterns that shape whole systems, the SOLID principles behind them and the anti-patterns that come from misusing them. Patterns are vocabulary first and templates second: their value is that 'use a strategy here' conveys a design in four words. They also carry costs, since applying a pattern where a simple function would do adds indirection, so each entry states when to use it as well as what it is.",
                "key_ideas": [
                    {
                        "term": "Creational, structural, behavioral",
                        "meaning": "The three Gang of Four groups: patterns for creating objects, for composing them and for assigning responsibilities and communication."
                    },
                    {
                        "term": "Coupling and cohesion",
                        "meaning": "Coupling is how much modules depend on one another; cohesion is how focused each module is. Good designs reduce the first and increase the second."
                    },
                    {
                        "term": "Program to an interface",
                        "meaning": "Depend on abstractions rather than concrete classes so implementations can change without affecting callers."
                    },
                    {
                        "term": "SOLID",
                        "meaning": "Five object-oriented principles: single responsibility, open/closed, Liskov substitution, interface segregation and dependency inversion."
                    },
                    {
                        "term": "Composition over inheritance",
                        "meaning": "Build behavior by combining objects instead of extending class hierarchies, which keeps designs flexible."
                    },
                    {
                        "term": "Anti-pattern",
                        "meaning": "A common response to a problem that looks reasonable but causes more trouble than it solves, such as the God Object."
                    },
                    {
                        "term": "Architecture vs design pattern",
                        "meaning": "Architectural patterns (microservices, MVC) shape a whole system; design patterns (observer, factory) shape a few collaborating classes."
                    }
                ],
                "pitfalls": [
                    "Applying patterns by reflex. If a plain function or a simple class solves the problem, the pattern adds only complexity.",
                    "Using Singleton as global state; it hides dependencies and makes testing harder.",
                    "Treating the pattern's textbook structure as mandatory; adapt it to the language (closures can replace many pattern classes).",
                    "Naming a pattern incorrectly; a decorator is not a proxy, even though both wrap an object."
                ],
                "agent_tips": [
                    "Name the pattern, state the problem it solves, show the minimal structure and note the main trade-off.",
                    "Recommend the simplest design that works, and name the pattern only when it clarifies communication.",
                    "Match the example to the user's language and idioms; functional languages often express these patterns with functions."
                ],
                "start_with": [
                    "solid-principles",
                    "creational-patterns"
                ]
            }
        },
        {
            "id": 9,
            "slug": "database-types",
            "name": "Database Types",
            "description": "Different database systems and their characteristics.",
            "icon": "hard-drive",
            "created_at": 1783090350,
            "dataset_count": 12,
            "topic": {
                "overview": "Database reference data compares the families of data stores and the guarantees behind them: relational systems and the SQL that queries them, ACID transactions versus BASE-style eventual consistency, what the CAP theorem does and does not say about distributed systems, and the NoSQL, graph, time-series and NewSQL systems that trade some properties for others. The consistent theme is trade-offs: no system gives every property at once, so the entries emphasize what each design optimizes for rather than which is best.",
                "key_ideas": [
                    {
                        "term": "ACID",
                        "meaning": "Atomicity, consistency, isolation and durability: the guarantees of a classic transaction. A transaction either fully happens or not at all, and committed data survives a crash."
                    },
                    {
                        "term": "BASE",
                        "meaning": "Basically available, soft state, eventually consistent: a design stance that favors availability and scale over immediate consistency."
                    },
                    {
                        "term": "CAP theorem",
                        "meaning": "When a network partition occurs, a distributed system must choose between consistency and availability. It does not describe behavior when there is no partition."
                    },
                    {
                        "term": "Isolation level",
                        "meaning": "How much concurrent transactions can see of one another's work, from read uncommitted to serializable, each preventing a different set of anomalies."
                    },
                    {
                        "term": "Normalization",
                        "meaning": "Structuring relational tables to reduce redundancy; denormalization deliberately reintroduces it for read speed."
                    },
                    {
                        "term": "Index",
                        "meaning": "A data structure that speeds up lookups at the cost of storage and slower writes."
                    },
                    {
                        "term": "Sharding",
                        "meaning": "Splitting data across nodes by key so storage and load scale horizontally."
                    }
                ],
                "pitfalls": [
                    "Reading CAP as 'pick two of three' in normal operation. Partitions are rare; the practical trade-off is often latency versus consistency (PACELC).",
                    "Choosing NoSQL for scale a relational database would handle comfortably, then rebuilding joins and transactions in application code.",
                    "Assuming 'eventually consistent' means 'wrong'. It means replicas converge; applications must tolerate the window.",
                    "Comparing products by feature checklists instead of by their consistency model, failure behavior and operational cost."
                ],
                "agent_tips": [
                    "When asked to recommend a database, ask for the access patterns and consistency needs first; the best choice follows from them.",
                    "Distinguish the data model (relational, document, graph) from the guarantees (ACID or eventual) when explaining a system.",
                    "Treat benchmark and market-share claims as dated; point to current sources rather than quoting figures."
                ],
                "start_with": [
                    "database-comparison",
                    "acid-vs-base"
                ]
            }
        },
        {
            "id": 10,
            "slug": "operating-systems",
            "name": "Operating Systems",
            "description": "Operating system concepts, kernels, and process management.",
            "icon": "cpu",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Operating-systems reference data covers what the kernel does between programs and hardware: running many processes on few CPUs (scheduling), giving each a private view of memory (paging and virtual memory), keeping them from deadlocking over shared resources, and storing data durably (file systems). The concepts come from textbooks and are implemented differently in Linux, Windows and macOS, so the entries explain the idea and the examples show where real systems apply it.",
                "key_ideas": [
                    {
                        "term": "Process vs thread",
                        "meaning": "A process owns an address space and resources; threads are schedulable flows of control that share them. Switching between threads is cheaper than between processes."
                    },
                    {
                        "term": "Context switch",
                        "meaning": "Saving one task's CPU state and loading another's. It is pure overhead, so schedulers try not to do it too often."
                    },
                    {
                        "term": "Preemptive vs non-preemptive",
                        "meaning": "A preemptive scheduler can take the CPU away from a running task; a non-preemptive one waits until the task yields or finishes."
                    },
                    {
                        "term": "Virtual memory",
                        "meaning": "Each process sees a contiguous private address space that the OS and hardware map onto physical memory and disk."
                    },
                    {
                        "term": "Page fault",
                        "meaning": "An access to a page that is not currently mapped to physical memory, handled by the OS, sometimes by reading from disk."
                    },
                    {
                        "term": "Journaling",
                        "meaning": "Recording intended file-system changes in a log first so the file system can be repaired consistently after a crash."
                    },
                    {
                        "term": "Deadlock",
                        "meaning": "A state where processes wait on each other forever. It needs mutual exclusion, hold-and-wait, no preemption and circular wait all at once."
                    }
                ],
                "pitfalls": [
                    "Assuming textbook scheduling algorithms are what a real OS uses. Linux, Windows and macOS combine priorities, fairness and heuristics.",
                    "Equating high memory use with a problem. Operating systems use spare memory for caches and release it on demand.",
                    "Confusing thrashing with simple memory shortage; thrashing is constant paging that leaves little time for useful work.",
                    "Choosing a file system by feature list alone, ignoring platform support, maximum file size and recovery behavior."
                ],
                "agent_tips": [
                    "Name the algorithm and say whether it is preemptive when explaining a scheduler.",
                    "Distinguish the concept (paging) from a specific OS implementation (Linux's page cache) when answering.",
                    "For file-system questions, ask which operating system and use case; the right answer differs for removable media, servers and desktops."
                ],
                "start_with": [
                    "process-management",
                    "memory-management"
                ]
            }
        },
        {
            "id": 11,
            "slug": "networking",
            "name": "Networking",
            "description": "Network protocols, models, and architecture.",
            "icon": "globe",
            "created_at": 1783090350,
            "dataset_count": 7,
            "topic": {
                "overview": "Networking reference data describes how bytes get from one machine to another: the layered models that organize protocols (OSI and TCP/IP), the addresses and ports that name endpoints, the DNS records that map names to them, the routing protocols that choose paths, and the transport changes that separate HTTP/1.1 from HTTP/2 and HTTP/3. Almost everything here is a convention agreed in an RFC, so the details are precise and checkable, but real networks add middleboxes, NAT and filtering that the clean models leave out.",
                "key_ideas": [
                    {
                        "term": "Layering and encapsulation",
                        "meaning": "Each layer wraps the data from the layer above with its own header. A web request becomes an HTTP message, then a TCP segment, then an IP packet, then an Ethernet frame."
                    },
                    {
                        "term": "Port",
                        "meaning": "A 16-bit number that, together with an IP address and protocol, identifies a specific service on a host. Well-known ports are conventions, not guarantees."
                    },
                    {
                        "term": "TCP vs UDP",
                        "meaning": "TCP gives ordered, reliable delivery with connection setup; UDP sends independent datagrams with no delivery guarantee. QUIC rebuilds reliability on top of UDP."
                    },
                    {
                        "term": "DNS record",
                        "meaning": "A typed answer from the Domain Name System. The type (A, AAAA, MX, TXT) says what kind of data the name maps to."
                    },
                    {
                        "term": "Routing",
                        "meaning": "Choosing the next hop for a packet. Interior protocols such as OSPF run inside one organization; BGP exchanges reachability between autonomous systems on the internet."
                    },
                    {
                        "term": "NAT",
                        "meaning": "Network address translation rewrites addresses and ports so many private hosts share a public IP address, which breaks the end-to-end assumption of the original design."
                    },
                    {
                        "term": "Latency vs bandwidth",
                        "meaning": "Latency is how long one bit takes to arrive; bandwidth is how many bits per second a link carries. Round trips, not raw bandwidth, dominate many protocol designs."
                    }
                ],
                "pitfalls": [
                    "Treating well-known ports as certain. A service can run on any port, and firewalls often decide what is reachable.",
                    "Mapping the OSI model onto real protocols too literally. TCP/IP does not have separate session and presentation layers, and several protocols span layers.",
                    "Assuming HTTP/3 uses its own port or TCP. It runs over QUIC on UDP, usually port 443.",
                    "Forgetting that DNS also uses TCP (for large responses and zone transfers) and now encrypted transports such as DNS over TLS."
                ],
                "agent_tips": [
                    "When a user asks 'what port does X use', give the default and say it is a convention that the deployment may change.",
                    "Quote the layer number and the layer name together when using the OSI model; the numbers are what people refer to in conversation.",
                    "For DNS questions, ask for the record type before answering; the same name has different answers per type."
                ],
                "start_with": [
                    "network-ports-reference",
                    "osi-model-layers"
                ]
            }
        },
        {
            "id": 12,
            "slug": "cybersecurity",
            "name": "Cybersecurity",
            "description": "Security principles, threats, and defensive practices.",
            "icon": "shield",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Cybersecurity reference data names the building blocks defenders and attackers both talk about: how users prove who they are (authentication factors), how data is protected in transit and at rest (cryptographic algorithms and primitives), what attackers do (malware and the OWASP web vulnerability classes) and which controls sit in the network to stop them. The vocabulary is stable, but recommendations age quickly: algorithms get deprecated, vulnerability rankings are revised and tools change names, so each entry is a starting point to verify against current guidance.",
                "key_ideas": [
                    {
                        "term": "Confidentiality, integrity, availability",
                        "meaning": "The CIA triad: keep data secret, keep it correct, and keep it reachable. Most controls serve one of the three."
                    },
                    {
                        "term": "Authentication vs authorization",
                        "meaning": "Authentication establishes who someone is; authorization decides what they may do. Broken access control is a failure of the second."
                    },
                    {
                        "term": "Defense in depth",
                        "meaning": "Layering independent controls so that the failure of one does not expose everything."
                    },
                    {
                        "term": "Threat model",
                        "meaning": "A deliberate description of what you are protecting, from whom, and by which paths. Controls are chosen against it."
                    },
                    {
                        "term": "Symmetric vs asymmetric cryptography",
                        "meaning": "Symmetric ciphers use one shared key and are fast; asymmetric systems use a key pair and solve key distribution and signatures."
                    },
                    {
                        "term": "Hash vs encryption",
                        "meaning": "A hash is one-way and used for integrity and password storage; encryption is reversible with a key."
                    },
                    {
                        "term": "CVE",
                        "meaning": "A public identifier for a specific known vulnerability, used to track patches and exposure."
                    }
                ],
                "pitfalls": [
                    "Rolling your own cryptography or mixing primitives without a reason. Use vetted libraries and authenticated encryption.",
                    "Storing passwords with a general-purpose fast hash. Use a purpose-built slow function such as Argon2id, bcrypt or scrypt.",
                    "Treating SMS codes or knowledge questions as strong factors. Possession and inherence factors vary a lot in resistance to phishing.",
                    "Reading a ranking such as the OWASP Top 10 as a complete list rather than the most common categories at the time it was compiled."
                ],
                "agent_tips": [
                    "State the edition or date when quoting a ranking or recommendation (for example OWASP Top 10, 2021) so it can be rechecked.",
                    "Describe attack techniques at the level of category and defense; do not generate working exploit code from a vulnerability name.",
                    "When recommending an algorithm, give the current default and name the ones to avoid (MD5, SHA-1, DES, RC4 for new designs)."
                ],
                "start_with": [
                    "common-vulnerabilities-owasp",
                    "cryptography-basics"
                ]
            }
        },
        {
            "id": 13,
            "slug": "cloud-computing",
            "name": "Cloud Computing",
            "description": "Cloud service models, providers, and deployment patterns.",
            "icon": "cloud",
            "created_at": 1783090350,
            "dataset_count": 7,
            "topic": {
                "overview": "Cloud-computing reference data covers how computing is rented and run: who manages which layer (IaaS, PaaS, SaaS and their descendants), where it runs (public, private, hybrid and multi-cloud), how workloads are packaged (containers and the tools that orchestrate them) and the serverless model that bills by execution. The service-model names are marketing-adjacent categories rather than strict standards, and vendors blur them, so the useful question is always 'which layer do I manage, and which does the provider manage'.",
                "key_ideas": [
                    {
                        "term": "Shared responsibility",
                        "meaning": "The provider secures and operates the layers it manages; the customer secures what it deploys on top. Moving from IaaS to SaaS shifts more responsibility to the provider."
                    },
                    {
                        "term": "Elasticity",
                        "meaning": "Capacity that grows and shrinks with demand and is paid for as used, rather than provisioned for the peak."
                    },
                    {
                        "term": "Container",
                        "meaning": "A packaged process with its filesystem and dependencies, isolated by the host kernel. It is lighter than a virtual machine because it shares the kernel."
                    },
                    {
                        "term": "Orchestration",
                        "meaning": "Automating placement, scaling, networking and recovery of many containers; Kubernetes is the dominant system."
                    },
                    {
                        "term": "Serverless",
                        "meaning": "A model where the provider runs and scales code on demand and bills for execution, so servers still exist but are not managed by the customer."
                    },
                    {
                        "term": "Region and availability zone",
                        "meaning": "Regions are geographic areas; zones are isolated data centers within a region. Spreading across zones protects against a single data-center failure."
                    },
                    {
                        "term": "Vendor lock-in",
                        "meaning": "Dependence on provider-specific services that makes moving workloads costly."
                    }
                ],
                "pitfalls": [
                    "Assuming 'the cloud' removes operational work. Someone still owns security configuration, cost control, backups and reliability design.",
                    "Treating multi-cloud as free resilience. It adds cost and complexity and does not help unless the application is built to use it.",
                    "Equating containers with isolation as strong as virtual machines. A shared kernel is a larger attack surface.",
                    "Ignoring cold starts and per-invocation limits when choosing serverless for latency-sensitive paths."
                ],
                "agent_tips": [
                    "When asked about a service model, state which layers the customer manages in each, not only the acronym.",
                    "Give provider examples as examples, not recommendations, and note that product names change.",
                    "For pricing questions, say that rates and free tiers change and point to the provider's current pricing page."
                ],
                "start_with": [
                    "cloud-service-models",
                    "container-orchestration"
                ]
            }
        },
        {
            "id": 14,
            "slug": "devops",
            "name": "DevOps",
            "description": "DevOps practices, CI/CD, and infrastructure as code.",
            "icon": "terminal",
            "created_at": 1783090350,
            "dataset_count": 7,
            "topic": {
                "overview": "DevOps reference data covers the practices and tools that carry code from a commit to a running, observed service: version-control workflows, the stages of a CI/CD pipeline, infrastructure described as code, virtualized infrastructure, monitoring and logging, and the reliability practices of site reliability engineering. DevOps is a set of habits more than a product category, so the same tool names appear across many teams used in very different ways, and the useful question is what practice a tool supports.",
                "key_ideas": [
                    {
                        "term": "Continuous integration",
                        "meaning": "Merging small changes to a shared branch frequently and verifying each with an automated build and test run."
                    },
                    {
                        "term": "Continuous delivery vs deployment",
                        "meaning": "Delivery keeps every change releasable with a manual release decision; deployment releases every passing change automatically."
                    },
                    {
                        "term": "Infrastructure as code",
                        "meaning": "Describing servers, networks and services in versioned files so environments can be reviewed, reproduced and changed like software."
                    },
                    {
                        "term": "SLI, SLO, SLA",
                        "meaning": "An indicator is a measurement, an objective is the target for it, and an agreement is the contractual commitment, often with penalties, built on top."
                    },
                    {
                        "term": "Error budget",
                        "meaning": "The amount of unreliability an SLO allows. Spending it slows releases; having it left permits risk."
                    },
                    {
                        "term": "Observability",
                        "meaning": "The ability to understand a system's internal state from its outputs: metrics, logs and traces."
                    },
                    {
                        "term": "Blameless postmortem",
                        "meaning": "A review of an incident focused on system and process causes rather than individual fault."
                    }
                ],
                "pitfalls": [
                    "Buying tools before agreeing on the practice. A pipeline that nobody trusts, or alerts that nobody acts on, adds work without safety.",
                    "Setting an SLO of 100%. It is unreachable and leaves no budget for change; pick a target users actually need.",
                    "Letting infrastructure drift from its code by making manual changes in production.",
                    "Treating gitflow, trunk-based development or any workflow as universally correct instead of matching it to release cadence and team size."
                ],
                "agent_tips": [
                    "When explaining a pipeline, name the stage, the signal it produces and what failing it blocks.",
                    "Recommend SLOs by user-visible behavior (latency, availability, correctness), not by internal metrics.",
                    "For tool comparisons, state the category (metrics, logs, traces, IaC) first; many names are not like-for-like."
                ],
                "start_with": [
                    "cicd-pipeline-stages",
                    "site-reliability-practices"
                ]
            }
        },
        {
            "id": 15,
            "slug": "mathematics",
            "name": "Mathematics",
            "description": "Core mathematical concepts, theorems, and notation.",
            "icon": "box",
            "created_at": 1783090350,
            "dataset_count": 9,
            "topic": {
                "overview": "Mathematics reference data collects the facts that are looked up rather than derived: counting rules, constants, geometric formulas, set notation, descriptive statistics, trigonometric identities and the primes. These are exact by definition, which makes them the cleanest kind of reference data for an agent: a lookup either matches a known value or it does not. The usual trouble is not accuracy but context, such as which formula applies to which shape, what a symbol means in a given convention, and how many digits of a constant are meaningful.",
                "key_ideas": [
                    {
                        "term": "Exact vs approximate",
                        "meaning": "Constants such as pi and e are irrational: any decimal value is a rounded approximation. Keep symbolic form where exactness matters."
                    },
                    {
                        "term": "Permutation vs combination",
                        "meaning": "A permutation counts ordered selections, a combination unordered ones. Choosing seats is a permutation; choosing a committee is a combination."
                    },
                    {
                        "term": "Set operation",
                        "meaning": "Union, intersection, difference and complement combine sets by membership. De Morgan's laws relate them."
                    },
                    {
                        "term": "Descriptive statistic",
                        "meaning": "A number that summarizes a dataset, such as the mean, median or standard deviation. Different summaries respond differently to outliers."
                    },
                    {
                        "term": "Identity",
                        "meaning": "An equation true for every value of its variables, such as sin squared plus cos squared equals 1, as opposed to an equation true only for some values."
                    },
                    {
                        "term": "Prime number",
                        "meaning": "An integer greater than 1 whose only positive divisors are 1 and itself. The prime factorization of any integer is unique."
                    },
                    {
                        "term": "Radian",
                        "meaning": "The angle measure in which a full turn is 2 pi, used by calculus and most programming-language trig functions."
                    }
                ],
                "pitfalls": [
                    "Using degrees where a library expects radians, or the reverse.",
                    "Quoting a decimal expansion of an irrational constant as exact; floating-point arithmetic keeps only about 15 to 17 significant digits.",
                    "Mixing population and sample formulas for variance and standard deviation (dividing by n versus n minus 1).",
                    "Reading 1 as prime. By the usual definition it is not, which keeps unique factorization true."
                ],
                "agent_tips": [
                    "Show the formula and the meaning of each variable before substituting numbers, so the user can check the setup.",
                    "For computed results, state the unit and whether angles are in degrees or radians.",
                    "Prefer a tool or code execution for arithmetic with many steps instead of mental arithmetic, and use these datasets for definitions and constants."
                ],
                "start_with": [
                    "common-mathematical-constants",
                    "statistics-basics"
                ]
            }
        },
        {
            "id": 16,
            "slug": "physics",
            "name": "Physics",
            "description": "Core physics concepts and laws.",
            "icon": "layers",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Physics reference data summarizes the laws and quantities that describe matter, motion, energy and waves: classical mechanics and its conservation laws, thermodynamics, electromagnetism, optics, waves and sound, and the core principles of quantum mechanics. Most entries pair a verbal statement with an equation, and the equation only makes sense with its assumptions: classical mechanics fails near the speed of light and at atomic scales, and thermodynamic laws are statistical statements about large systems. Units and the domain of validity are part of every answer.",
                "key_ideas": [
                    {
                        "term": "Conservation law",
                        "meaning": "A quantity that stays constant in a closed system: energy, momentum, angular momentum and charge. Many problems are solved by choosing which conservation law applies."
                    },
                    {
                        "term": "Field",
                        "meaning": "A quantity defined at every point in space, such as the electric or magnetic field, that mediates forces between objects."
                    },
                    {
                        "term": "Wave",
                        "meaning": "A disturbance that transfers energy without transferring matter. Wavelength, frequency, amplitude and speed are linked: speed equals frequency times wavelength."
                    },
                    {
                        "term": "Entropy",
                        "meaning": "A measure of how many microscopic arrangements correspond to a macroscopic state; in isolated systems it does not decrease."
                    },
                    {
                        "term": "Superposition",
                        "meaning": "Waves, and quantum states, add: the combined disturbance is the sum of the parts."
                    },
                    {
                        "term": "SI units",
                        "meaning": "The metric system used in physics: meter, kilogram, second, ampere, kelvin, mole and candela, with derived units such as newton, joule and watt."
                    },
                    {
                        "term": "Domain of validity",
                        "meaning": "The conditions under which an equation holds, for example speeds much less than the speed of light for Newtonian mechanics."
                    }
                ],
                "pitfalls": [
                    "Applying a formula without checking its assumptions (constant acceleration, ideal gas, small angles, non-relativistic speeds).",
                    "Mixing units, for example grams with kilograms or Celsius with kelvin in thermodynamic formulas.",
                    "Treating the uncertainty principle as a limit of measuring equipment; it is a property of quantum states.",
                    "Restating the second law as 'disorder always increases' without the condition that the system is isolated."
                ],
                "agent_tips": [
                    "Give the equation, define each symbol with its SI unit, and state its domain of validity.",
                    "For numerical answers, show units through the calculation and round to a sensible number of significant figures.",
                    "Say when a topic is a model rather than a law; wave-particle duality and similar ideas have interpretations that physicists still debate."
                ],
                "start_with": [
                    "classical-mechanics",
                    "thermodynamics-laws"
                ]
            }
        },
        {
            "id": 17,
            "slug": "chemistry",
            "name": "Chemistry",
            "description": "Chemical elements, compounds, and reactions.",
            "icon": "box",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Chemistry reference data covers the periodic table and the ways atoms combine: chemical bonds, common acids and bases and the pH scale that measures them, and the functional groups that organize organic chemistry. The facts are well established, but they come with conventions that matter, such as how atomic mass is defined, which indicator colors are used for pH, and that many acid and base strengths depend on concentration and solvent. Safety information, such as handling strong acids, belongs alongside the properties.",
                "key_ideas": [
                    {
                        "term": "Atomic number and mass",
                        "meaning": "The atomic number counts protons and defines the element; atomic mass is a weighted average over isotopes, so it is not a whole number."
                    },
                    {
                        "term": "Bond types",
                        "meaning": "Ionic bonds transfer electrons, covalent bonds share them, metallic bonds pool them. Real bonds sit on a spectrum of polarity."
                    },
                    {
                        "term": "Intermolecular forces",
                        "meaning": "Weaker attractions between molecules (hydrogen bonds, dipole-dipole, London dispersion) that govern boiling points and solubility."
                    },
                    {
                        "term": "pH",
                        "meaning": "The negative base-10 logarithm of hydrogen-ion activity. Each unit is a tenfold change; 7 is neutral at 25 degrees Celsius."
                    },
                    {
                        "term": "Strong vs weak",
                        "meaning": "A strong acid or base dissociates almost completely in water; a weak one only partly. Strength is not the same as concentration or danger."
                    },
                    {
                        "term": "Functional group",
                        "meaning": "A characteristic group of atoms that determines how an organic molecule reacts, such as an alcohol or a carboxylic acid."
                    },
                    {
                        "term": "Indicator",
                        "meaning": "A substance that changes color with pH. Each indicator changes over its own range, so colors differ between indicators."
                    }
                ],
                "pitfalls": [
                    "Assuming a low pH always means a strong acid. A dilute strong acid and a concentrated weak acid can have similar pH.",
                    "Taking indicator colors as universal; the colors listed depend on the indicator used.",
                    "Treating atomic masses as exact integers. They are averages and are revised slightly as measurements improve.",
                    "Mixing chemicals from a reference list without the safety data; some combinations release toxic gas or heat."
                ],
                "agent_tips": [
                    "When asked how to dilute or mix acids and bases, include the safety rule (add acid to water, wear eye protection) and suggest consulting a safety data sheet.",
                    "Give formulas with correct subscripts and state the temperature when quoting pH or pKa values.",
                    "Use the periodic-table dataset for symbols and masses, and say that it covers only the first thirty elements."
                ],
                "start_with": [
                    "periodic-table-first-30",
                    "ph-scale-indicators"
                ]
            }
        },
        {
            "id": 18,
            "slug": "biology",
            "name": "Biology",
            "description": "Fundamental concepts in biology: cell biology, genetics, evolution, and ecology.",
            "icon": "cpu",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Biology reference data spans scales from molecules to ecosystems: the organelles and processes inside cells, the genetics that carries information between generations, the mechanisms of evolution, the classification of living things and the systems of the human body, plus the ecological concepts that describe how organisms interact. Biology has more exceptions than physics, so the entries state general rules and name the exceptions where they matter: most cells, most genes, most species. Terminology also shifts as research changes, especially in classification.",
                "key_ideas": [
                    {
                        "term": "Central dogma",
                        "meaning": "Genetic information flows from DNA to RNA to protein. Reverse transcription and RNA-level regulation are well-known additions."
                    },
                    {
                        "term": "Natural selection",
                        "meaning": "Heritable traits that raise survival or reproduction become more common over generations. It acts on populations, not individuals."
                    },
                    {
                        "term": "Homeostasis",
                        "meaning": "Regulation that keeps conditions inside an organism, such as temperature and pH, within a working range."
                    },
                    {
                        "term": "Taxonomy",
                        "meaning": "Nested ranking of organisms from domain down to species. Modern classification increasingly follows evolutionary relationships (clades)."
                    },
                    {
                        "term": "Trophic level",
                        "meaning": "A position in a food chain: producers, then consumers of increasing order, with decomposers recycling matter."
                    },
                    {
                        "term": "Genotype and phenotype",
                        "meaning": "Genotype is the genetic makeup; phenotype is the observable result of genes and environment together."
                    },
                    {
                        "term": "Cell theory",
                        "meaning": "All living things are made of cells, cells are the basic unit of life, and cells come from existing cells."
                    }
                ],
                "pitfalls": [
                    "Presenting evolution as goal-directed. Mutation is random with respect to need, and selection filters what already exists.",
                    "Using 'survival of the fittest' as a moral claim; fitness means reproductive success in an environment.",
                    "Treating taxonomy ranks as fixed facts when classifications are revised as DNA evidence arrives.",
                    "Generalizing from the human body to all organisms, or from model organisms to humans."
                ],
                "agent_tips": [
                    "Give the general rule first and mention an important exception when one exists (for example, red blood cells have no nucleus).",
                    "Use the scientific name in italics-style form (Genus species) and state whether you mean the species or a common name.",
                    "For medical questions, give information about how the body works and recommend a clinician for a personal health decision."
                ],
                "start_with": [
                    "cell-biology-basics",
                    "genetics-fundamentals"
                ]
            }
        },
        {
            "id": 19,
            "slug": "astronomy",
            "name": "Astronomy",
            "description": "Celestial objects, phenomena, and cosmology.",
            "icon": "globe",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Astronomy reference data covers what is in the sky and how humans learned about it: the planets and other bodies of the Solar System, the phases of the Moon that follow from its orbit, the types of stars and their life stages, the constellations used to map the sky, and the missions that carried instruments and people beyond Earth. Distances and periods are measured quantities that improve over time, so the numbers are the best-known values at a point in time, while the classifications (planet, dwarf planet, star type) are partly conventions set by the International Astronomical Union.",
                "key_ideas": [
                    {
                        "term": "Astronomical unit",
                        "meaning": "About 149.6 million kilometers: the mean distance from Earth to the Sun, used to measure distances inside the Solar System."
                    },
                    {
                        "term": "Orbital period",
                        "meaning": "The time a body takes to complete one orbit. It grows with the orbit's size, as described by Kepler's third law."
                    },
                    {
                        "term": "Dwarf planet",
                        "meaning": "A body orbiting the Sun that is round but has not cleared its orbital neighborhood. Pluto and Ceres are examples."
                    },
                    {
                        "term": "Main sequence",
                        "meaning": "The long stable phase of a star's life when it fuses hydrogen into helium in its core."
                    },
                    {
                        "term": "Synodic month",
                        "meaning": "The cycle of lunar phases, about 29.5 days, which is longer than the Moon's orbit relative to the stars."
                    },
                    {
                        "term": "Light-year",
                        "meaning": "The distance light travels in one year, about 9.46 trillion kilometers; a unit of distance, not of time."
                    },
                    {
                        "term": "Constellation",
                        "meaning": "A region of the sky, officially 88 of them, and traditionally a pattern of stars. The stars in one are usually at very different distances."
                    }
                ],
                "pitfalls": [
                    "Mixing astronomy with astrology. The zodiac signs and the astronomical constellations do not line up with the dates, because of precession and unequal constellation sizes.",
                    "Treating moon counts and similar tallies as fixed. They change as new moons are confirmed.",
                    "Reading a light-year as a unit of time, or assuming all stars in a constellation are close to each other.",
                    "Quoting planetary distances as constants; orbits are ellipses, so distances vary through the year."
                ],
                "agent_tips": [
                    "Give a measured value with its unit and, when it changes, the date or source it comes from.",
                    "Say whether a classification such as 'planet' is an IAU convention when the question is about Pluto or other borderline bodies.",
                    "When asked about horoscopes or zodiac signs, answer the astronomical question accurately and label astrology as a separate, non-scientific tradition."
                ],
                "start_with": [
                    "solar-system-planets",
                    "types-of-stars"
                ]
            }
        },
        {
            "id": 20,
            "slug": "history",
            "name": "History",
            "description": "Major historical events, civilizations, eras, and turning points that shaped the modern world.",
            "icon": "database",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "History reference data gives dated anchors rather than narratives: the ancient civilizations and empires that built the first states, the inventions of the Industrial Revolution, the milestones of the two World Wars and the Cold War, and the turning points that shaped the modern world. Dates and names are the checkable part, so entries lead with them; interpretation and causes are where historians disagree, so descriptions stay short and neutral. Many ancient dates are approximate or follow conventions such as BCE and CE, and several figures are known mainly through later sources.",
                "key_ideas": [
                    {
                        "term": "BCE and CE",
                        "meaning": "Before the Common Era and Common Era: the neutral labels for the years before and after year 1, equivalent to BC and AD."
                    },
                    {
                        "term": "Primary vs secondary source",
                        "meaning": "A primary source comes from the time studied (a letter, a treaty); a secondary source interprets it later. Claims should be traced to the first."
                    },
                    {
                        "term": "Periodization",
                        "meaning": "Dividing the past into eras such as antiquity, medieval and early modern. The boundaries are conventions and vary by region."
                    },
                    {
                        "term": "Causation",
                        "meaning": "Events usually have many causes. 'The spark' of World War I, the assassination in Sarajevo, sits inside a longer chain of alliances and rivalries."
                    },
                    {
                        "term": "Empire",
                        "meaning": "A state ruling diverse peoples and territories under a central authority, usually by conquest."
                    },
                    {
                        "term": "Industrialization",
                        "meaning": "The shift from hand production to machine production powered by steam, then electricity, with large changes in cities, labor and trade."
                    },
                    {
                        "term": "Cold War",
                        "meaning": "The rivalry between the United States and the Soviet Union and their allies from about 1947 to 1991, fought through alliances, proxy wars and arms races rather than direct war."
                    }
                ],
                "pitfalls": [
                    "Giving a precise date for an approximate event, such as the start of a civilization or a long process like the Industrial Revolution.",
                    "Repeating a single-cause explanation for a complex event.",
                    "Attributing an invention to one person when development was incremental or parallel; credit often depends on patents and publicity.",
                    "Presenting contested interpretations (the causes of a war, the role of an individual) as settled facts."
                ],
                "agent_tips": [
                    "Give the year or range and say 'about' or 'c.' when the source does; avoid false precision.",
                    "Name the region as well as the date, since eras do not align across the world.",
                    "When asked to judge a historical figure or decision, describe the main interpretations and the evidence instead of a single verdict."
                ],
                "start_with": [
                    "world-wars-timeline",
                    "ancient-empires"
                ]
            }
        },
        {
            "id": 21,
            "slug": "geography",
            "name": "Geography",
            "description": "Countries, capitals, landforms, and climate.",
            "icon": "globe",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Geography reference data answers the lookups people and agents repeat most: which countries are on a continent, what their capitals are, and how big the continents are. The data is organized by continent and lists sovereign states, mostly the member states of the United Nations, each with its capital city. Capitals look like the simplest possible facts, but some states have more than one seat of government, some capitals are disputed or contested, and the boundary between continents is a convention, so a few entries carry a note rather than a single name.",
                "key_ideas": [
                    {
                        "term": "Sovereign state",
                        "meaning": "A political entity with a permanent population, defined territory, government and capacity to enter relations with others. Most are UN member states."
                    },
                    {
                        "term": "Capital",
                        "meaning": "The city that is the seat of a national government. Some countries split the executive, legislative and judicial functions across several cities."
                    },
                    {
                        "term": "Continent",
                        "meaning": "A very large landmass or conventional division of one. The number of continents (five to seven) depends on the model used."
                    },
                    {
                        "term": "Transcontinental country",
                        "meaning": "A state with territory on more than one continent, such as Turkey, Russia, Egypt and Kazakhstan. Listing depends on convention."
                    },
                    {
                        "term": "Observer state",
                        "meaning": "A state that participates in the UN without being a full member, such as the Holy See (Vatican City) and Palestine."
                    },
                    {
                        "term": "Exonym vs endonym",
                        "meaning": "The name outsiders use for a place versus the name its people use. Examples: Kyiv versus Kiev, Czechia versus Czech Republic."
                    },
                    {
                        "term": "Area and population",
                        "meaning": "Continental figures change with estimates and with whether islands and regions are counted; they are approximations."
                    }
                ],
                "pitfalls": [
                    "Assuming each country has exactly one capital. South Africa, Bolivia, Eswatini and the Netherlands split government functions across cities.",
                    "Treating continents as fixed categories; Europe and Asia, North and South America and Oceania are drawn differently in different traditions.",
                    "Using outdated names after a change (for example Eswatini formerly Swaziland, Cabo Verde, Czechia, North Macedonia).",
                    "Presenting disputed or contested status (for example Israel's capital, Taiwan, Kosovo) as settled; describe the dispute neutrally."
                ],
                "agent_tips": [
                    "When a country has more than one capital or a contested one, give both facts and say which function each city holds.",
                    "State which standard a country list follows (here, mainly UN members) and say when a territory is not covered.",
                    "Population and area figures are approximations; give them with an 'about' and a reference year if asked for precision."
                ],
                "start_with": [
                    "world-continents",
                    "countries-capitals-europe"
                ]
            }
        },
        {
            "id": 22,
            "slug": "economics",
            "name": "Economics",
            "description": "Economic theories, indicators, and systems.",
            "icon": "layers",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Economics reference data gives the working vocabulary of the field: how economies are organized (economic systems), how firms compete (market structures), what macroeconomists measure (GDP, inflation, unemployment and related indicators) and how governments and central banks try to steer the economy (fiscal and monetary policy tools). The definitions are standard, but the numbers that fill them in are not: indicators are measured differently across countries, revised after publication and sometimes politically contested, and policy effects depend on timing and expectations. An answer should give the definition and the caveat together.",
                "key_ideas": [
                    {
                        "term": "Opportunity cost",
                        "meaning": "What you give up by choosing one option over the next best one. The idea underlies most of microeconomics."
                    },
                    {
                        "term": "Real vs nominal",
                        "meaning": "Nominal values are in current prices; real values are adjusted for inflation so they can be compared over time."
                    },
                    {
                        "term": "Inflation",
                        "meaning": "A sustained rise in the general price level, commonly measured by a consumer price index."
                    },
                    {
                        "term": "Fiscal vs monetary policy",
                        "meaning": "Fiscal policy uses government spending and taxation; monetary policy uses interest rates and the money supply, usually set by a central bank."
                    },
                    {
                        "term": "Market structure",
                        "meaning": "How many firms there are, how similar their products are and how easily others can enter. It determines pricing power."
                    },
                    {
                        "term": "Externality",
                        "meaning": "A cost or benefit of an activity that falls on people who did not choose it, such as pollution."
                    },
                    {
                        "term": "Business cycle",
                        "meaning": "Recurring fluctuations in output and employment between expansion and recession."
                    }
                ],
                "pitfalls": [
                    "Quoting an economic indicator without its date, country and definition. Unemployment and inflation have several official measures.",
                    "Treating GDP as a measure of well-being; it counts production, not distribution, leisure or unpaid work.",
                    "Assuming a policy tool has the same effect in every situation; effects depend on expectations, institutions and timing.",
                    "Presenting a contested school of thought's claim as consensus."
                ],
                "agent_tips": [
                    "Give both the definition and the usual measure, and say that specific figures change and should come from the national statistical agency or central bank.",
                    "For policy questions, describe the mechanism and the main trade-offs, and say where economists disagree.",
                    "Do not give personalized investment advice; explain the concepts and refer to a licensed professional for decisions."
                ],
                "start_with": [
                    "macroeconomic-indicators",
                    "market-structures"
                ]
            }
        },
        {
            "id": 23,
            "slug": "philosophy",
            "name": "Philosophy",
            "description": "Major philosophical traditions, schools of thought, key thinkers, and fundamental questions.",
            "icon": "box",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Philosophy reference data gives names and definitions for the questions philosophers have argued about for millennia: what we can know (epistemology), what exists (metaphysics), how we should act (ethics), how to reason well (logic and the fallacies that violate it), and who said what across the major traditions from ancient Greece, China and India to modern Europe. Definitions here are accepted, but positions are not: for nearly every concept there are competing views, and a short entry can only state the standard meaning. The useful habit is to attribute a position to a person or school instead of presenting it as the answer.",
                "key_ideas": [
                    {
                        "term": "Argument",
                        "meaning": "A set of premises offered in support of a conclusion. It is valid if the conclusion follows from the premises and sound if it is valid and the premises are true."
                    },
                    {
                        "term": "Epistemology",
                        "meaning": "The study of knowledge: what it is, how we get it and what justifies belief."
                    },
                    {
                        "term": "Metaphysics",
                        "meaning": "The study of what exists and its nature: being, time, causation, identity and the relation between mind and matter."
                    },
                    {
                        "term": "Normative vs descriptive",
                        "meaning": "A normative claim says what should be; a descriptive claim says what is. Ethics is mainly normative."
                    },
                    {
                        "term": "Consequentialism, deontology, virtue ethics",
                        "meaning": "Three major approaches: judge actions by outcomes, by duties and rules, or by the character they express."
                    },
                    {
                        "term": "Rationalism and empiricism",
                        "meaning": "Rationalists give reason a central role in knowledge; empiricists ground knowledge in sensory experience."
                    },
                    {
                        "term": "Thought experiment",
                        "meaning": "A hypothetical scenario used to test a concept or principle, such as the trolley problem."
                    }
                ],
                "pitfalls": [
                    "Presenting one school's view as the answer. Name the philosopher or tradition behind a claim.",
                    "Calling any disagreement a fallacy. Fallacies are specific errors of reasoning, not a label for positions one dislikes.",
                    "Compressing a philosopher's thought into a slogan. 'I think, therefore I am' is a step in an argument, not a summary of Descartes.",
                    "Treating Western philosophy as the only tradition; the datasets cover Greek, Chinese, Indian and Islamic thought where noted."
                ],
                "agent_tips": [
                    "Give the standard definition, then the main competing positions with their proponents.",
                    "When asked 'what is the answer to a philosophical question', explain the options and the strongest objections to each.",
                    "Use the fallacy list to name an error in an argument, quote the part of the argument that commits it, and avoid labeling a person."
                ],
                "start_with": [
                    "logical-fallacies",
                    "major-philosophers"
                ]
            }
        },
        {
            "id": 24,
            "slug": "literature",
            "name": "Literature",
            "description": "Literary movements, genres, narrative techniques, and major works across history.",
            "icon": "book",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Literature reference data names the tools writers use and the categories readers sort them into: the elements of drama, the techniques of narration, the devices of poetry, the genres of fiction, the movements that shaped literary periods and the awards that recognize writers. The vocabulary is mostly settled, but its use is interpretive: whether a passage is stream of consciousness or free indirect discourse, or a novel belongs to one genre or another, is a judgment supported by evidence in the text. Awards and movements also change: prize rules, categories and winners are updated every year.",
                "key_ideas": [
                    {
                        "term": "Genre",
                        "meaning": "A category of works sharing conventions of form, subject or tone. Genres overlap, and many works belong to more than one."
                    },
                    {
                        "term": "Point of view",
                        "meaning": "The perspective from which a story is told: first person, third person limited or omniscient, and less common forms such as second person."
                    },
                    {
                        "term": "Literary device",
                        "meaning": "A technique used to create an effect, such as metaphor, irony or foreshadowing."
                    },
                    {
                        "term": "Literary movement",
                        "meaning": "A group of writers, usually in one period, sharing aims, themes and methods, such as Romanticism or Modernism."
                    },
                    {
                        "term": "Unreliable narrator",
                        "meaning": "A narrator whose account the reader has reason to doubt, creating a gap between what is said and what is true."
                    },
                    {
                        "term": "Meter",
                        "meaning": "The pattern of stressed and unstressed syllables in a line of verse, such as iambic pentameter."
                    },
                    {
                        "term": "Canon",
                        "meaning": "The set of works regarded as most important in a tradition. Its membership is debated and changes."
                    }
                ],
                "pitfalls": [
                    "Treating a device name as an interpretation. Spotting a metaphor is not the same as explaining what it does in the text.",
                    "Reading movement labels as hard boundaries; authors often belong to several or none.",
                    "Quoting award results without the year. Prizes are awarded annually and their rules change.",
                    "Presenting genre definitions as universal; they vary by critic, publisher and era."
                ],
                "agent_tips": [
                    "Quote the line or passage behind any claim that a device is in use, and say what effect it creates.",
                    "Credit translated works carefully: awards for translated fiction often name the translator.",
                    "For plot or character questions, avoid spoilers when the user has not asked for them."
                ],
                "start_with": [
                    "poetry-devices",
                    "narrative-techniques"
                ]
            }
        },
        {
            "id": 25,
            "slug": "linguistics",
            "name": "Linguistics",
            "description": "Language structure, phonetics, and semantics.",
            "icon": "globe",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Linguistics reference data describes how languages are built and related: the families that group them by common ancestry, the parts of speech and syntactic terms that describe sentence structure, the morphological processes that form words, and the phonetic spelling alphabet used in radio and aviation. Most of these terms have a core meaning everyone accepts, and edges that linguists argue about: whether a word is an adjective or a determiner, where one language ends and a dialect begins, whether two families are related at all. The goal here is accurate working definitions with examples.",
                "key_ideas": [
                    {
                        "term": "Language family",
                        "meaning": "A group of languages that descend from a common ancestor, shown by systematic sound and vocabulary correspondences."
                    },
                    {
                        "term": "Isolate",
                        "meaning": "A language with no demonstrated relatives, such as Basque."
                    },
                    {
                        "term": "Morpheme",
                        "meaning": "The smallest unit of meaning in a language, such as 'un-', 'happy' and '-ness' in 'unhappiness'."
                    },
                    {
                        "term": "Syntax",
                        "meaning": "The rules for combining words into phrases and sentences."
                    },
                    {
                        "term": "Phoneme",
                        "meaning": "A sound unit that distinguishes meaning in a language, such as /p/ and /b/ in 'pat' and 'bat'."
                    },
                    {
                        "term": "Descriptive vs prescriptive",
                        "meaning": "Descriptive grammar records how people actually speak; prescriptive grammar says how they should."
                    },
                    {
                        "term": "Typology",
                        "meaning": "The classification of languages by structural features such as word order, rather than by ancestry."
                    }
                ],
                "pitfalls": [
                    "Assuming similarity means relationship. Languages can share words through borrowing or chance without being related.",
                    "Counting languages as if the boundary were clear. Language versus dialect is partly political and social.",
                    "Treating English parts-of-speech categories as universal; other languages have different word classes.",
                    "Equating a writing system with a language. One language can be written in several scripts and one script can write several languages."
                ],
                "agent_tips": [
                    "Give an example word or sentence with each linguistic term; it makes the definition checkable.",
                    "State whether a classification, such as a language family, is the mainstream view or debated.",
                    "For pronunciation, distinguish the spelling alphabet (NATO code words) from the phonetic alphabet (IPA)."
                ],
                "start_with": [
                    "parts-of-speech",
                    "language-families"
                ]
            }
        },
        {
            "id": 26,
            "slug": "psychology",
            "name": "Psychology",
            "description": "Psychological concepts, disorders, and theories.",
            "icon": "cpu",
            "created_at": 1783090350,
            "dataset_count": 6,
            "topic": {
                "overview": "Psychology reference data here covers the vocabulary that gets reused in everyday reasoning: how people systematically misjudge (cognitive biases), how they bond and develop (attachment styles, Piaget's and Erikson's stages), how they learn (conditioning, observational, constructivist and cognitive-load accounts) and how they differ (the Big Five and its rivals). These are models with different evidence behind them. The Big Five and operant conditioning are heavily replicated; Freudian defense mechanisms are an influential interpretive framework rather than an experimentally settled mechanism. Knowing which is which is part of using the data well.",
                "key_ideas": [
                    {
                        "term": "Heuristic vs bias",
                        "meaning": "A heuristic is a fast rule of thumb that usually works; a bias is the predictable error that same rule produces in some situations."
                    },
                    {
                        "term": "Construct",
                        "meaning": "An abstract quantity such as conscientiousness or attachment security that cannot be observed directly and is measured through questionnaires or behavior."
                    },
                    {
                        "term": "Dimensional vs categorical",
                        "meaning": "The Big Five scores people along continuous dimensions; attachment styles and Piaget's stages sort people into labeled types or phases. Most modern research prefers dimensions."
                    },
                    {
                        "term": "Replication",
                        "meaning": "Whether independent labs obtain the same result. Classic findings differ a lot in how well they have survived replication."
                    },
                    {
                        "term": "Effect size",
                        "meaning": "How large an effect is, not just whether it exists. A real bias can be small enough to matter little in a given decision."
                    },
                    {
                        "term": "Base rate",
                        "meaning": "How common something is in the whole population; ignoring it is itself a documented bias."
                    },
                    {
                        "term": "Stage theory",
                        "meaning": "A claim that development moves through ordered phases. Age ranges in stage models are typical, not fixed."
                    }
                ],
                "pitfalls": [
                    "Treating a framework as a diagnosis. Attachment styles, defense mechanisms and personality traits describe tendencies, not clinical categories.",
                    "Quoting prevalence or effect sizes as constants. They depend on sample, culture and measurement instrument.",
                    "Assuming Piaget's age ranges are exact. Children vary, and later research found earlier competence on some tasks than his tasks suggested.",
                    "Using 'cognitive bias' as a way to dismiss an argument instead of checking its evidence."
                ],
                "agent_tips": [
                    "Name the framework behind a claim (Piaget, Erikson, the Big Five, operant conditioning) so a reader can look it up and weigh it.",
                    "Describe a bias as a tendency that applies to people in general, not as a verdict on one person's reasoning.",
                    "When a dataset lists approximate prevalence, pass the 'approximate' along; do not turn it into a precise statistic."
                ],
                "start_with": [
                    "cognitive-biases",
                    "personality-trait-models"
                ]
            }
        },
        {
            "id": 27,
            "slug": "law",
            "name": "Law",
            "description": "Legal systems, terminology, and landmark cases.",
            "icon": "shield",
            "created_at": 1783090350,
            "dataset_count": 5,
            "topic": {
                "overview": "Law reference data gives the building blocks of legal systems rather than rules for any one jurisdiction: the families of legal systems (common law, civil law and others), what makes a contract, the vocabulary of criminal law, the kinds of intellectual property and a set of the most cited amendments to the United States Constitution. Law varies by country and changes over time, and the same word can mean different things in different systems, so these entries are orientation and not advice. Whenever a question depends on a particular jurisdiction, the first answer is which one.",
                "key_ideas": [
                    {
                        "term": "Jurisdiction",
                        "meaning": "The authority of a court or government over a place, person or subject. Most legal questions begin with whose law applies."
                    },
                    {
                        "term": "Common law vs civil law",
                        "meaning": "Common law develops through judicial precedent; civil law is organized in codes, with statutes as the primary source."
                    },
                    {
                        "term": "Burden of proof",
                        "meaning": "Who must prove a claim and to what standard: beyond reasonable doubt in criminal cases, a lower balance-of-probabilities standard in most civil cases."
                    },
                    {
                        "term": "Mens rea and actus reus",
                        "meaning": "The guilty mind and the guilty act. Most crimes require both."
                    },
                    {
                        "term": "Consideration",
                        "meaning": "Something of value exchanged to make a promise enforceable in common-law contract law."
                    },
                    {
                        "term": "Intellectual property",
                        "meaning": "Legal rights over creations of the mind: patents, copyrights, trademarks, trade secrets and designs."
                    },
                    {
                        "term": "Precedent",
                        "meaning": "A prior decision that courts follow in similar cases, binding in common-law systems."
                    }
                ],
                "pitfalls": [
                    "Applying one country's rule to another. Terms of copyright, felony definitions and contract formalities differ.",
                    "Treating a summary as legal advice; real cases turn on facts, jurisdiction and recent changes.",
                    "Assuming 'copyright', 'trademark' and 'patent' are interchangeable. They protect different things for different periods.",
                    "Confusing the burden of proof in criminal and civil cases."
                ],
                "agent_tips": [
                    "Ask for or state the jurisdiction before answering, and say that the answer is general information.",
                    "Recommend consulting a qualified lawyer for decisions with legal consequences.",
                    "Quote terms and thresholds with the source and year, since statutes are amended."
                ],
                "start_with": [
                    "legal-systems-common-vs-civil",
                    "intellectual-property-types"
                ]
            }
        }
    ],
    "endpoints": {
        "categories": "/api/",
        "category": "/api/category/{slug}",
        "dataset": "/api/dataset/{slug}",
        "search": "/api/search?q={query}"
    }
}
