A blocking socket TCP/IP library for Delphi and FreePascal with support for IPv4/IPv6, TLS, and many internet protocols.
Synapse is a TCP/IP library for Pascal (Delphi and FreePascal) that provides network communication through blocking sockets. It simplifies programming by using synchronous operations, making it ideal for implementing internet protocols and building network-enabled applications. The library supports IPv4/IPv6, TLS encryption, proxies, and includes utilities for MIME encoding and serial port communication.
Pascal developers (using Delphi or FreePascal) who need a straightforward, blocking socket library for network communication, protocol implementation, or serial port access.
Developers choose Synapse for its simplicity and natural programming model with blocking sockets, avoiding the complexity of asynchronous event processing. It offers broad protocol support, cross-platform compatibility, and includes the SynaSer extension for serial port communication.
Synapse TCP/IP library for Delphi and Freepascal
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Blocking sockets enable natural 'send-wait-reply' patterns, making it easier to implement internet protocols like SMTP or HTTP without complex event-driven code.
Supports Windows, Linux, Android, and POSIX systems, with compatibility across Delphi versions (5 to latest) and FreePascal, ideal for legacy and modern projects.
Includes low-level UDP/TCP, ICMP pings, and high-level protocols such as DNS, HTTP, FTP, and SNMP, plus utilities for MIME encoding and serial port communication via SynaSer.
SynaSer extension provides blocking serial port communication with a similar API to sockets, useful for hardware interfacing without additional libraries.
Synapse focuses on blocking sockets with only 'limited non-blocking mode,' making it unsuitable for applications requiring full asynchronous I/O without custom threading.
TLS encryption relies on third-party libraries like OpenSSL, adding setup complexity and potential versioning issues compared to integrated solutions.
Developed as a freetime hobby, which may lead to slower issue resolution and less frequent updates than commercially backed libraries, as noted in the README.