endless_3D_runtime Svelte Themes

Endless_3d_runtime

3D Runtime is a small SvelteKit and Three.js WebGPU runtime for exploring endless, performance-conscious 3D worlds

Endless 3D Runtime

Endless 3D Runtime is a small SvelteKit and Three.js WebGPU runtime for exploring endless, performance-conscious 3D worlds. It is the prototype home for the Ikaros infinite-world runtime: a learning-oriented experiment in deterministic world chunks, route-local rendering, and eventually reusable renderer-free runtime capabilities.

The current working experience is available at /endless-world. It is kept route-local on purpose until reusable engine boundaries are proven by a second experience or a stable runtime contract.

The project is still an app/demo prototype. The first reusable code has now started as a narrow renderer-free TypeScript core in src/lib/ikaros-core. That core is not a complete engine and is not ready for package publication.

Goals

  • Explore endless runtime patterns for VR-style worlds.
  • Support audio-first and visual-first interaction experiments.
  • Keep performance-focused runtime scripts readable, typed, and disposable.
  • Grow reusable capabilities only when the boundary is stable and testable.

Current Boundary

/endless-world is the demo sandbox. It owns Svelte components, Three.js WebGPU setup, camera control, chunk lifecycle, debug rendering, MarchingCubes surface content, and local visual experiments.

src/lib/ikaros-core is the first renderer-free foundation. It exposes only:

  • built-in face topology metadata for supported geometry systems
  • deterministic chunk descriptor generation
  • a small descriptor store for runtime instances
  • public TypeScript types for the descriptor and topology contract

It intentionally does not expose renderer setup, Svelte components, WebSocket control, fly-camera behavior, chunk managers, geometry factories, demo HTML, or asset loading.

Local Development

Install dependencies:

bun install

Start the dev server:

bun run dev

Open the current runtime route:

http://localhost:5173/endless-world

Run the repository check:

bun run check

Run the focused library tests:

bun run test

Documentation

Architecture Principle

This repo follows Thin Core, Fat Edges:

  • keep the core small, boring, typed, and documented
  • keep route-local experiences expressive and replaceable
  • move code into $lib only when reuse or a stable boundary is proven

Roadmap

  1. Keep /endless-world working as the demo sandbox.
  2. Stabilize the renderer-free Ikaros core with deterministic descriptor tests.
  3. Choose a repository license before publication.
  4. Add contribution, security, issue, and CI workflows after the publication scope is confirmed.
  5. Delay npm/package publication until the public API has a real consumer.

Publication Status

GitHub publication target: small public prototype repo under David Weigend's account, licensed MIT. New dependencies, public API expansion, and package publication scope should still be confirmed before they are added.

Top categories

Loading Svelte Themes