From c393cefad7c3b9e5a82a9f1186b070572847c91d Mon Sep 17 00:00:00 2001 From: Jeremie Pardou-Piquemal <571533+jrmi@users.noreply.github.com> Date: Sat, 15 Jan 2022 22:25:29 +0100 Subject: [PATCH] Add documentation --- LICENSE | 21 +++ README.md | 108 ++--------- backend/.env.dist | 63 ++++--- backend/package-lock.json | 334 ++++++++++++----------------------- backend/package.json | 6 +- backend/public/config.json | 4 - backend/webpack.common.js | 14 +- docs/dev.md | 175 ++++++++++++++++++ docs/siteCreation.png | Bin 0 -> 67558 bytes docs/siteCreationEmail.png | Bin 0 -> 40770 bytes docs/siteCreationSuccess.png | Bin 0 -> 44174 bytes vite.config.js | 7 + 12 files changed, 382 insertions(+), 350 deletions(-) create mode 100644 LICENSE delete mode 100644 backend/public/config.json create mode 100644 docs/dev.md create mode 100644 docs/siteCreation.png create mode 100644 docs/siteCreationEmail.png create mode 100644 docs/siteCreationSuccess.png diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..4a1686b0 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Jérémie Pardou + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 1b689746..6cd9707e 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ do with a real table. You share a common space with other players like if you we If you move something or if you flip a card, other players see this action and can respond in real time. -Hint: you really should use an audio conference application to speak with other players. +Hint: you really should use an audio conference application to speak with other players. Airboardgame doesn't force you, you make the rules. Airboardgame is just a game table simulator : what you would do with a real @@ -61,14 +61,14 @@ Airboardgame is not only designed to play games but also to create them. In just few minutes you can create simple games without any development skills and play with your friends. -Wants to test a concept? Play a Print & Play game? Use airboardgame without -the need for more hardware. +You want to test a concept? Try a print & play game? You can use Airboardgame +without the need for more hardware. The only limit is your imagination. -To access this features, login then click on the « create new game » button on home page. +To access this features, login then click on the « Create new game » button on home page. -We want Airboardgame to be simple, intuitive and a consistent web application. +We want Airboardgame to be simple, intuitive web application. Just give a try and if you like it share it and contribute. You can create a game with simple actions : @@ -80,6 +80,7 @@ You can create a game with simple actions : * Note, * Counter, * Image that can represent cards, board, token, perks, … + * Pre-made items * … * Choose board size * Add available items not on the board but in the "game box" like extension or material for more user. @@ -90,95 +91,12 @@ You can drag'n'drop image from your desktop to the board to use them in Airboard * Open source web application, * Made with React and Socket.io, -* Use recoiljs as state management, -* Client to client driven architecture. - -## Installation instructions +* Use Recoiljs as state management, +* Client to client driven architecture, +* Use Ricochet.js as backend framework. -This is the procedure to install AirBoarGame application from scratch for -development purpose. -You need a recent node version. You can (and should) use [nvm](https://github.com/nvm-sh/nvm) -to initialize your environment. +## Developper documentation -### Backend - -First you need to install and start the server part of the application. -The server code use [Ricochet.js](https://github.com/jrmi/ricochet.js). A local -instance is installed and can be started but you can use your own instance. - -To proceed, execute: - -```sh -cd backend -npm ci -cp .env.dist .env -``` - -You have the opportunity to modify Ricochet.js configuration now by editing this -file. Default values should be fine for test but remember that data are only kept in -memory so you loose all your changes each time you restart the ricochet server -with this default. You also must to register again your site. -See [Ricochet.js](https://github.com/jrmi/ricochet.js) documentation for more -options and how to make data to persist. - -Now you can start the ricochet server: - -```sh -npm run ricochet -``` - -Then you must create the Airboardgame ricochet site by visiting your ricochet -server URL with a browser and fill the site creation form. Default Ricochet -server URL if you didn't modify configuration should be `http://localhost:4050/`. - -The only important value here is `site Id` that should have the `airboardgame` -value. - -Since the form is submitted, save the key from the server response and customize -`.env` file using this key to set the `RICOCHET_SITE_KEY`. - -Remember to confirm the site creation by clicking the link displayed in Ricochet.js -sever logs if you use the default configuration for SMTP. - -Now, you should start backend code modifications monitoring to generate -code executed by Ricochet.js in another terminal: - -```sh -npm run watch -``` - -you also need an instance of `wire.io` so in another terminal, execute: - -```sh -# /!\ Need npm >= v7 -PORT=4051 npx wire.io -``` - -See [wire.io](https://github.com/jrmi/wire.io) documentation for more information -on how to configure it. - -### Client - -In another terminal, go back to project root and execute: - -```sh -cd / -npm ci -cp .env.dist .env -``` - -Edit the `.env` file to fit your needs. Default should be fine if you didn't -modify server configuration. - -Then you can start the client: - -```sh -npm start -``` - -Now you should have four terminals: - -* the one with Ricochet.js server instance. Backend logs can be found here -* one terminal with auto build on change for backend files -* another with `wire.io` server running -* and a last one with React frontend server +* [Installation instructions](docs/dev.md) +* [Deploy your own instance](docs/dev.md) +* [Contributing guide](docs/dev.md) diff --git a/backend/.env.dist b/backend/.env.dist index 86de9c41..f39f047b 100644 --- a/backend/.env.dist +++ b/backend/.env.dist @@ -1,39 +1,62 @@ -# Secret key generated by Ricochet.js. This is the key issued when you created the site. -RICOCHET_SITE_KEY= - -# --- Ricochet configuration start here +# --- Ricochet configuration start here +# Ricochet server port and host +# Change this if you need external access SERVER_PORT=4050 SERVER_HOST=localhost -# memory, disk or s3 storage are available -FILE_STORAGE=memory +# Configure the JSON store backend +# Available backends: memory, nedb, mongodb +# Use nedb or mongodb for persistent storage +# Memory store is lost when the server is stopped +STORE_BACKEND=memory -# S3 storage configuration -S3_ACCESS_KEY= -S3_SECRET_KEY= -S3_ENDPOINT= -S3_BUCKET= +# Uncomment if you use the nedb store backend +#NEDB_BACKEND_DIRNAME=/path/to/data # Any path where Nedb databases will be stored -# Only for testing purpose -S3_BUCKET_TEST=test-bucket-001 +# Uncomment if you use the mongodb JSON store backend +#MONGODB_URI= +#MONGODB_DATABASE= -# memory or nedb store backend -STORE_BACKEND=memory +# Configure the file store backend +# Available backend: memory, disk or s3 +# Memory store is lost when the server is stopped +FILE_STORAGE=memory -NEDB_BACKEND_DIRNAME=/path/to/data # Any path where nedb databases will be kept +# Disk file storage configuration +# Uncomment for 'disk' file storage +#DISK_DESTINATION=/path/to/dir/ +# S3 storage configuration +# Uncomment the following lines if you want to use 's3' backend storage +#S3_ACCESS_KEY= +#S3_SECRET_KEY= +#S3_ENDPOINT= +#S3_BUCKET= +#S3_REGION= +#S3_PROXY= +#S3_CDN= +#S3_SIGNED_URL= + +# Should be a unique long key here RICOCHET_SECRET=YourSuperSecretHere # Smtp server configuration +# If you let the fake host, sent mails are displayed in the console. EMAIL_HOST=fake EMAIL_PORT= EMAIL_USER= EMAIL_PASSWORD= EMAIL_FROM= -# Webconference Openvidu configuration -# See https://docs.openvidu.io for more information +# --- Ricochet configuration ends here + +# Wire.io configuration + +WIREIO_PORT=4051 + +# Secret key generated by Ricochet.js when you've registered the site. +RICOCHET_SITE_KEY= -OPENVIDU_URL= -OPENVIDU_SECRET= +# To show better logs +USE_PINO=1 diff --git a/backend/package-lock.json b/backend/package-lock.json index 63343ce6..0f7a43f3 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -1150,30 +1150,26 @@ "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==", "dev": true }, - "@nodelib/fs.scandir": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", - "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.3", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", - "dev": true + "@seald-io/binary-search-tree": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@seald-io/binary-search-tree/-/binary-search-tree-1.0.2.tgz", + "integrity": "sha512-+pYGvPFAk7wUR+ONMOlc6A+LUN4kOCFwyPLjyaeS7wVibADPHWYJNYsNtyIAwjF1AXQkuaXElnIc4XjKt55QZA==" }, - "@nodelib/fs.walk": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", - "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", - "dev": true, + "@seald-io/nedb": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@seald-io/nedb/-/nedb-2.2.0.tgz", + "integrity": "sha512-whkcx3hpcowNhoSEbIsrfe8TXxDwyj8SJJut2EqF7DSX2GGqQlL7Ix/vzwwOo4FJolzDhZD2DaUTVKmTQS3Rog==", "requires": { - "@nodelib/fs.scandir": "2.1.3", - "fastq": "^1.6.0" + "@seald-io/binary-search-tree": "^1.0.2", + "async": "0.2.10", + "localforage": "^1.9.0" + }, + "dependencies": { + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + } } }, "@types/anymatch": { @@ -1943,6 +1939,15 @@ "file-uri-to-path": "1.0.0" } }, + "bl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", + "requires": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", @@ -2050,6 +2055,11 @@ "node-releases": "^1.1.71" } }, + "bson": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", + "integrity": "sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==" + }, "btoa": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", @@ -2521,64 +2531,6 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, - "copy-webpack-plugin": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-7.0.0.tgz", - "integrity": "sha512-SLjQNa5iE3BoCP76ESU9qYo9ZkEWtXoZxDurHoqPchAFRblJ9g96xTeC560UXBMre1Nx6ixIIUfiY3VcjpJw3g==", - "dev": true, - "requires": { - "fast-glob": "^3.2.4", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", - "normalize-path": "^3.0.0", - "p-limit": "^3.0.2", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1" - }, - "dependencies": { - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globby": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", - "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - } - }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, "core-js-compat": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.13.1.tgz", @@ -2637,8 +2589,7 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "cors": { "version": "2.8.5", @@ -2883,6 +2834,11 @@ "rimraf": "^2.6.3" } }, + "denque": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", + "integrity": "sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==" + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -2937,15 +2893,6 @@ } } }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", @@ -3436,74 +3383,6 @@ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "fast-glob": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz", - "integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -3551,15 +3430,6 @@ "integrity": "sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw==", "dev": true }, - "fastq": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.9.0.tgz", - "integrity": "sha512-i7FVWL8HhVY+CTkwFxkN2mk3h+787ixS5S63eb78diVRc1MCssarHq3W5cj0av7YDSwmaV928RNag+U1etRQ7w==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, "faye-websocket": { "version": "0.11.4", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", @@ -4064,11 +3934,10 @@ "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", "dev": true }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" }, "import-local": { "version": "3.0.2", @@ -4093,8 +3962,7 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "internal-ip": { "version": "4.3.0", @@ -4411,8 +4279,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", @@ -4512,6 +4379,14 @@ "invert-kv": "^1.0.0" } }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "requires": { + "immediate": "~3.0.5" + } + }, "load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", @@ -4561,6 +4436,14 @@ } } }, + "localforage": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/localforage/-/localforage-1.10.0.tgz", + "integrity": "sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg==", + "requires": { + "lie": "3.1.1" + } + }, "localtunnel": { "version": "1.9.2", "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.2.tgz", @@ -4782,6 +4665,12 @@ "readable-stream": "^2.0.1" } }, + "memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -4794,12 +4683,6 @@ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -4911,6 +4794,19 @@ "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", "dev": true }, + "mongodb": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.3.tgz", + "integrity": "sha512-Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==", + "requires": { + "bl": "^2.2.1", + "bson": "^1.1.4", + "denque": "^1.4.1", + "optional-require": "^1.1.8", + "safe-buffer": "^5.1.2", + "saslprep": "^1.0.0" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -5254,6 +5150,14 @@ "is-wsl": "^1.1.0" } }, + "optional-require": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz", + "integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==", + "requires": { + "require-at": "^1.0.6" + } + }, "original": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", @@ -5397,18 +5301,6 @@ "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", "dev": true }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true - }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -5582,8 +5474,7 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "proxy-addr": { "version": "2.0.6", @@ -5741,7 +5632,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -5755,8 +5645,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" } } }, @@ -5908,6 +5797,11 @@ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", "dev": true }, + "require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==" + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -5969,12 +5863,6 @@ "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", "dev": true }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, "ricochetjs": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/ricochetjs/-/ricochetjs-1.3.1.tgz", @@ -6146,8 +6034,7 @@ "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-regex": { "version": "1.1.0", @@ -6164,6 +6051,15 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "requires": { + "sparse-bitfield": "^3.0.3" + } + }, "sax": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", @@ -6390,12 +6286,6 @@ "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", "dev": true }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", @@ -6662,6 +6552,15 @@ "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, + "sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "optional": true, + "requires": { + "memory-pager": "^1.0.2" + } + }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -6836,7 +6735,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" }, @@ -6844,8 +6742,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" } } }, @@ -7172,8 +7069,7 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "utils-merge": { "version": "1.0.1", diff --git a/backend/package.json b/backend/package.json index 3f6eb84d..df7516ff 100644 --- a/backend/package.json +++ b/backend/package.json @@ -10,7 +10,8 @@ "dev": "npm run serve", "tunnel": "webpack serve --config webpack.tunnel.js", "build": "webpack --config webpack.production.js", - "ricochet": "USE_PINO=1 ricochetjs | pino-tiny" + "ricochetjs": "ricochetjs | pino-tiny", + "ricochet": "npm run ricochetjs" }, "author": "", "license": "ISC", @@ -19,7 +20,6 @@ "@babel/preset-env": "^7.14.4", "babel-loader": "^8.2.2", "clean-webpack-plugin": "^3.0.0", - "copy-webpack-plugin": "^7.0.0", "dotenv-webpack": "^7.0.2", "localtunnel-webpack-plugin": "^1.0.0", "pino-tiny": "^1.1.2", @@ -30,8 +30,10 @@ "webpack-dev-server": "^3.11.2" }, "dependencies": { + "@seald-io/nedb": "^2.2.0", "btoa": "^1.2.1", "dotenv": "^8.2.0", + "mongodb": "^3.7.3", "node-fetch": "^2.6.1" } } diff --git a/backend/public/config.json b/backend/public/config.json deleted file mode 100644 index a0d7f600..00000000 --- a/backend/public/config.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "siteId": "airboardgame", - "scriptBase": "/" -} \ No newline at end of file diff --git a/backend/webpack.common.js b/backend/webpack.common.js index 1be85ded..7afc53cc 100644 --- a/backend/webpack.common.js +++ b/backend/webpack.common.js @@ -4,12 +4,14 @@ require("dotenv").config({ }); const EncryptPlugin = require("ricochetjs").EncryptPlugin; const Dotenv = require("dotenv-webpack"); -const CopyPlugin = require("copy-webpack-plugin"); const SECRET_KEY = process.env.RICOCHET_SITE_KEY; if (!SECRET_KEY) { - console.log("You must define a RICOCHET_SITE_KEY env variable"); + console.log( + "You must define a RICOCHET_SITE_KEY env variable.\n" + + "If you don't have any key, please visit the Ricochet.js admin panel to create one." + ); process.exit(-1); } @@ -26,14 +28,6 @@ module.exports = { }, plugins: [ new Dotenv(), - new CopyPlugin({ - patterns: [ - { - from: "**/*", - context: path.resolve(__dirname, "public"), - }, - ], - }), new EncryptPlugin({ key: SECRET_KEY, }), diff --git a/docs/dev.md b/docs/dev.md new file mode 100644 index 00000000..2e2f6ed1 --- /dev/null +++ b/docs/dev.md @@ -0,0 +1,175 @@ +# Developper documentation + +Developper documentation is currently poor but don't hesitate to help writing it. + +# Installation instructions + +This is the procedure to install AirBoarGame application from scratch for +development purpose. +You need a recent node version. You can (and should) use [nvm](https://github.com/nvm-sh/nvm) +to initialize your environment. + +## Backend - start and configure Ricochet.js server + +First, you need an up and running instance of [Ricochet.js](https://github.com/jrmi/ricochet.js) +server. You can create yours by following the instructions in this section or you can +use any existing instance. + +To start a local instance, execute: + +```sh +cd backend +npm ci # install dependencies +cp .env.dist .env +``` + +Now, you have the opportunity to customize Ricochet.js configuration by editing the +`.env` file. Default values should be fine for quick testing purpose but remember +that data are only stored in memory so you'll loose +all your changes each time you stop the ricochet.js server with these defaults. + +Don't try to fill the `RICOCHET_SITE_KEY` already because you need to register the +Airboardgame site before but you might want to change the `STORE_BACKEND` +and `FILE_STORE` here to persist data. + +Here's an exemple of configuration to persist data locally: + +```sh +FILE_STORAGE=disk +DISK_DESTINATION=/path/to/directory/ + +STORE_BACKEND=nedb +NEDB_BACKEND_DIRNAME=/path/to/nedb/database +``` + +See [Ricochet.js](https://github.com/jrmi/ricochet.js) documentation for more +options. + +Now you can start the ricochet.js server: + +```sh +npm run ricochetjs +``` + +Then create the Airboardgame Ricochet site by visiting your ricochet.js +server URL with a browser and fill the site creation form. Default Ricochet +server URL, if you haven't modified the configuration should be `http://localhost:4050/`. + +This is a 3 step process: + +1) Fill the site creation form with valid data +2) Validate the form and save the secret site key for later use +3) Visit the confirmation link to activate the site + +### Step 1 - Fill the site creation form + +The only important value here is `Site id` that should have the `airboardgame` +value. + +Here's an example: + +![form](./siteCreation.png) + +### Step 2 - Validate the form and save the site secret key + +Submit the form by clicking the *create site* button. + +![form](./siteCreationSuccess.png) + +Since the form is submitted, save the displayed key and customize +`.env` file using this key to set the `RICOCHET_SITE_KEY`. + +### Step 3 - Activate the site by clicking the confirmation link + +Remember to confirm the site creation by clicking the link sent by Ricochet.js to +the owner email. If your are using a local instance of ricochet with the `fake` +server email (should be the default configuration) the mail is displayed in the +ricochet.js console. + +![email](./siteCreationEmail.png) + +Otherwise ensure you have given a valid email address and +check the spam if you don't receive the email. + +## Backend - Generate backend code + +Now, you should start backend code modifications monitoring to generate +code executed by Ricochet.js in another terminal: + +```sh +npm run watch +``` + +You also can generate the backend code once by executing: + +```sh +npm run build +``` + +These two commands generate the `public/ricochet.json` file that is executed +on Ricochet.js server. This is the actual Airboargame specific backend code. + +## Backend - Start wire.io socket.io server relay + +To allow real time communication between client, you also need to start an +instance of [wire.io](https://github.com/jrmi/wire.io) in another terminal. + +To proceed execute in the `backend/` directory: + +```sh +# /!\ Need npm >= v7 +npx wire.io@latest +``` + +See [wire.io](https://github.com/jrmi/wire.io) documentation for more information +on how to configure it if you need more options. + +## Client + +In another terminal, go back to project root and execute: + +```sh +cd / +npm ci +cp .env.dist .env +``` + +Customize the `.env` file. Default should be fine if you haven't modified +server configuration host and port. + +Then you can start the client: + +```sh +npm start +``` + +The last command should open the frontend URL in your browser. + +Now you should have four terminals: + +* one with the Ricochet.js server. Backend logs can be found here. +* one terminal with auto build on change for airboardgame backend files +* another with a `wire.io` server running +* and a last one with web-frontend server + +# Deploy a production instance + +Section in progress... + +To deploy an instance in production you need to deploy the same stack as in dev. + +* You need a Ricochet.js instance. +* You need a Wire.io instance. +* Build the backend `ricochet.json` file. +* Build the frontend and deploy it to a CDN. + +# Contributing guide + +Section in progress... + +## Z-index stack + +* 250 -> 299 : Top UI element like modals, Color selector, ... +* 200 -> 249 : over items like navbar, side panels, selector, cookie notice, bottom button bar... +* 100 -> 199 : items zone. All items on the board have these values +* 0 -> 99 : underlay like board, background, ... diff --git a/docs/siteCreation.png b/docs/siteCreation.png new file mode 100644 index 0000000000000000000000000000000000000000..2acd4d2332fed0235536ce021be5841d564b120e GIT binary patch literal 67558 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�VnWOWnvKW3oH0 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 Ak^lez literal 0 HcmV?d00001 diff --git a/docs/siteCreationEmail.png b/docs/siteCreationEmail.png new file mode 100644 index 0000000000000000000000000000000000000000..25c5fe4d52e0f15c70751724d751644ecfa256b4 GIT binary patch literal 40770 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 R{AgE)lANk+nY3B(e*tfcNb>*y literal 0 HcmV?d00001 diff --git a/docs/siteCreationSuccess.png b/docs/siteCreationSuccess.png new file mode 100644 index 0000000000000000000000000000000000000000..36b4d8c9d4183de471f3bc8adb68eda18648e366 GIT binary patch literal 44174 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 UbQBxO5a5rbsGLaoCw<@l2QJnUwg3PC literal 0 HcmV?d00001 diff --git a/vite.config.js b/vite.config.js index 75f9871e..93aeb385 100644 --- a/vite.config.js +++ b/vite.config.js @@ -38,6 +38,13 @@ const checkDeprecatedVars = () => { checkDeprecatedVars(); +if (!siteId) { + console.log( + "ERR! You must define a VITE_RICOCHET_SITEID environment variable." + ); + process.exit(1); +} + let proxy = {}; if (useProxy) {