Day 55. Biker Santa π
ποΈ
A geospatial workflow turned into a playable 3D web game.
Romanian DEM terrain prepared in QGIS/Qgis2threejs, motorcycle movement, gift-drop goals, scoring, and seasonal atmosphere in Three.js + WebGL.
#100DayMapChallenge Day 55/100
π maptheclouds.com/biker-santa/
Day 54. Dots β«βͺ
An Earth globe rendered through procedural dot logic.
I used Three.js + WebGL with custom GLSL fragment shaders to generate halftone dot patterns, where ~100k points are masked by a land texture.
#100DayMapChallenge Day 54/100
π maptheclouds.com/playground/3...
Day 53. AsgardMap πΊοΈβοΈ
Client cartography as worldbuilding: QGIS pipeline + custom Mapbox Studio style on Iceland geography, shaped for readability and atmosphere.
Status: delivered project with documented handover and prototype evidence.
#100DayMapChallenge Day 53/100
Day 52. The Hexagonal Nose ⬑
Yosemite terrain, reimagined through speculative geology.
I used a OpenTopography LiDAR β QGIS β Qgis2threejs β Three.js pipeline.
#100DayMapChallenge Day 52/100
π maptheclouds.com/playground/3...
Day 51. Cluj Globe π
A small geography, viewed at planetary scale.
I took OpenStreetMap data from Cluj County and wrapped it onto a sphere to explore how scale changes spatial perception.
#100DayMapChallenge Day 51/100
π maptheclouds.com/playground/3...
Day 50. Yosemite Valley in 3D β°οΈ
Built from the Day 3 Yosemite dataset (PDAL/Entwine), this LiDAR scene focuses on El Capitan, The Nose, Half Dome, and surrounding walls.
Using QGIS β Qgis2threejs β Three.js.
#100DayMapChallenge Day 50/100 milestone!
π maptheclouds.com/playground/3...
Week 7 Reflection From global networks to terrain, oceans, and urban form. Airports, elevation, chlorophyll, virtual land, atmosphere, wind, and city tiles. Different subjects, same approach. From GIS to 3D, from client work to experiments, each project explores how spatial structure becomes readable through motion, depth, and interaction. The question shapes the tool. Week 8 next.
Week 7 done.
Seven projects, seven spatial questions: OpenFlights globe baseline, NOAA terrain, chlorophyll seasons, client virtual-land interaction, atmosphere rendering on the Day 43 base, GPU wind flow, and city polygon tiles.
#100DayMapChallenge
Day 49. Polygon city tiles ποΈ
This project renders TimiΘoara historical center using D3.js + Nextzen + OSM Buildings.
The city assembles tile by tile: context first, detailed footprints after.
#100DayMapChallenge Day 49/100
Day 48. Global wind forecast π¬οΈ
NCEP GFS wind rasters (JSON + PNG) are animated as continuous global flow with WebGL Wind by Volodymyr Agafonkin.
The visual language references Starry Night.
#100DayMapChallenge Day 48/100
π maptheclouds.com/playground/3...
Day 47. Atmosphere βοΈ
Direct continuation of Day 43 (OpenFlights World Airports), but with a different visual language.
Built with Three.js + WebGL + subtle GLSL shader passes.
#100DayMapChallenge Day 47/100
π maptheclouds.com/playground/3...
Day 46. Interactive virtual land map πΊοΈ
Built a two-level custom map for a blockchain virtual land platform: global region overview plus detailed plot-level interaction.
QGIS, D3.js + SVG handled zoom, interaction, popups, and SOLD states.
#100DayMapChallenge Day 46/100
π Client production
Day 45. Chlorophyll ocean data π
I built an interactive 3D globe from NASA Aqua/MODIS chlorophyll data (2021), with 12 monthly frames showing seasonal phytoplankton dynamics.
Selected for IIB Awards 2023.
#100DayMapChallenge Day 45/100
π maptheclouds.com/playground/t...
Day 44. Earth gone wild! π
I used NOAA ETOPO1 data to build an exaggerated topographic Earth in Three.js + WebGL.
The scene uses displacement mapping, GLSL-controlled relief exaggeration, and dynamic lighting.
#100DayMapChallenge Day 44/100
π maptheclouds.com/playground/3...
Day 43. OpenFlights World Airports βοΈ
Week 7 starts with a question about scale: what happens when 8,000+ airports become a single interactive globe?
Built with Three.js + WebGL, InstancedMesh and Raycaster.
#100DayMapChallenge Day 43/100
π maptheclouds.com/playground/3...
Week 6 done. From vinyl Voronoi experiments to mapping 50k+ cities, Antarctica gravity, UNESCO client work, Corgi route playback, an Africa-centered globe, and river hierarchies.
Different subjects each day, same underlying method.
Week 7 tomorrow.
#100DayMapChallenge
Day 42. Rivers as flow networks π
South America's river systems visualized as interconnected networks.
Using HydroSHEDS data, the focus is on hierarchy.
#100DayMapChallenge Day 42/100
π maptheclouds.com/playground/30-day-map-challenge-2023/sa-rivers/
Day 41. Africa on a 3D globe π
What happens when you center Earth on Africa?
Built with Three.js + WebGL using NOAA's ETOPO1 elevation data.
Sometimes a perspective shift reveals something new.
#100DayMapChallenge Day 41/100
π maptheclouds.com/playground/30-day-map-challenge-2023/africa/
Day 40. Corgi routes πΆ
What if GPS routes could be visualized like Relive?
Interactive route visualizer built with MapLibre GL + D3.js. Drag-and-drop GPX
#100DayMapChallenge Day 40/100
π maptheclouds.com/playground/30-day-map-challenge-2022/corgi-routes/
Day 39. Education inequality globally π
Client work: animated choropleth for education research org. Gender Parity Index across 5 levels. Leaflet + D3.js. Challenge: Jenks breaks on combined dataset for consistent scale.
Gender gap widens as girls progress.
#100DayMapChallenge
Day 38. Gravity beneath Antarctica π§
EIGEN-6C4 gravity model (0.1Β° resolution). QGIS processed data reveals subtle variations from ice thickness, bedrock, subglacial topography.
maptheclouds.com/playground/30-day-map-challenge-2023/antarctica-gravity/
#100DayMapChallenge
Day 37. Global settlements π
D3.js canvas. Size = population, brightness = rank. No borders. Quadtree spatial index for fast click detection (hierarchical vs linear).
maptheclouds.com/playground/30-day-map-challenge/points/
#100DayMapChallenge
Day 36. Music history through data πΆ
50 of the most valuable vinyl records visualized with a Voronoi layout.
Beatles dominate: White Album ($790k)
D3.js interactive visualization.
#100DayMapChallenge
maptheclouds.com/playground/30-day-chart-challenge/comparisons/experimental/
Week 5.
Five weeks in, rhythm shifting from discipline to exploration.
Seven projects: organizational networks, terrain mapping, temporal comparisons. Day 32: force-directed chart for SF DA Office with Anna Tong.
35 days down, 65 remaining.
#100DayMapChallenge
Day 35. Earth in Lines
Red coastlines on black, leaving only the geometry of the planet.
GeoJSON coastline data -> WebGL line geometries using Three.js (Shape, ShapeGeometry, Line).
Data: Natural Earth.
maptheclouds.com/playground/30-day-map-challenge-2023/minimal/
#100DayMapChallenge
Day 34. Historical timelines π
COVID-19 vaccination race (Apr 2021).
Inspired by Mike Bostockβs Bar Chart Race.
Data: ourworldindata.org
maptheclouds.com/playground/30-day-chart-challenge/comparisons/historical/
#100DayMapChallenge
Day 33. SoCal Backcountry Route ποΈ
MapLibre + Three.js + WebGL. A 2.5D view with hillshading changes how the route is perceived: a flat map shows mileage, while perspective reveals climbs and descents.
maptheclouds.com/playground/30-day-map-challenge-2023/ca-bdr/
#100DayMapChallenge
Day 32. SF DA Office org chart πΌ
My first significant freelancing project with Anna Tong.
Challenge: integrating images and text inside the circular DOM nodes while keeping everything readable.
Force simulation positions nodes by relationships, not rigid hierarchy.
#100DayMapChallenge
Day 31. Sakura Bloom πΈ
Cherry blossom progression across Japan, visualized as an animated map. Built with Mapbox, OpenStreetMap, GSAP.
Spring moves from south to north, shaped by latitude and local climate.
maptheclouds.com/playground/30-day-map-challenge-2023/sakura-bloom/
#100DayMapChallenge
Day 30. Air distance in Germany βοΈ
Straight lines between airports (QGIS). Inspired by Anita Graser's flow map style.
Geography over strategy. Challenge: visual density when hundreds of connections overlap.
maptheclouds.com/playground/30-day-map-challenge-2023/air-distance/
#100DayMapChallenge
Day 29. Romania's population as mosaic π·π΄
Grid approach using Gridviz + D3.js instead of choropleth.
Removes administrative boundaries, reveals urban corridors and rural patterns clearly.
maptheclouds.com/playground/30-day-map-challenge-2023/ro-mosaic/
#100DayMapChallenge #DataViz