Logux is a new way to connect client and server. Instead of sending HTTP requests (e.g., AJAX and GraphQL) it synchronizes log of operations between client, server, and other clients.
- Guide, recipes, and API
- Issues and roadmap
- Projects inside Logux ecosystem
This repository contains test Logux Back-end Protocol implementation.
-
Install Node.js 10 or later.
-
Create a folder inside your project. For instance,
test/
. -
Create
package.json
in that folder:{ "private": true }
-
Install this package calling the command in test folder:
npm -i @logux/backend-test
-
Create test back-end server and implement
local.js
behaviour:- Server subprotocol
1.0.0
. - Supports client’s subprotocols
^1.0.0
. - Throws an error during the authentication on
headers.errorText
. - Authenticates users with token
USER_ID:good
or with cookietoken=USER_ID:good
. - Allows users to subscribe to their own
users/USER_ID
channel. - Throws an error during the subscription on
headers.errorText
. - During the subscription to
users/USER_ID
channel sends{ type: "users/name", payload: { userId, name } }
action with the latest user’s name. - Re-sends
users/name
action tousers/USER_ID
channel. - Throws an error during the action access check on
headers.errorText
. - Saves new user’s name on
users/name
only on bigger action time. - Throws an error on
error
action. - On
users/clean
action set all names to""
and sendsusers/name
action with new name to all clients.
- Server subprotocol
-
Start your back-end server.
-
Call
npx @logux/backend-test
with URL to your back-end server.npx @logux/backend-test http://localhost:3000/logux