Self-governing pixel-art village sim · in the browser

A village
that remembers.

You don't run the village — you start it, and then it lives. Drop a building and PixelVille figures out the rest: roads lay themselves, families move in, people get jobs and remember where they've been, a mayor gets elected, disasters strike and neighbours grab buckets — and a hamlet grows into a metropolis while you watch.

~11,700 lines of vanilla JS · zero dependencies · zero image assets

🏙️pixelville · a metropolis at christmaslive
A snow-covered PixelVille metropolis at Christmas, skyscrapers and a river running through it, with the full game HUD overlaid

~0

lines of JS

hand-written, 14 modules

0

dependencies

no frameworks, no libraries

0

image assets

every pixel is procedural code

~0

building types

teastalls → skyscrapers

0

personality traits

per villager

0

side-gig jobs

for anyone between careers

0

transport modes

car → plane

0

village tiers

Hamlet → Metropolis

01the hook · autonomy

You don’t run the village.
You start it.

There’s no command layer — you’re a landscape gardener, not a puppeteer. Drop a building and the town figures out the rest. The signature moment happens on your very first click: an intelligent A* pathfinder connects it to the network, reusing roads, carving around mountains, and bridging a river only when it’s genuinely worth it.

🏙️pixelville · full interfacelive
The complete PixelVille interface — building palette sidebar, top HUD bar, a living winter town and the PVTV news panel
auto-road · A* pathfinder
Road · 0.15Grass · 1Water · 7 → bridgeRock · ∞

Existing road

0.15

strongly reused & merged

Grass

1

normal

Trees

1.8

passable but avoided

Water

7

becomes a bridge only when worth it

Rock / buildings

impassable — roads carve around

02the core usp · living minds

Its citizens are people,
not statistics.

This is the differentiator. Other AI-made village sims move agents between buildings on schedules or dice rolls. PixelVille’s citizens have an actual mind — and it drives visible behaviour. Four parts, every one backed by real logic.

🏙️villager inspectorlive
The villager inspector — Kai Nakamura, 37, mood 79%, a dock worker, married, 'the curious type · knows 132 places', with a memory: 'Day 21: welcomed little Lina'

Click any person in the street and read their whole life — mood, job, savings, family, personality, and their latest memory.

01

Knowledge

Every villager holds a private set of buildings they've actually encountered. You grow up knowing only your own neighbourhood; new places spread by word of mouth in the street, by a PVTV broadcast, or by living nearby when a place opens.

You can't apply for a job you've never heard of — a new shop across town is genuinely undiscovered until word reaches people.

02

Memory

Each person keeps an episodic diary — fires, jackpots, weddings, promotions, business failures — every entry tagged with a feeling from −2 to +2. Strong memories linger for life; everyday ones fade after ~20 days.

A cautious soul who was burgled avoids that place for days. Strong stories travel as gossip and shift the listener's mood.

03

Personality

Five stable traits — social, caution, ambition, thrift, curiosity — derived deterministically from each villager's seed, so they're consistent and survive save/load.

The thrifty read the menu prices, the social bring friends along, the ambitious hunt better jobs, the curious try the unknown.

04

Decisions

When a villager picks where to spend the evening, PixelVille scores every option they know — by distance, price (weighted by thrift), how much they like the place, whether they fear it, whether it's new, and how busy it is.

The result is a chosen destination, not a random one. A broke week pushes them toward free fun — the park, the library.

five stable traits:socialcautionambitionthriftcuriosity

Relationships & ambitions

Friendships form through street encounters, deepen with contact, and cool and disappear without it. Ambitions are real economic arcs — a shopkeeper saves startup capital, buys a plot, builds their shop and quits the day job to run it.

Click anyone, read their whole life

The villager inspector shows any person's age, mood, job and wage, savings, loans, closest friend, favourite haunt, and their last few memories. A golden ring follows whoever you're watching.

03meet anyone · the inspectors

The town isn’t a spreadsheet.
It’s a cast of characters.

Click a villager for their whole story, or a building to meet everyone who lives and works there. Even a block of flats knows its residents by name, tracks the household mood, and remembers how many places its people have discovered.

🏙️villager · Kai Nakamuralive
The villager inspector — Kai Nakamura, 37, mood 79%, a dock worker, married, 'the curious type · knows 132 places', with a memory: 'Day 21: welcomed little Lina'
🏙️building · the Apartmentslive
The building inspector for an Apartments block — connected to roads, land value, savings, its ten named residents, household mood, and how many places its people know
04the second big usp · democracy

