How to POST JSON with curl: The Practical Guide
Send JSON from the command line with curl — the Content-Type header, -d vs --json, posting a file, auth headers, and the quoting mistakes that cause most errors.
Practical articles on JSON, REST APIs, developer tools and common errors — written for developers who want clear, fast answers.

Send JSON from the command line with curl — the Content-Type header, -d vs --json, posting a file, auth headers, and the quoting mistakes that cause most errors.
When even Protobuf's parse step is too slow, zero-copy formats read fields straight from the buffer with no deserialization. How FlatBuffers and Cap'n Proto work and when they're worth it.
SQLite has full JSON support built in — json_extract, the -> and ->> operators, json_each for arrays, and JSONB storage. Query JSON columns without a document database.
A Schema Registry stops one bad producer from breaking every consumer. How the wire format works, the backward/forward/full compatibility modes, and the rules for evolving a schema safely.
TanStack Query (React Query) turns fetch-and-store boilerplate into a managed cache. Query keys, staleTime vs gcTime, background refetching, and invalidation explained.
tRPC gives a TypeScript client and server one shared type with no schema or codegen. How it works, how it still ships JSON over HTTP, and when REST or GraphQL is the better call.
Convert a JSON response into GraphQL SDL — scalar mapping, the nullability model (why ! matters), lists, nested types, and input types. Plus what JSON can't express about a graph.
Turn a JSON object into a Prisma model — scalar type mapping, optional fields, arrays, the Json type, relations, and the @id/@default attributes that a raw JSON sample can't express.
A practical jq reference — filter, map, select, and reshape JSON from the command line. Field access, iteration, select/map, group_by, raw output, CSV, and NDJSON recipes.
JSON has one number type and no precision rules — so parsers use IEEE 754 doubles. Where floating-point rounding and the 2^53 integer limit bite, and how to store money and IDs safely.
ES2025 standardized importing JSON modules with the `with { type: 'json' }` syntax. How it works, why the type attribute is required, dynamic imports, and the security reason behind it.
This JSON.parse error means a raw newline, tab, or control character is sitting inside a string. Why it happens, how to escape it correctly, and how to stop it at the source.
Providers cache stable prompt prefixes and bill them at a fraction of the price. The rule is simple: put static JSON first, volatile JSON last — and never reorder the stable part.