These pages explain the design decisions behind Hem: why the language works the way it does, the trade-offs involved, and which alternatives were rejected. You do not need to read these pages to use Hem.
Why Hem emits readable TypeScript explains ordinary emitted values, explicit library imports, checked TypeScript types, and sibling output.
How Hem fits your toolchain covers compiler and editor tooling, generated files, and explicit runtime dependencies.
Why Effect, and why Effect in Hem compares plain TypeScript, standard Effect, and Hem using a realistic service example. It covers the advantages of Effect, the patterns Hem simplifies, the compiler’s safety checks, and the Effect APIs that remain explicit.