dred

所属分类:Redis
开发工具:TypeScript
文件大小:0KB
下载次数:0
上传日期:2023-08-17 23:40:47
上 传 者sh-1993
说明:  去中心化REDis状态通道,
(Decentralized REDis state channels,)

文件列表:
.editorconfig (145, 2023-08-17)
.nvmrc (3, 2023-08-17)
Dockerfile (928, 2023-08-17)
bin/ (0, 2023-08-17)
bin/dredServer (627, 2023-08-17)
bin/pid1 (390824, 2023-08-17)
config/ (0, 2023-08-17)
config/.env.test (98, 2023-08-17)
config/keys/ (0, 2023-08-17)
docker-compose.yml (304, 2023-08-17)
docker-entrypoint.sh (124, 2023-08-17)
docs/ (0, 2023-08-17)
docs/.env.example (146, 2023-08-17)
docs/.eslintrc.json (40, 2023-08-17)
docs/jsconfig.json (95, 2023-08-17)
docs/markdoc/ (0, 2023-08-17)
docs/markdoc/nodes.js (461, 2023-08-17)
docs/markdoc/tags.js (1041, 2023-08-17)
docs/next.config.js (434, 2023-08-17)
docs/package.json (934, 2023-08-17)
docs/postcss.config.js (195, 2023-08-17)
docs/prettier.config.js (110, 2023-08-17)
docs/public/ (0, 2023-08-17)
docs/public/attachments/ (0, 2023-08-17)
docs/public/attachments/dred-demo-application-screenshot-20230419.png (769485, 2023-08-17)
docs/public/favicon.ico (15406, 2023-08-17)
docs/public/fonts/ (0, 2023-08-17)
docs/public/fonts/Inter-italic.var.woff2 (245036, 2023-08-17)
docs/public/fonts/Inter-roman.var.woff2 (227180, 2023-08-17)
docs/public/fonts/lexend.txt (4435, 2023-08-17)
docs/public/fonts/lexend.woff2 (71760, 2023-08-17)
docs/src/ (0, 2023-08-17)
docs/src/components/ (0, 2023-08-17)
docs/src/components/Button.jsx (801, 2023-08-17)
... ...

# dred ## Decentralized Redis State Channels Objective: support a network of nodes sharing many event channels where clients can connect (to any node in the network) and share an event stream with other clients having joined the same channel. ## Status In development. This code has not been audited for security. ## Setup for Development The following details should only need to be set up once. If you've already done these, skip right to Development ### Docker Docker is needed for running Redis. Make sure you have a working `docker` before continuing. ### NVM and Node 18 This software works with node version 18. We use `nvm` as an easy way to ensure that version number. Make sure `nvm` is installed and working on your machine before continuing. `nvm use` should reflect version 18. ### Package Manager(s) We use `pnpm` as our preferred package manager. if `pnpm -v` doesn't indicate it's installed, run `npm i -g pnpm`. We have one dependency that prefers to build using yarn. Run `npm i -g yarn`. ### Docker container for Redis With those dependencies installed properly, run `scripts/setupEnvironment`. This script will create and run a Redis service in a docker container, suitable for demo and development. Note that it will create a data directory for Redis, in `../dredDb`. ### One-time build of dredServer With those dependencies installed properly, run `pnpm build`. ## Development Ensure you've done the prior Setup steps once first. ### Run in NVM Make sure you're running with the right version of Nodejs. `nvm use` should do the trick. ### Run all the services `pnpm dev` will run all of the following services: * Build-watcher for the Client package * Build-watcher for the Server package * Nodemon-based runner for the Server on port 3029 * A sample application "Dred Communicator" in `sampleApp` on port 3030 * Docs server (a Nextjs app in `docs/`) on port 3034 The two UI servers should display links in your terminal. ## Running Tests When running tests, sample servers are created on port 3032 and 3033. If you see any errors relating to these port numbers, please ensure that there are no conflicting processes running on your machine (including port 3030, due to port-finding fallback behavor by the sample app). ### Run tests once `pnpm test` ### Running Tests continuously `pnpm testing` runs tests and re-runs every time files are changed ### Debugging tests `pnpm test:debug` runs tests once with the debugger listener - or - `pnpm testing:debug` for continuous debugging with debugger Configure chrome://inspect to listen on port 9230 and on the same screen, use Dedicated DevTools for Node. ## License TODO: dual-licensing, with non-commercial use under terms of a suitable source-available license, with commercial use constrained to paying customers. Some code in this package is forked from @hearit-io/redis-channels and modified under the terms of its MIT license. Accordingly, THOSE code modifications are licensed under the same MIT licensing terms. See src/redis/streams/LICENSE. ## Support Support is provided on a best-effort, collaborative basis.

近期下载者

相关文件


收藏者