PI TILES is an infinite square grid where every tile holds one digit of pi (3.14159265...).
Tile (0, 0) holds index #0 (digit 3). Ring 1 wraps around the origin:
9 1 2 (-1,-1)=#5 (0,-1)=#3 (1,-1)=#6 1 3 5 (-1, 0)=#1 (0, 0)=#0 (1, 0)=#4 6 4 5 (-1, 1)=#7 (0, 1)=#2 (1, 1)=#8
Every ring r ≥ 2 begins at index (2r−1)² at top-left (−r, −r) and winds clockwise around the perimeter.
The first 50 digits are embedded locally so the origin works offline. As you explore further, 1,000-digit blocks are fetched from api.pi.delivery and cached in memory (LRU 300 blocks) and IndexedDB so revisited areas unlock immediately. Tiles beyond index #999,999 remain permanently locked.