Join the team!

Kin is a volunteer project developing a white-label social-media solution for larps. The software is built from the ground up based on 6 years of development, including one major refactoring weeding out old mistakes and creating a robust, future-proof SaaS solution for larpwrights and players.

Kin can use all the help it can get. And the project is of such a scope that nearly anyone should be able to help. In order to do so, I am going to outline the products that make up the platform.

All work is unpaid and entirely volunteer-based, and that goes for everyone. So, given that, what do you get from volunteering?

  • Full credit for any and all work you do on the project. Check out the Credits page for more.
  • Experience developing and running a bootstrapped SaaS platform for a very passionate global community.
  • Hone your non-technical skills; estimation, deliveries and more are crucial in a volunteer-based project and you can expect to learn as much about yourself as a developer as you can about the systems we’ll be creating.
  • Learn and expand your technical skills and abilities; Kin is a full-stack platform so there is plenty of opportunities to contribute.
  • Take ownership and along with BDFL Thomas Mertz guide a product from concept to launch.

Here are a few suggestions …

  • Rework either myKin or the Game Client as a JS client.
  • Expand Ratatosk to support real-time private messaging and/or notifications.
  • Create a desktop application that connects to the API.
  • Expand the API to include more SoMe functionality; such as the Friends API or Relationship API.
  • See more on our roadmap for ideas.

Frontend

myKin

myKin is the account management client for Kin. It’s where players join games and manage their characters. It is also where organisers and GM’s manage their games.
The client authenticates using JWT and is written in PHP (not ideal, but things had to happen fast).
To work on myKin you should be proficient in the following:

  • Working knowledge of Vagrant; we use Vagrant for our dev environments.
  • PHP 7.2+
  • jQuery
  • Bootstrap 4.5+
  • Gulp build tooling

Game Client

Every single Kin instance is accessed through this client. This is also written in PHP (again, not optimal). Ideally, this should be rewritten in some sort of frontend-only Javascript framework.

  • Working knowledge of Vagrant; we use Vagrant for our dev environments.
  • PHP 7.2+
  • jQuery
  • Bootstrap 4.5+
  • Gulp build tooling

Backend

API

The API is the backbone of the platform and handles all the data storage and logic for just about anything that happens on Kin. To work on the API you should possess the following:

  • Working knowledge of Vagrant; we use Vagrant for our dev environments.
  • A solid understanding of PHP 7.2+
  • Slim Framework 4; Slim is the framework we use to create the API
  • Knowledge of JWT and how to effectively make use of them
  • Intimate understanding of MySQL; the API makes use of some truly complex database calls and knowing what’s what is absolutely imperative.

Ratatosk

Ratatosk is the real-time message handler. Currently, it only handles the Text Roleplay module, but over time it should be expanded to also manage Notifications and Private Messaging.

  • Working knowledge of Websockets
  • Experience working with stateless development
  • Experience working with Ratchet

Common across all products

  • We follow the WordPress Coding Standards as much as possible.
  • All code is stored in Git, and follow Github Flow.
  • Documentation is a requirement as ownership is fluid and the platform is fairly complex.
  • You won’t be thrown into the deep end. There is always time to discuss ideas, progress and new features.

Expectations and Scope

It is important to underline that it is not expected for a person to work on all the products in the platform. Ideally you should find one or two that you can deep dive into.

It is expected, however, that you are a self starter, motivated and that you are a strong proactive communicator. You will be given plenty of ownership, but that just makes it all the more important that you are able to communicate and deliver reliably.

Who is behind Kin?

Kin is run under the BDFL model of stewardship of Thomas Mertz. Thomas started the project six years ago as a ramp-up for the first College of Wizardry game. Since then the project has grown and has been used by several thousand larpers worldwide.

Kin is opinionated software, and its objective is to create playability, not simulate real life.