Commit Graph

15 Commits

Author SHA1 Message Date
David Négrier
a373626e24 Removing all "any" from back.
To do this, I used generic-type-guard package which generates both an interface AND a valid type guard from code.
With this, we are 100% sure that the messages we receive are validated at runtime!
The client cannot pass us an object that is invalid! \o/
2020-06-09 23:07:19 +02:00
David Négrier
c70da31e23
Merge pull request from thecodingmachine/change_license
Changing license to AGPL + Commons Clause
2020-06-09 12:30:16 +02:00
David Négrier
a15d74e6ce
Adding ARP as contributor 2020-06-09 12:13:51 +02:00
David Négrier
af6924a27c Adding Prometheus metrics
This commit adds a '/metrics' endpoint in the API that can be exploited by Prometheus.

This endpoint returns:

- the number of connected sockets
- the number of users per room
- common NodeJS and system metrics

WARNING: this endpoint is public right now and should be protected
2020-06-09 11:49:23 +02:00
David Négrier
91ce318848 Changing license to AGPL + Commons Clause
This is an important change.
So far, the project was labelled as licensed under the "AGPL" (improperly since no version of the AGPL was specified)

This commit changes the license to "AGPL + Commons Clause"

The [common clause](https://commonsclause.com/) is an additional restriction forbidding companies from taking WorkAdventure of the shelf, and reselling WorkAdventure.

This license does not forbid anyone from installing and using WorkAdventure, it only targets resellers (so SAAS exploitation of WorkAdventure is limited to TheCodingMachine).

This effectively makes WorkAdventure non open-source, but the source-code remains available for anyone to see and modify.
2020-06-09 10:17:21 +02:00
David Négrier
c73fc30802 Adding a Yarn command to profile 2020-06-03 09:18:49 +02:00
David Négrier
66ec11176b Tracking nb users connected and server load
When a user connects or disconnects on the server, we log this (along the current server load).
This is only temporary, in order to assess the number of users a server can safely handle before crashing.
2020-05-28 22:00:56 +02:00
David Négrier
d72741ce0c Fixing linting 2020-05-01 23:48:30 +02:00
David Négrier
9d2f96b348 Manually fixing a weird lint bug in eslint 2020-04-28 22:40:54 +02:00
gparant
d257b2b944 Multi players on the map
- Fix share user position
 - Fix initialise map
 - Create function to add user on the map with back end data
2020-04-10 12:54:05 +02:00
kharhamel
ded19549c7 added jasmine in the back 2020-04-06 15:48:19 +02:00
gparant
53e1600e67 Add authenticate
- Create new controller authenticate with login root..
 - Update and manage error message socket io.
 - Create enum for environment variables
2020-04-04 17:22:02 +02:00
gparant
ba47d8b1d4 Setup web-socket connection
- Add authentification socket.io with jwt token
2020-04-04 14:05:18 +02:00
gparant
63dc515c5b Add Vagarnt in project RADME and fix feeback @moufmouf 2020-04-04 11:36:18 +02:00
gparant
ba335aa33d Create backend
- NodeJs
 - Express
 - Socket.io
 - Eslint
 - TypeScript
2020-04-04 04:08:12 +02:00