Announcing Kitto²
Hi everybody, it’s your old friend OwlManAtt1 here with a major announcement about the future of Kitto, a basic virtual pet game (in the vein of neopets.com) built using the MVC pattern.
- Kitto² development began last month
- It will, at minimum, have the same features Kitto did
- It is a ground-up rewrite using PHP/Laravel
I’m not working to a deadline, so it’ll be ready when it’s done. You can keep up-to-date on progress through this news blog, the socials linked up top, or cut out the middleman entirely and go right to the Kitto² codeberg repository.
Why?
The original release of Kitto in 2007 was for a different era: PHP didn’t have an answer to Rails, no package manager existed2, everybody was on shared hosting, and Bootstrap was still four years away. Still, it was a nice piece of software for its time, and Kitto-based games remain extant in 20253.
It was useful, education, and hopefully inspiring to folks who wanted to get into webdev.
I’m happy that people used it. But people continue to think about Kitto as a viable option for their new projects here in 2025. It’s not a good idea to run versions of Smarty and HTMLPurifier from 2009 on the internet.
What will it look like?
The final feature list for Kitto² is up in the air.
At minimum, I want to offer the same things the original did: user management, social stuff, pets, inventory management, and NPC shops. There are some improvements I want to make on the staff side: more audit logs and more robust trust-n-safety tools. And it’ll probably include user shops.
But the purpose of Kitto is to be a template, for people to start developing their own game. Every bit of “game” that it comes with is something that may conflict with the game that you, my user, wants to build.
Of course, on the other hand, Mysidia Adoptables seems to offer quite a lot more than Kitto. Devs & players alike seem to enjoy it?
If you have thoughts on this, get in touch. For the time being, there’s plenty to do.
Using Kitto²
A key part of the v1.0 release will be completing the documentation. I want Kitto² to be accessible to as many people as possible, including folks using it for their very first webdev project, so it will cover things like local development, selecting a host, and installing it in different environments.
While individual developers can put in Redis or real-time broadcasts with Reverb, Kitto² will remain compatible with shared hosting out-of-the-box. The basic tech stack is:
- PHP 8.x
- Laravel
- Compatible with PostgreSQL, MySQL/MariaDB, or SQL Server
The frontend will use Bootstrap and AlpineJS. There will be a “compiled” installation package available that includes all the PHP dependencies (vendor/
) and CSS/JavaScript compiled and minified to make it easy for deployment to shared hosting.
There will be guides available for adding new types of items, explanations on how to expand the admin panel4, and that sort of thing.
Once set up, I want to make sure people can get on with the business of game development, instead of being stuck trying to figure out how to get Kitto to do what they need.
Help Wanted: Art Assets
To properly showcase the software, Kitto² comes with a demo configuration complete with enough pets and items to see every feature.
There are already a couple new features present that should have artwork, so I am looking for an artist who can either:
- Roughly match the style of Tigress’ original demo assets; or
- Redo the whole set of Kitto artwork in their own style
In keeping with the free nature of Kitto, the artwork would need to be licensed under CC BY-SA 4.0 (or similar).
If you’d be interested in doing this, please get in touch!
Footnotes
-
But it’s just ‘owls’ now. Four letters, all lower case. Or owls of the godless internets, if you want to be very formal. soc I’ve got a lot of words to say, but to get right to the point: ↩
-
Okay, PEAR existed, but nobody thinks of that as the same type of tool as composer, bundle, or npm. ↩
-
I love seeing what folks have done with it, so if you know any other active Kitto sites, please let me know! ↩
-
Likely based on Filament. ↩