dontide.app

An ocean you swim through as a blue whale or a great white shark. 25 procedural worlds, a field journal, releasable whirlpools and earthquakes, and no paywalls or cooldown timers.

Type: 3D Interactive Ocean Simulation / Single Page Application (SPA)
Domain: Marine Ecosystems / Exploration

Purpose & Origins

dontide.app is an ocean you swim through. Explore as a Blue Whale or Great White Shark, follow wildlife through changing habitats, and record what you discover along the way.

The project began with a nephew's request for an ocean simulation where exploration was the actual game, rather than something interrupted by purchase prompts or cooldown timers. It grew into a sandbox for enjoying marine environments, learning a little about their inhabitants, and occasionally causing some chaos.

Players can steer themselves or let autoplay explore and hunt. Free Play keeps the experience relaxed, while Simulation Mode adds breathing, feeding, energy, and depth-pressure management.

Architecture & Technology

The application uses HTML, CSS, and JavaScript, with Three.js rendering through WebGL into an HTML canvas. A custom fixed-step simulation handles movement and environmental interactions separately from the rendering cadence. This gives animal movement, currents, and collision a consistent simulation interval as frame rates vary.

Animals, terrain, vegetation, and visual effects are constructed procedurally on the player's device. Streamed terrain, instanced habitats, shared geometry, and adjustable graphics profiles balance ecological detail against device capability.

Sound is generated locally through the Web Audio API. Each world has an authored musical composition rather than a prerecorded soundtrack or randomly assembled melody. A Web Worker prepares the musical buffers away from the main interface thread, while music, environment, fauna, and effects have independent volume controls.

The release is packaged as a single HTML file and deployed through Cloudflare as a static application. It requires no application backend or account system. Its only external runtime dependency is a pinned Three.js module; it downloads no model, texture, font, or audio libraries.

Discoveries, achievements, preferences, and expedition records are saved in browser localStorage. Progress belongs to that browser profile, with export and import available for backups and transfer.

Scope & Uniqueness

DonTide includes 25 ocean worlds, spanning reefs, kelp forests, tidal basins, volcanic shelves, polar waters, and deep trenches. Research targets and achievements give exploration direction without locking access to the environments.

It is also a place to experiment. Enjoy a peaceful habitat, release a whirlpool or subsea earthquake, then swim through the disturbance and inspect the aftermath. Wildlife scatters, currents change, sediment rises, and vulnerable habitats can be displaced. Stop and Restore controls let players end the disturbance or renew the environment.

The aim is immersive, informative play rather than scientific precision. Visibility, wildlife density, and travel speed are adjusted to keep discovery rewarding. There are no advertisements, microtransactions, subscriptions, or artificial waiting mechanics: curiosity sets the pace.

Screenshots