About Silverback

Silverback is an open-source message bus and broker integration library for .NET, developed since 2018 to simplify building event-driven applications on top of Apache Kafka and MQTT.

License

Silverback is licensed under the MIT License: you are free to use it in both open-source and commercial projects.

Contact

Silverback is maintained by Sergio Aquilini.

For questions and ideas, please use the GitHub Discussions; to report a bug, open an issue. See also Contributing.

Acknowledgements

Silverback is built on top of several outstanding open-source libraries.

Message Brokers

  • Confluent's .NET Client for Apache Kafka – The Kafka client used by Silverback.Integration.Kafka, as well as the Schema Registry serializers (Avro, JSON and Protobuf) used by Silverback.Integration.Kafka.SchemaRegistry.
  • MQTTnet – The MQTT client used by Silverback.Integration.MQTT.

Storage

  • Entity Framework Core – Used by Silverback.Storage.EntityFramework.
  • Npgsql – The PostgreSQL data provider used by Silverback.Storage.PostgreSql.
  • DistributedLock – Provides the PostgreSQL advisory locks used by Silverback.Storage.PostgreSql.
  • Microsoft.Data.Sqlite – The SQLite data provider used by Silverback.Storage.Sqlite.

Optional Integrations

  • Rx.NET – The reactive extensions used by Silverback.Core.Rx to expose the message bus as an observable stream.
  • Json.NET – The JSON serializer used by Silverback.Integration.Newtonsoft.

Documentation

  • docfx – Generates this documentation website.