Felicitas – Release 0.1.0.2

Felicitas is a WebSocket‑based real‑time communication framework for Python.
It provides file distribution, message routing, multi‑client synchronization, and a set of reliability and monitoring features designed for distributed systems.

Installation

pip install felicitas

Source Code and Documentation

Current Features in Version 0.1.0.2

Below is the complete list of features that are implemented and functional in this release.

1. WebSocket Communication

  • Asynchronous WebSocket server and client
  • Full duplex communication
  • Broadcast, direct messaging, and group‑based routing
  • Heartbeat and keepalive mechanisms
  • Automatic reconnection with backoff
  • Connection state tracking
  • Graceful shutdown handling

2. File Transfer and Synchronization

  • Chunked file transfer (supports large files)
  • SHA256‑based deduplication
  • Delta synchronization (only changed file segments are transmitted)
  • File versioning
  • Recursive directory transfer
  • File filtering (extension, size, pattern)
  • Automatic organization of received files
  • TTL‑based cleanup of old files
  • Per‑client storage quotas

3. Messaging System

  • Persistent message queue (SQLite backend)
  • ACK/NACK support
  • Offline buffering and replay
  • Message TTL
  • Topic‑based publish/subscribe
  • Wildcard topic subscriptions
  • Topic‑level access control
  • RPC‑style request/response with timeouts

4. Security

  • API key authentication
  • JWT authentication
  • Role‑based access control (RBAC)
  • TLS (wss://) support
  • AES‑256 file encryption
  • Per‑file encryption keys

5. Client Management

  • Client identity and metadata
  • Online/offline presence tracking
  • Client capability advertisement
  • Connection state management
  • Load‑aware reconnection and pooling

6. Monitoring and Logging

  • Structured JSON logging
  • Debug tracing mode
  • Connection lifecycle logging
  • File transfer progress logging
  • Metrics for:
  • Message throughput
  • File transfer speed
  • Connection duration
  • CPU and memory usage

7. Scalability and Persistence

  • Multi‑server clustering
  • Client load distribution
  • Failover support
  • Session migration
  • SQLite‑based persistent state
  • Message history storage
  • Client connection history

8. Integrations and Tools

  • FastAPI integration
  • Flask integration
  • Django integration
  • REST API for server control
  • Auto‑generated OpenAPI/Swagger documentation
  • Interactive API explorer
  • Command‑line tools for:
  • Server management
  • File upload/download
  • Diagnostics
  • Client testing

9. Benchmarking

  • Built‑in performance benchmark suite
  • Throughput and latency tests
  • File transfer benchmarks
  • CPU and memory usage analysis
  • Comparison with Raw WebSockets and Socket.IO

Performance diagrams

Diagrams

Felicitas v0.1.0.2 already provides:

  • A complete real‑time messaging system
  • A robust file synchronization engine
  • Strong security features
  • Monitoring and observability tools
  • Multi‑server clustering and persistence
  • Framework integrations and CLI utilities
  • A full benchmark suite demonstrating competitive performance

This makes Felicitas suitable for distributed applications requiring reliable real‑time communication and efficient file synchronization

Kommentar verfassen

Nach oben scrollen
Have no product in the cart!
0