whatisgithub

What is goo?

evadne/goo — explained in plain English

Analysis updated 2026-05-18

2TypeScriptAudience · generalComplexity · 2/5Setup · easy

In one sentence

A browser-based image distortion tool inspired by Kai's Power Goo, offering grow, shrink, smear, twirl, and ripple effects with no server uploads.

Mindmap

mindmap
  root((Goo))
    What it does
      Distorts images in browser
      No server uploads
      Undo redo history
    Tech stack
      Vite
      React
      TypeScript
      Tailwind CSS
      Canvas API
    Use cases
      Grow shrink smear
      Twirl ripple effects
      Local only editing
    Audience
      Creative hobbyists
      General users

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Warp and distort a photo directly in the browser with grow, shrink, smear, twirl, and ripple effects

USE CASE 2

Experiment with playful image manipulation without uploading files to a server

USE CASE 3

Undo and redo distortion effects while editing an image

What is it built with?

TypeScriptReactViteTailwind CSSCanvas API

How does it compare?

evadne/gooarashthr/hugo-flowargeneau12e/kairos-tx
Stars222
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasymoderatehard
Complexity2/53/54/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

So what is it?

Goo is a browser-based image manipulation tool inspired by Kai's Power Goo, a classic photo distortion application. It runs entirely in the browser, no server uploads required. When you open it, a dark editor appears preloaded with a generated Renaissance-style portrait. You can replace that image with any local file using a file picker or by dragging and dropping it in. Once your image is loaded, you can distort it using several creative tools: Grow (enlarges parts of the image outward), Shrink (pulls areas inward), Smear (drags pixels across the canvas), Twirl (spins areas of the image), Ripple (creates a wave-like distortion), and GOOplicate. You control the intensity of each effect with adjustable brush size and force settings. The canvas also supports zoom, pan (called Hand mode), fit-to-view, and reset. Pixel-heavy brush operations run in Web Workers, background threads separate from the main browser thread, so the interface stays responsive while distortions are being applied. An undo/redo stack backed by a bounded pixel snapshot manager lets you step back through changes. The editor is built with Vite, React, TypeScript, and Tailwind CSS v4, using the browser's built-in Canvas API for rendering. You would use this if you want a playful, local-only image warping tool that runs directly in the browser with no sign-up and no file uploads to a server.

Copy-paste prompts

Prompt 1
Help me run Goo locally to distort an image with the twirl and ripple tools.
Prompt 2
Explain how Goo uses Web Workers to keep the interface responsive during pixel-heavy edits.
Prompt 3
Show me how to load my own image into Goo via drag and drop.

Frequently asked questions

What is goo?

A browser-based image distortion tool inspired by Kai's Power Goo, offering grow, shrink, smear, twirl, and ripple effects with no server uploads.

What language is goo written in?

Mainly TypeScript. The stack also includes TypeScript, React, Vite.

How hard is goo to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is goo for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.