A village that governs itself.

The settlement is politically alive. Every in-game year it holds a real election — and it’s not a menu. It’s a full week of banners over the streets and daily rallies before the town votes on its own life.

🏙️the town votes on its own lifelive
Colourful apartments and mansions across a snowy PixelVille neighbourhood

campaign week · one colour per candidate

Coloured banners are strung over the streets and daily rallies gather a crowd around a candidate on a soapbox — a full week before the town casts its ballots.

Four candidate personalities

💖

Visionary

pure heart

Parks, schools, libraries, hospitals, culture, temples & churches.

📈

Business

sharp mind

Shops, offices, factories, malls, banks, rail, the exchange, an airport.

🧱

Steady

dependable planner

Fire, police, schools, parks, buses, the post office, water towers.

🐍

Corrupt

smooth talker

Mostly a town hall for himself — and skims the treasury until auditors catch up.

A full campaign week

Every in-game year (28 days) brings a real election — preceded by a 7-day campaign: coloured banners strung over the streets, daily rallies with a crowd around a candidate on a soapbox, and promises tied to the town's actual needs.

Everyone votes on their own life

Each ballot is computed from that villager's quality of life, employment, town safety, active grievances and stable leanings. A good mayor is re-elected; a bad one is voted out; the corrupt are strongly rejected by people with a good life.

The mayor actually governs

Gets a town hall built, moves into the office, commutes there daily, flies a flag over the roof, collects taxes into a treasury, and spends it on the town's most pressing needs — a district that outgrows one fire station gets a second.

Grievances, riots & resignation

You set the tax policy — low, normal or high. Genuine unhappiness produces riots of the genuinely unhappy, and a disgraced mayor can be forced to resign, triggering a fresh election.

And when government fails — the village builds it itself.

The most on-brand mechanic: when town hall ignores a real need for days, residents pool their savings and build it themselves — fire stations and police first, then schools, homes, shops, parks. After a fire or a collapse, neighbours rush to the site, crews roll out, the street clears the rubble together, and the community rebuilds.

05why it's different

Anyone can generate a village.

AI has made it trivial to generate a village sim, and the market is flooded with them. Here’s the honest, defensible difference — line by line.

Typical AI village sim
PixelVille
Agents follow fixed schedules or random walks
Agents make scored decisions from knowledge, memory, taste, price and mood
“NPCs” are interchangeable
Every villager is a named person with 5 traits, a memory, and friendships you can inspect
The world is a static backdrop
Buildings spread by word of mouth — a new shop is undiscovered until people hear of it
The player commands everything
The village governs itself — real elections, self-building communities
Built on a heavy engine + asset packs
Zero dependencies, zero images — every pixel is procedural code
Events are numbers changing off-screen
Every event is rendered — fire trucks, bucket brigades, rallies, riots, road crews
Save is a snapshot of tiles
Save preserves every villager's memories, friendships and businesses — a person is the same after a reload

“Anyone can generate a village.
PixelVille generates a society.

06everything else it does

Depth under a calm surface.

The town looks peaceful, but underneath sit interacting systems — economy, crime, transport, weather, disasters, festivals — that produce emergent stories. All of it is implemented and live.

💰

A real economy

  • Wages, prices, household savings and 8 distinct lifestyles
  • Business founding with startup capital & bank loans
  • A 5-ticker stock market with its own exchange
  • A casino (the house usually wins), the lottery, daily utility bills
  • Businesses boom or quietly go under on real footfall
🚨

Crime & justice

  • Unemployment breeds night-time burglars — banks & malls are prime targets
  • Alarms ring; police cars race out with flashing lights
  • A courthouse boosts convictions; offenders are jailed
  • The 🛡️ safety stat feeds happiness and votes
🚌

Full transport

  • Cars, buses and taxis on the road network
  • Railways with running trains between stations
  • Docks with boats & ferries, a fishing fleet
  • Helicopters between pads, and an airport with planes that bring visitors
🌦️

A living world

  • Four seasons — blossoms, summer fireflies, autumn leaves, winter snow & frozen lakes
  • Weather with rain streaks, storms, puddles, cloud shadows and rainbows
  • Real nights — a lighting engine punches warm light from windows, lamps & headlights
  • People respond: umbrellas out, the car taken sooner
🌪️

