Oneko (officially ‘oneko.js’) is a desktop pet for websites created by Canadian programmer adryd (a.k.a Ari, Ariana) in 2022. The original oneko, which takes its name from the Japanese word for cat (neko 猫 / ねこ), is a tiny pixelated white cat that follows your cursor around when you mouse over the screen. As with a real life cat, oneko chases, yawns, sleeps and scratches at surfaces, but without the drama of scuffed and clawed furniture or the expense of a multi-storey cat condo. In introducing the program, Ari describes oneko as a “hacky script I wrote to put a cat on my site” and was inspired by the desktop pets distributed on computers and floppy disks during the 1980s to the 2000s. Oneko is open source and freely available on Ari’s GitHub repository, which means that anyone can download the code and assets and use, remix and adapt them freely. oneko.js uses the original cat designs of the legend Kenji 'Juan' Gotoh'. Compared to many other desktop pets and screenmates, both oneko.js and other versions of Neko are lightweight, consume minimal computer resources and are usually highly customisable, and not very distracting when it's time for serious work. Neko is also incredibly versatile - you can adopt a Neko for your desktop PC, your laptop, your mobile phone, your Arduino or display device, your website/webapp, and if you're living in Hong Kong, you might even have an Neko running around on your apartment's intercom display!
As part of my research for Onekoshima, I reached out to Ari (adryd) by email to learn about the story behind the script. She kindly emailled back with answers which helped a lot in understanding how oneko.js came about. Ari's motivation for creating the script and pet was that she wanted to add a cute feature to her website that would make it stand apart from other sites on the web. Building the script took around 2 to 3 hours from start to finish, and after oneko.js was officially released in April of 2022, it took off publicly when CSS Script, a script library for JavaScript and CSS, created a logpage with live demo that caught the attention of other developers. Later, 'Maia', a customised re-imagining of the Oneko cat designed for maia arson crimew, a Swiss hacktivist, further fuelled oneko's popularity.
Ari was initially introduced to the Neko desktop pet that inspired oneko by a friend who had oneko for xorg installed on her computer. Everytime the friend did a screenshare while working on their projects, she always noticed the little pixel cat doing laps on her friend's monitor screen.
Ari chose the name "oneko" as she was aware of the oneko program available on Linux computers, and only later learnt of similar programs such as Webneko. As for future plans for oneko.js, she informed me that apart from maybe rewriting the script, she is satisfied that oneko works fine as it is. Judging from the number of websites now using oneko.js or versions of it, Ari's little cute and hacky cursor cat is becoming more and more a feature of this decade's web.
Oneko is a descendant of the Neko software program, a feline deskmate created by Naoshi Watanabe (若田部 直) in the late 1980s for a line of Japanese NEC PC-9801 computers. The artwork for the cat sprite featured in all Neko ports from 1989 onwards was designed by Kenji (Juan) Gotoh/後藤寿庵), who gave up the copyright for the images after a meeting with an IBM executive from America. Gotoh's decision was the starting block for Neko to become everyone's fave virtual cat. The Neko screenmate travelled through many countries and computer systems in the decades since, from Japan to the West, from desktops to Discord. The first “made-for-websites” version of Neko was Webneko, launched in 2004 by Gregory Bell.
Since Oneko’s launch, it has appeared on hundreds of websites across the globe, with many variations. It’s not just a cat nowadays, sprites for Oneko including dogs, rats, skunks, raccoons, cartoon characters and people have been created, while others have changed the script to allow for different movements, sprite sizes and characters. The desktop pet has particularly become viral with indie website makers, including members of the LGBTQIA+ community and web developers looking for their first software job.
Oneko is very easy to implement in your website code and consists of a JavaScript file that powers the cat’s movements and ‘states’ and a 256 x 128-pixel spritesheet displaying the different positions the cat does. Not only can Oneko chase after your mouse just like its real-life cousins, it also scratches the edge of the screen, yawns, sleeps, itches itself and wakes up with a start.
For a more detailed understanding of Neko history, developments and how oneko.js fits into it, I really encourage you to read the Timeline page or visit the links on the Neko History and Info page.