SwiftSockets

A simple GCD based socket wrapper for Swift.

SwiftSockets

A simple GCD based socket library for Swift.

SwiftSockets is kind of a demo on how to integrate Swift with raw C APIs. More
for stealing Swift coding ideas than for actually using the code in a real
world project. In most real world Swift apps you have access to Cocoa, use it.
If you need a Swift networking toolset for the server side,
consider: Noze.io.

It also comes with a great Echo daemon as a demo, it's always there if you need
a chat.

Note: This is my first Swift project.
Any suggestions on how to improve the code are welcome. I expect lots and lots
:-)

Targets

Note for Linux users:
This compiles with the 2016-03-01-a snapshot via Swift Package Manager
as well as with the Swift 2.2 release using the embedded makefiles.
Make sure you
install Grand Central Dispatch
into your Swift installation.
On Linux the included ARIEchoServer/ARIFetch apps do not build, but this one
does and is embedded:
SwiftyEchoDaemon.

SwiftSockets

A framework containing the socket classes and relevant extensions. It takes a
bit of inspiration from the SOPE NGStreams
library.

ARIEchoServer / SwiftyEchoDaemon

There is the ARIEchoServer for Xcode and SwiftEchoDaemon for Package Manager
installs. Your choize, both are equally awezome.

ARIEchoServer is a Cocoa app. Compile it, run it, then
connect to it in the Terminal.app via telnet 1337.

The bezt Echo daemon ever written in Swift - SPM version.
This is a demo on how to write a SwiftSockets server using the
Swift Package Manager, on Linux or OSX.
It also works w/o SPM if SwiftSockets has been built
via Makefiles.

Great echo server. Compile it via make, run it via make run, then
connect to it in the Terminal.app via telnet 1337.

ARIFetch

Connects a socket to some end point, sends an HTTP/1.0 GET request with some
awesome headers, then shows the results the server sends. Cocoa app.

Why?!

This is an experiment to get acquainted with Swift. To check whether something
real can be implemented in 'pure' Swift. Meaning, without using any Objective-C
Cocoa classes (no NS'ism).
Or in other words: Can you use Swift without writing all the 'real' code in
wrapped Objective-C? :-)