Current gen version of Kirupaville - a collection of user generated content brought together in a cohesive community.
- Kirupaville One Online: https://kirupa-racquet-club.github.io/kville-one/
In the past, Kirupaville was a pixel city. More information about development and future direction of Kirupaville One will be available in the forums.
Kirupaville is a collection of plots. Each user in the Kirupaville community gets his/her own plot to cultivate. To get your own plot simply fork this repo under your own github account. That's it! Simply by creating a fork, your plot will automatically be recognized and get displayed in the main community page!†
Once you've created a fork, you can customize your plot by editing the /src/plot/index.worker.js
file. This JavaScript file (run as a web worker) represents the interface to your plot in Kirupaville. It will be passed messages through the onmessage
handler function which can be responded to by calling the postMessage
function.
Right now the interface for message posting is under development, but expect more to come soon!
† Note: depending on github's policy for github pages generation, you may need to make an edit to your forked repo before it appears in the community as the community pulls from the hosted gh pages location (<username>.github.io/<reponame>
).
All incoming messages to plot workers from the community arrive as JSON objects assigned to the data
property of the received event. These objects have at least a type
property describing what it is 0 or more additional properties based on the value of type.
data:Object
parameter | type | attributes |
---|---|---|
type | string | required |
Each type of message may have properties in addition to type
associated with it.
A simple, nondescript message to request a response from the plot. Currently this will be sent when the plot is clicked on but does not specifically represent a click event.
parameter | type | attributes |
---|---|---|
value | number | required |
- value: An incrementing integer indicating the number of times the ping message has been sent.
Example
{ "type": "ping", "value": 1 }