ElCity is an innovative, turn-based city builder designed to run entirely within the Emacs text editor. Featuring an ASCII-based user interface optimized for terminal sessions, it serves as a practical demonstration of the 'functional core / imperative shell' architectural pattern. The project emphasizes a strong separation between state and effects, utilizing a custom Domain Specific Language (DSL) to define tile types. By maintaining a deterministic and pure core simulation, the developer ensures the code is easily testable, scalable, and manageable for both humans and AI agents. Key gameplay elements include road connectivity, power distribution, and a zone-based economy where Residential, Commercial, and Industrial areas interact. The project requires Emacs 30.1+ and utilizes modern development practices such as ERT for testing and Eask for dependency management. This makes ElCity not only a functional game but also a sophisticated example of software engineering within a text-centric environment.