A low-level socket framework for Swift supporting TCP, UDP, and UNIX sockets across iOS, macOS, and Linux.
BlueSocket is a pure Swift socket library that provides a comprehensive, low-level API for network communication. It enables developers to build networked applications using familiar socket paradigms directly in Swift, eliminating the need for C-based socket wrappers. The framework is part of the Kitura ecosystem and is designed for cross-platform server-side and client-side Swift development.
Swift developers building cross-platform networked applications, such as server-side Swift services, iOS/macOS apps requiring low-level socket control, or Linux-based network tools. It is particularly suited for those who need a Swift-native alternative to C-based socket libraries.
Developers choose BlueSocket for its clean, Swift-native interface to BSD sockets, offering full low-level control with the safety and expressiveness of Swift. Its cross-platform support (iOS, macOS, Linux) and integration with the Kitura ecosystem provide a robust foundation for network programming without relying on Objective-C or C wrappers.
Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works seamlessly on iOS, macOS, and Linux using Swift Package Manager, providing a pure Swift interface without C wrappers, as highlighted in the README's platform badges and prerequisites.
Offers factory methods for socket creation, listening, accepting, and reading/writing for TCP/UDP, with support for IPv4, IPv6, and UNIX sockets, detailed in the Family, Type and Protocol Support section.
Compatible with BlueSSLService for secure connections, allowing encryption within the Swift ecosystem, though it requires an add-in dependency as noted in the README.
Includes helpers for socket status checking, timeout management, broadcast mode, and address resolution, giving developers low-level control over network operations.
SSL/TLS support is not built-in; it requires BlueSSLService, which adds setup complexity and needs libssl-dev on Linux, as admitted in the README's Add-ins section.
Focuses solely on low-level sockets, lacking abstractions for common protocols like HTTP or WebSocket, forcing developers to implement them from scratch.
No support for watchOS and untested on tvOS, and developers must manage concurrency manually using Dispatch queues, as shown in the echo server example, increasing boilerplate code.