Commit graph

21 commits

Author SHA1 Message Date
David Négrier d7209d8864 Migrating messages locally into back and front 2020-09-24 11:16:08 +02:00
David Négrier 32f92d5c45 Switching test loading from Artillery to home-grown test 2020-09-18 17:01:45 +02:00
David Négrier 28dc3a2c84 Removing protobuf packages from back 2020-09-18 16:05:52 +02:00
David Négrier 4b55b54a07 Adding first protobuf message exchange 2020-09-17 17:14:47 +02:00
David Négrier 9dd3d4bac8 Watching protoc in dev mode 2020-09-16 22:27:37 +02:00
David Négrier 2e8fa8d676 Adding protocol buffers to the project with Typescript support 2020-09-16 18:34:24 +02:00
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 #163 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