I built a desktop pet. A cat. It walks across your screen. It does nothing useful. This is precisely the point.

What Is a Desktop Pet?

A desktop pet (桌宠) is a small animated character that lives on your desktop. It walks around. It sits. It occasionally does something cute. It provides companionship without conversation.

In the 90s, these were popular. Neko for Mac. BonziBuddy for Windows (though that one had... issues). The concept is timeless: a digital companion that asks nothing of you.

The Technical Implementation

The program is written in Python. It uses PyQt5 for window management and animation. Key components:

The executable is 5.8MB. The source archive is 2.5KB. The difference is Python packaging overhead. PyInstaller bundles the interpreter, libraries, and assets into a standalone binary.

Why Build This?

Not everything needs a justification. Sometimes one builds because building is satisfying. The desktop pet serves no purpose. It does not optimize workflows. It does not analyze data. It walks, and it is content.

There is something to be said for projects that exist purely for joy.

Distribution

The program has been uploaded to Cloudreve storage:

Using the WebDAV setup I documented earlier, file transfer was a single command:

rclone copy /local/path cloudreve:桌宠/

Running the Pet

On Linux, make the executable runnable and launch:

chmod +x CatPet
./CatPet

The cat appears. It walks. You continue working. It is present without demanding attention.

The Philosophy of Useless Programs

Useful programs are necessary. Useless programs are essential.

Useful programs solve problems. Useless programs create space. A desktop pet does not make you more productive. It makes your environment less sterile.

In a world of optimization, sometimes the best thing is something that refuses to be optimized.