summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Paul <n@nc0.fr>2024-03-07 10:49:58 +0100
committerNicolas Paul <n@nc0.fr>2024-03-08 23:12:55 +0100
commit34995af183d013443fe4a7153774cb452b5cc334 (patch)
tree332f065f78164beeee5f3039b3bb82ab0b523d2c
parent4ab2e7c2d9c7e0ebeac69796dc78c55020a8a664 (diff)
game: Initialize NPM package
The //life2/game directory hosts a JavaScript implementation of the Life2 game, which will be distributed via the NPM package manager at @life2/game. Signed-off-by: Nicolas Paul <n@nc0.fr>
-rw-r--r--life2/game/README.md41
-rw-r--r--life2/game/package.json34
2 files changed, 75 insertions, 0 deletions
diff --git a/life2/game/README.md b/life2/game/README.md
new file mode 100644
index 0000000..ae322b8
--- /dev/null
+++ b/life2/game/README.md
@@ -0,0 +1,41 @@
+# `@life2/game`
+
+[`@life2/game`][pkg] is a JavaScript implementation of the Life2 simulation
+game made to work on V8-compatible runtime, including [Node.js][nodejs],
+[Bun][bun], and standard Web browsers.
+
+The Life2 simulation game is a cellular automaton software following the same
+aspect as the traditional [Conway's Game of Life][gol], except it separates
+cells in two teams (so called "groups" or "societies").
+The principal objectives behind Life2 is to analyze the behavior of societies
+given the rules we defined for them: *how does members of a same society
+interact with each other (growth, death, ...)?* *How do two society can live
+together when they are different and live in a world where the rules encourage
+one to takeover the other?*
+
+[pkg]: https://www.npmjs.com/package/@life2/game
+[nodejs]: https://nodejs.org/
+[bun]: https://bun.sh
+[gol]: https://en.wikipedia.org/wiki/Conway's_Game_of_Life
+
+## Installation
+
+The package is distributed via the [NPM][npm] registry:
+
+```shell
+# With NPM
+npm install -E @life2/game
+
+# With Yarn
+yarn add -E @life2/game
+```
+
+[npm]: https://npmjs.com
+
+## Usage
+
+TODO(nc0): write package a provide a simple usage example there
+
+## Documentation
+
+TODO(nc0): write documentation and link it there
diff --git a/life2/game/package.json b/life2/game/package.json
new file mode 100644
index 0000000..e4d9e59
--- /dev/null
+++ b/life2/game/package.json
@@ -0,0 +1,34 @@
+{
+ "name": "@life2/game",
+ "version": "0.1.0",
+ "description": "Node.js implementation of the Life2 game.",
+ "keywords": [
+ "cellular",
+ "automaton",
+ "game",
+ "life"
+ ],
+ "homepage": "https://github.com/nc0fr/life2/tree/master/life2/game#readme",
+ "bugs": {
+ "url": "https://github.com/nc0fr/life2/issues",
+ "email": "n@nc0.fr"
+ },
+ "license": "Apache-2.0",
+ "author": "The Life2 Authors",
+ "contributors": [
+ "Nicolas Paul <n@nc0.fr> (https://nc0.fr)"
+ ],
+ "funding": {
+ "type": "individual",
+ "url": "https://github.com/sponsors/nc0fr"
+ },
+ "browser": true,
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/nc0fr/life2.git",
+ "directory": "life2/game"
+ },
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ }
+ }