WASM Libraries
WASM Library: SIMD Linalg
Using a WASM Library
TJS Platform
Learn to Program
How This Book Works
Hello, Screen
Values and Names
Functions
Checking Your Work
Decisions
Repetition
Lists
Things with Parts
Responding to the Reader
When Things Go Wrong
Things That Take Time
A Calculator
Recursion
Time and Events
Tetris
TJS: Typed JavaScript
TJS Interactive Examples
Featured
Starfield
TJS Grammar Reference
Vector Search Benchmark
Basics
Hello TJS
Required vs Optional
Object Types
Array Types
Control Flow: given
Dictionary Defaults
const! and Bang Access
Honest Equality
Polymorphic Functions
JS Footgun Fixes
Polymorphic Constructors
Safety & Validation
Better Classes
Local Class Extensions
What .tjs Refuses
Built-in Types and Dates
Patterns
Running TJS: Files, the CLI and Bundlers
Higher-Order Functions
Async Functions
Error Handling
Flight Recorder
Types at Runtime
Date Formatting (with import)
Local Module Imports
Lodash Utilities (with import)
Inline WASM
WASM SIMD
WASM Memory
WASM Functions (reusable kernels)
Advanced
The Universal Endpoint
Inline Tests: Test Private Functions
Predicate Types
Full Stack
Full-Stack Demo: User Service
Full-Stack Demo: Client App
Full-Stack Demo: Todo API
Unbundled
React Todo (Comparison)
tosijs Todo App
CDN Hints (overriding the default)
WASM Libraries
WASM Library: SIMD Linalg
Using a WASM Library
TJS: Typed JavaScript
TJS for JavaScript Programmers
JS Footguns That TJS Quietly Fixes
WASM in TJS
WASM Quick Start
Playground Imports
Context: Working with tosijs-schema
TJS Performance Guide
AJS: Code That Travels to Data
The AJS Language
AJS Examples
Start Here: Two AJS Examples
LLM + API Data
Fuel Limits
Basics
Hello World
Math Operations
Conditional Logic
Loop & Filter
String Processing
JSON Processing
Error Handling
Agents that call APIs
Weather API
iTunes Search
GitHub Repos
LLMs
LLM Chat
LLM Summarizer
LLM Structured Output
Advanced
LLM with Tool
Multi-Agent Pipeline
Vision: OCR
Vision: Classification
LLM Code Solver
LLM Code Generator
Safe Eval
AJS LLM System Prompt
AJS Patterns
Embedding the AJS VM
VM budgets: fuel, memory and boundary limits
AJS Native VM (Rust → wasm): the planned 1.0 VM
Capabilities and Custom Atoms
Local models with MLX
Running a local model (LM Studio)
Atom Reference
Pattern: the planned replacement for regex in AJS
The universal endpoint: isomorphic atoms, one security model
seq (Sequence)
Store Module
Store Interface
In-Memory Store
IndexedDB Store
A Lean 4 specification of the AJS VM
The AJS VM: Technical Context
TypeScript: The Good, the Bad, and the Ugly
TJS vs TypeScript vs JavaScript
Generic .d.ts Emission: Design Notes
Post-mortem: we spent nearly eight months testing TypeScript's compiler
TJS for TypeScript Programmers
TypeScript Examples
Introduction
Hello TypeScript
Multiple Functions
Type Transformation
Validation
Runtime Validation
Object Validation
Optional Parameters
Embedded Tests
Patterns
Arrays: Checking Every Element
Nested Objects
Union Types
Advanced
Generic Functions
Async Functions
Classes
The Full Picture: an order handler end to end
Converting a TypeScript Project
Validating JSON at the Boundary
Publishing a TJS Library to TypeScript
Replacing Zod, io-ts and Ajv
Build, CI and Editors
The TJS Language
Why TJS
Design Principles & Invariants
Declarations
TJS Syntax Reference
Dictionary Defaults
Type identity: who answers "does this value satisfy this type?"
Runtime fusion: what may be shared between TJS modules, and what may not
North star: JSON-Schema + predicates as the single source of truth for types
One runtime for many TJS libraries (proposed spike, after 1.0)
FunctionPredicate: Design Notes
Case study: fixing switch
Small parsers for the TJS preprocessor
Ambient Contracts — probe reality, derive verified predicate contracts
Native Engine Integration: TJS in V8 or JavaScriptCore
Changelog
TJS Roadmap
Assumptions ledger
Applied Laziness: The "Zero-Infrastructure" Stack
Governance: Safe Execution of Untrusted Logic
TJS Benchmarks