Disasters that escalate

  • Fires that leap to neighbours if left unattended
  • Earthquakes that rupture gas lines into secondary fires
  • Floods that wash out roads — road crews relay them
  • Droughts that halve farm pay, and roaming tornadoes
  • Tense but forgiving — a building is only ever lost to an escalation you could have watched
🎉

Festivals & ambient life

  • A 28-day festive calendar — Easter, Diwali diyas, a full Christmas season with fireworks
  • Village tiers, each a named celebration with fireworks
  • Hikers, birds, dogs, fireflies, ducks, butterflies, tourists, beachgoers
  • A night sky of hot-air balloons, shooting stars, a UFO and unexplained lights

Seven ways to get around — all with running vehicles

🏙️railways · running trainslive
A running train crossing the snowy landscape on hand-laid railway tracks, snowmen dotted around
🏙️airport · runway & planeslive
A PixelVille airport with a terminal, runway and a plane on the tarmac
🏙️helipad · heli flightslive
A helipad marked with a big H, ready for helicopter flights between pads

Four seasons reshape the whole world

🌸
Spring
blossoms
Summer
fireflies
🍂
Autumn
falling leaves
❄️
Winter
snow & frozen lakes
07a living world · gallery

Every event is rendered.

No off-screen bookkeeping for anything dramatic. Mountains with hiking trails, rivers and frozen lakes, a night lit from a thousand windows, and a Christmas tree raised in the middle of town.

🏙️night · the lighting enginelive
PixelVille at night — the lighting engine punches warm pools of light from glowing windows, street lamps and car headlights
🏙️mountains · hiking trailslive
Two huge 5×5 snow-capped mountain ranges with hiking trails, ringed by colourful houses
🏙️by the riverlive
A river winding through a snowy PixelVille district, bridged by roads, docks along the banks
🏙️frozen lake & beachlive
A frozen lake and a sandy beach meeting the sea, houses and a fire station clustered around the shore
🏙️a colourful districtlive
Colourful apartments and mansions across a snowy PixelVille neighbourhood
A lit Christmas tree raised in the middle of PixelVille, buildings strung with festive lights

Christmas in PixelVille

A 28-day festive calendar lights every building, raises a Christmas tree in town, fills the festive markets and launches fireworks nights — Easter and Diwali diyas get their turn too.

08the interface · hud & panels

A SimCity-style HUD, drawn from scratch.

Everything you need to read the town at a glance — and every panel is procedural pixel art, not an asset pack.

🏙️the top bar
The PixelVille top HUD bar — day and time, season, weather, tier, and live population, employment, wealth, safety, happiness and leadership stats

Day, weekday and time; season, weather and tier chips; and live stats — 👥 population, 💼 employment, 💰 wealth, 🛡️ safety, 😊 happiness and 🗳️ leadership.

🏙️palettelive
The PixelVille building palette — tools, residential, and work & industry buildings, each drawn as procedural pixel art

The building palette

Click a building or tool, then click the map — the tool stays armed. Every item, on hover, tells you what it will actually do for the town.

🏙️pvtv · rci · minimaplive
The PVTV live news panel, the RCI demand meters, and the 128×128 minimap

PVTV, RCI & the minimap

An on-screen village news channel with a scrolling ticker, the Residential / Commercial / Industrial demand meters, and a click-to-jump 128×128 minimap.

09how it's built · technical marvels

No engine. No libraries.
No image files.

~11,700 lines of hand-written vanilla JavaScript across 14 modules, deployed as a pure static site. Every sprite you’ve seen on this page — every building, villager and vehicle — is drawn procedurally in code.

Zero dependencies, zero image assets

No frameworks, no libraries, no image files. Every pixel-art sprite — every building, villager and vehicle — is generated procedurally in code. The whole thing is a folder of static files.

A from-scratch canvas renderer

A single HTML5 canvas with a cached ground layer, painter-sorted entities, soft cast shadows, and a day/night lighting engine that punches warm light pools out of the darkness.

Procedural WebAudio synth

Jingles and effect blips are synthesised on the fly with WebAudio — there isn't a single audio file in the project.

Intelligent A* auto-roads

Drop any building and a Dijkstra/A* search connects it to the network — reusing roads, carving around mountains, and only bridging rivers when a detour would be worse.

🏙️~90 hand-drawn buildingslive
A row of hand-drawn procedural shops and services in PixelVille

Every one of ~90 building types is a procedural sprite — no asset pack.

Go start a society.

Every claim on this page can be proven in the live build — drop a building, wait for the town to fill, then click a villager and read their memories.