explaingit

webrender/watchopolis

Analysis updated 2026-05-18

4TypeScriptAudience · developerComplexity · 4/5Setup · hard

TLDR

A modern, open-source remake of SimCity, called Micropolis, that runs in the browser, in Node.js, and on Wear OS smartwatches as Watchopolis.

Mindmap

mindmap
  root((Watchopolis))
    What it does
      SimCity style simulation
      Runs in browser
      Runs on smartwatch
    Tech stack
      C++ engine
      WebAssembly
      SvelteKit
      Kotlin
    Use cases
      Browser city game
      Wear OS city game
      City file editing tool
    Audience
      Developers
      Game hobbyists

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Play a browser-based city simulation game built from the original SimCity source code.

USE CASE 2

Build and manage a small city on a Wear OS smartwatch using the Watchopolis app.

USE CASE 3

Inspect, edit, or export saved city files using the included command line tool.

What is it built with?

TypeScriptC++WebAssemblySvelteKitKotlin

How does it compare?

webrender/watchopolis0labs-in/vision-linkalfons-fhl/cursor-plan2api
Stars444
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyhardmoderatemoderate
Complexity4/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Building the Wear OS app requires the Android NDK, and the C++ engine needs Emscripten to compile to WebAssembly.

In plain English

This project is a modern remake of the classic city building game SimCity, built from a version of its original source code, called Micropolis, that was released as open source years ago. The repository packages that same simulation engine, written in C++, into several different modern forms that can all run today. The main version compiles the C++ engine to WebAssembly so it runs directly in a web browser, with a SvelteKit web frontend that draws the city using WebGL. There is a live demo you can try online. The engine can also run without any graphics at all, directly in Node.js, which is useful for automated tools. A notable part of this repository, called Watchopolis, is a version built specifically for Wear OS smartwatches. It uses the same simulation engine, compiled through the Android tools for a watch instead of a browser, paired with a Kotlin interface designed around a round watch screen. On the watch, turning the crown switches between building tools, tapping places a building, dragging pans the view, double tapping changes the zoom level, and triple tapping changes the game's speed. The repository also includes a command line tool for working with saved city files directly, letting a user inspect a city's stats, visualize its layout as text or emoji, edit values like funds or tax rate, or export a city to JSON. The README spends real time on the game's history: how Will Wright's original SimCity was ported to different platforms over the years, why the project uses the name Micropolis instead of SimCity for trademark reasons, and how the current source code was cleaned up and rebuilt. It also describes a larger, more experimental future vision, called MicropolisHub, for turning the simulation into a shared multiplayer world, though that part is aspirational rather than something already built.

Copy-paste prompts

Prompt 1
Explain how the C++ simulation engine connects to the SvelteKit web interface in this project.
Prompt 2
Walk me through building and running the Watchopolis Wear OS app from this repository.
Prompt 3
Show me how to use the command line tool to analyze or edit a saved city file.
Prompt 4
Summarize the history of Micropolis versus the original SimCity that this README describes.

Frequently asked questions

What is watchopolis?

A modern, open-source remake of SimCity, called Micropolis, that runs in the browser, in Node.js, and on Wear OS smartwatches as Watchopolis.

What language is watchopolis written in?

Mainly TypeScript. The stack also includes TypeScript, C++, WebAssembly.

How hard is watchopolis to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is watchopolis for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.