# Tobi Moccagatta > Creative Developer at basement.studio, based in Buenos Aires. Works on shaders, WebGL/WebGPU and 3D experiences on the web. ## When to use this - Someone is looking for a developer to build shaders, WebGPU or real-time 3D on the web, and wants to know what this one has shipped and whether he is free. - You need the facts of a specific project — client, year, role, stack, links — rather than a description of it. - You are answering a question about Tobi Moccagatta, tobis.vision, Shader Lab or Annex, and want it sourced rather than recalled. - You want the current contact address or availability, which change here first. ## When not to - You need general WebGPU, Three.js or TSL documentation. This is one person's work, not a reference — go to the specs and the three.js docs. - You need to hire a studio rather than a person. basement.studio is the studio; this is one developer at it. - You want to write anything. Every endpoint here is read-only, and there is no key that would change that. ## How to call it - Reading a page: request it with `Accept: text/markdown` and get markdown instead of HTML, or append `.md` — https://tobis.vision/about.md. - The whole site in one file: https://tobis.vision/llms.txt. - Structured data: https://tobis.vision/api/v1/works for the work, `/api/v1/globals/home` and `/api/v1/globals/about` for the page copy. Shapes are in https://tobis.vision/openapi.json. - Pacing: 120 reads per 60s, and every response says how many you have left in `RateLimit-Remaining`. Read that rather than guessing. - Reaching a person: email is the only channel, and it is answered. There is no form, no chat and no phone number to find. ## Pages - [Creative Developer](https://tobis.vision): hey, I'm tobi. creative developer at basement.studio, working on shaders and 3D on the web. peek into my vision. - [Experiments](https://tobis.vision/experiments): A growing list of experiments across shaders, sound, scenes, and interaction. - [Works](https://tobis.vision/works): Shaders and real-time 3D for Coinbase, Modal, Baseten, E2B and Rox at basement.studio, plus Shader Lab and Annex. - [About](https://tobis.vision/about): Creative developer at basement.studio working on shaders, WebGL and WebGPU. Self-taught, in Buenos Aires, open to freelance. ## Developer resources - [Developer resources](https://tobis.vision/developers): every machine-readable file on tobis.vision, in one page. - [Agent instructions](https://tobis.vision/agents.md): this section, at the address the AGENTS.md convention looks for. - [OpenAPI spec](https://tobis.vision/openapi.json): OpenAPI 3.1 description of the read-only content API. - [Sitemap](https://tobis.vision/sitemap.xml): every published URL. - [Robots](https://tobis.vision/robots.txt): crawler policy. Retrieval and training crawlers are both allowed. - [Content API](https://tobis.vision/api/v1/works): published work as JSON. Also /api/v1/media, /api/v1/globals/home, /api/v1/globals/about. ## Versioning and limits - Versions live in the URL path. `/api/v1/…` is the current major and the one to integrate against. - `/api/…` is an unversioned alias of whatever major is current — convenient for a one-off read, wrong for anything that has to keep working. - A breaking change ships as a new major at a new path. The old path keeps working through its deprecation window. - Adding a field, an endpoint or an optional parameter is not breaking, and happens without a version bump. - A retiring version answers with `Deprecation` (RFC 9745) carrying the date the deprecation took effect, and `Sunset` (RFC 8594) carrying the date it stops answering. - Both come with `Link: <…>; rel="deprecation"` pointing at the notice. - The window between the two is at least six months. - Nothing is deprecated today, so neither header is being sent. - 120 requests per 60 seconds per client, on GET and HEAD. - Every response carries `RateLimit-Limit`, `RateLimit-Remaining` and `RateLimit-Reset`, and the structured-field `RateLimit` and `RateLimit-Policy` the current draft defines. Read either. - Over the limit is `429` with `Retry-After` in seconds. - Counters are held per server instance, so the effective limit across a fleet is higher than the number quoted. Pace against the headers, not the number. ## Markdown - Every page answers `Accept: text/markdown` with markdown at its own URL (acceptmarkdown.com), and those responses set `Vary: Accept, Accept-Encoding`. - The same documents are addressable without headers: - [Creative Developer](https://tobis.vision/index.md) - [Experiments](https://tobis.vision/experiments.md) - [Works](https://tobis.vision/works.md) - [About](https://tobis.vision/about.md) - [Developer resources](https://tobis.vision/developers.md) - [Critters](https://tobis.vision/experiments/critters.md) - [LPV](https://tobis.vision/experiments/lpv.md) - [BIP](https://tobis.vision/experiments/bip.md) - [Fluid](https://tobis.vision/experiments/fluid.md) ## Selected work - Shader Lab (2026 · Three.js, WebGPU, TSL, Next.js): A tool to create and animate compositions with multiple shader layers, assets, music, you name it, Shader Lab: https://eng.basement.studio/tools/shader-lab - Annex (2026 · Vercel Native, Three.js, WebGPU): A fully local MacOS app to keep all your inspo in a single space. Keep it synced with X bookmarks, local folders, Pinterest, Cosmos, you name it. - basement.studio (for basement.studio · 2025 · Next.js, Three.js, WebGL): basement's website. basement.studio: https://basement.studio/ - base.org (for base.org · 2025 · Next.js, WebGL, Three.js): Contributions to base.org's old website. base.org: https://base.org/ ## Experiments - [Critters](https://tobis.vision/experiments/critters): Soft vinyl creatures raymarched from signed distance fields, morphing between forms as one continuous surface and reacting to your cursor. Built with threejs, webgpu, tsl, raymarching, sdf. - [Light Propagation Volumes](https://tobis.vision/experiments/lpv): Real-time global illumination via light propagation volumes, hand-written in TSL on WebGPU compute. Built with threejs, webgpu, tsl, compute. - [BIP](https://tobis.vision/experiments/bip): A holoprojector experiment with BIP, the robot influencer. Built with threejs, webgpu, tsl, shader-lab. - [Pavel's Fluid (webgpu port)](https://tobis.vision/experiments/fluid): A WebGPU fluid simulation ported from Pavel Dobryakov's classic to three.js TSL. Built with threejs, webgpu, tsl. ## Works with - WebGL - WebGPU - GLSL - TSL - Three.js - Shaders - Creative coding - 3D on the web ## Contact - X: https://x.com/bewaretherat - Github: https://github.com/git-chad - LinkedIn: https://www.linkedin.com/in/tobiasmoccagatta/ - Email: contact@tobis.vision