swift-nio
SwiftSocket
swift-nio | SwiftSocket | |
---|---|---|
12 | 1 | |
7,767 | 1,663 | |
0.4% | 0.1% | |
9.1 | 0.0 | |
8 days ago | 5 months ago | |
Swift | Swift | |
Apache License 2.0 | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
swift-nio
-
Is it possible/straightforward to have a webserver baked in to an iOS app?
In addition to what others have said, SwiftNIO is a possible low-level web server framework.
-
Swift outside the Apple ecosystem
Also look at: Hummingbird https://github.com/hummingbird-project/hummingbird Smoke https://github.com/amzn/smoke-framework Swift NIO https://github.com/apple/swift-nio
-
Apple Announces Full Swift Rewrite of the Foundation Framework
You could take a look a swift-nio (https://github.com/apple/swift-nio) which is a pretty high-throughput system. swift-nio does this using some reference-counted GC where it simplifies the code and doesn't affect performance. Otherwise, value-types are used which incur no GC overhead (unless they are copy-on-write, and backed by something that requires reference counting).
-
Are there any examples of major or highly complex software written solely or at-least primarily in Swift?
The UI and the Core are mainly written by Swift. The proxy server is powered by Apple Swift-NIO. Some critical parts (deal with low-level system APIs, high performant JSON Parser, de/compression, protobuf, BoringSSL,...) are written by Objective-C and C. For some parts that deal with Pointer, or C library, I continue using Objective-C since it's easier than using a bunch of Unsafe Swift classes (UnsafePointer, UnsafeMutablePointer, UnsafeRawPointer, etc)
- The Val Object Model: Template for a possible future Swift object model
-
Implementing Parts of the Swift Compiler in Swift
> Why should they? That isn't their target audience.
Because they need it?
Apple discontinued macOS server, i bet they use Linux in some of their servers
All their networking related libs are available and tested for Linux [1, 2]
Let's not forget that they package Swift for Linux, and now also for Windows [3]
Swift is crossplatform language (you not wanting to understand it doesn't change this fact), it's not a macOS framework
[1] - https://github.com/apple/swift-nio
[2] - https://github.com/apple/swift-protobuf/blob/main/.github/wo...
[3] - https://forums.swift.org/t/announcing-swift-5-6-2-for-linux-...
-
What is the simplest way to have local http server in iOS app?
I would look at NIO or something that uses it, like https://diamantidis.github.io/2019/10/27/swift-nio-server-in-an-ios-app
-
Update app from external source (maybe?)
i use swiftnio to spin up http servers. lots of documentation online. your app logic will be the same as ios but without swiftui and uikit.
-
Any tutorials you recommend for URLSession?
Depending on what you need, SwiftNIO might do the trick.
-
Is there a reliable swift package for running a tcp connection from an ios app ?
If you want something a little more robust for a low-level TCP connection, you can also use SwiftNIO.
SwiftSocket
-
Is there a reliable swift package for running a tcp connection from an ios app ?
I managed to make it kind of work with CFStreamCreatePairWithSocketToHost but it seems to be deprecated. SwiftSocket looks to be a good solution too but at this point I'm not very sure what to do or what to use.
What are some alternatives?
GCDWebServer - The #1 HTTP server for iOS, macOS & tvOS (also includes web based uploader & WebDAV server)
Socket.IO
Zewo - Lightweight library for web server applications in Swift on macOS and Linux powered by coroutines.
BlueSocket - Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux.
mongodb-vapor - MongoDB + Vapor integration
Starscream - Websockets in swift for iOS and OSX
Swift-Atem - Blackmagic Design Atem network protocol implementation in swift 5.1 using NIO 2
SwiftWebSocket
async-http-client - HTTP client library built on SwiftNIO
Socks - 🔌 Non-blocking TCP socket layer, with event-driven server and client.
Telegrammer - Telegram Bot - written with Swift 5.2 / NIO, supports Linux, macOS
SocketRocket