npm.io
14.1.1 • Published 3 weeks ago

@furystack/websocket-api

Licence
GPL-2.0
Version
14.1.1
Deps
5
Size
112 kB
Vulns
0
Weekly
0
Stars
5

furystack

Unit tests UI tests

FuryStack is a flexible, end-to-end framework that allows you to build complex services quickly and easily.

  • Written in TypeScript. The public APIs are clean and readable.
  • The core is built on top of native Node.js calls. Dependencies are carefully selected.
  • You can create a backend in minutes with authentication, data stores, custom actions, and 3rd-party packages. You don't have to waste time searching for packages for entry-level functionality.
  • You can implement and use your own custom actions, WebSocket calls, data stores, or loggers easily.
  • Custom front-end library with type-safe JSX syntax and unidirectional data binding.
  • The same concepts and design principles are shared between the frontend and backend. DI, logging, disposables, etc. work in the same way—and from the same package.

Getting Started

Install any FuryStack package using npm or yarn:

# Using npm
npm install @furystack/core @furystack/inject

# Using yarn
yarn add @furystack/core @furystack/inject

Check out the boilerplate repository for a working example with both backend and frontend setup.

Packages

Core
Package Version Description
@furystack/core npm Physical stores, defineStore, identity context, system-identity helpers
@furystack/inject npm Functional dependency injection (defineService, Injector, tokens)
@furystack/utils npm Utilities: Disposables, ObservableValue, Retrier, Trace
@furystack/logging npm Logging with scopes, levels, and custom loggers
@furystack/cache npm In-memory caching with expiration and capacity limits
Data Storage
Package Version Description
@furystack/repository npm Repository pattern with DataSets, authorization, and event callbacks
@furystack/filesystem-store npm File-based store for development and testing
@furystack/mongodb-store npm MongoDB document store implementation
@furystack/redis-store npm Redis key-value store implementation
@furystack/sequelize-store npm SQL databases via Sequelize ORM
REST API
Package Version Description
@furystack/rest npm REST API type definitions and contracts
@furystack/rest-service npm Server implementation with authentication, static files, and proxying
@furystack/rest-client-fetch npm Browser client using native fetch
@furystack/websocket-api npm WebSocket support for real-time communication
Security and Authentication
Package Version Description
@furystack/security npm Password management and authorization utilities
@furystack/auth-google npm Google OAuth integration
Internationalization
Package Version Description
@furystack/i18n npm Core i18n and translation management
@furystack/shades-i18n npm I18n components for Shades UI
UI Framework (Shades)
Package Version Description
@furystack/shades npm JSX-based UI library with unidirectional data binding
@furystack/shades-common-components npm Reusable components and CSS-variable theming system
@furystack/shades-mfe npm Micro-frontend support
@furystack/shades-lottie npm Lottie animation wrapper
@furystack/shades-nipple npm NippleJS joystick wrapper
@furystack/shades-showcase-app npm Demo application
Tooling
Package Version Description
@furystack/yarn-plugin-changelog npm Changelog generation from version manifests

Contributing

Contributions are welcome! This is a monorepo managed with Yarn workspaces.

# Clone the repository
git clone https://github.com/furystack/furystack.git
cd furystack

# Install dependencies
yarn install

# Build all packages
yarn build

# Run tests
yarn test

License

This project is licensed under the GPL-2.0 License.

Keywords