Zewo alternatives and similar libraries
Based on the "Webserver" category.
Alternatively, view Zewo alternatives based on common mentions on social networks and blogs.
Vapor9.9 7.3 L4 Zewo VS Vapor💧 A server-side Swift HTTP web framework.
Perfect9.9 0.0 L3 Zewo VS PerfectServer-side Swift. The Perfect core toolset and framework for Swift Developers. (For mobile back-end development, website and API development, and more…)
Kitura9.7 1.0 L1 Zewo VS KituraA Swift web framework and HTTP server.
swifter9.3 0.0 L1 Zewo VS swifterTiny http server engine written in Swift programming language.
Swifton8.3 0.0 L5 Zewo VS SwiftonA Ruby on Rails inspired Web Framework for Swift that runs on Linux and OS X
Taylor7.1 0.0 L2 Zewo VS TaylorA lightweight library for writing HTTP web servers with Swift
Blackfish6.8 0.0 L5 Zewo VS BlackfishA minimal, fast and unopinionated web framework for Swift
Express6.7 0.0 L4 Zewo VS ExpressSwift Express is a simple, yet unopinionated web application server written in Swift
Embassy5.9 0.0 L3 Zewo VS EmbassySuper lightweight async HTTP server library in pure Swift runs in iOS / MacOS / Linux
XcodeServerSDK5.2 0.0 L4 Zewo VS XcodeServerSDKAccess Xcode Server API with native Swift objects.
Curassow5.0 0.0 L2 Zewo VS CurassowSwift HTTP server using the pre-fork worker model
Restofire4.8 0.0 L5 Zewo VS RestofireRestofire is a protocol oriented networking client for Alamofire
Frank4.6 0.0 L4 Zewo VS FrankFrank is a DSL for quickly writing web applications in Swift
Edge4.4 0.0 L3 Zewo VS EdgeA Swift Multiplatform Single-threaded Non-blocking Web and Networking Framework
Noze.io4.3 1.4 L2 Zewo VS Noze.ioEvented I/O streams for Swift
NetworkObjects4.3 0.0 L3 Zewo VS NetworkObjectsSwift backend / server framework (Pure Swift, Supports Linux)
RxNetworks3.9 6.3 Zewo VS RxNetworks🧚 Responsive plugin network architecture for RxSwift + Moya + HandyJSON + Plugins.
Ambassador3.9 0.0 L4 Zewo VS AmbassadorSuper lightweight web framework in Swift based on SWSGI
SwiftyHTTP3.1 0.0 L3 Zewo VS SwiftyHTTPA simple GCD based HTTP client and server, written in 'pure' Swift
Aeon1.8 0.0 L5 Zewo VS Aeon[Deprecated]
Dynamo1.7 0.0 L1 Zewo VS DynamoHigh Performance (nearly)100% Swift Web server supporting dynamic content.
Swift-Server1.4 0.0 Zewo VS Swift-ServerA very basic proof-of-concept Swift HTTP server that does not require Foundation
Trevi1.4 0.0 L2 Zewo VS Trevilibuv base Swift web HTTP server framework
Kunugi1.2 0.0 L5 Zewo VS KunugiMinimal web framework and middleware for Swift
Corvus1.2 0.0 Zewo VS CorvusCorvus has been archived in favor of https://github.com/Apodini/Apodini .
http4swift0.7 0.0 L5 Zewo VS http4swiftA simple HTTP server written in Swift
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Zewo or a related project?
Why Zewo? • Support • Community • Contributing
Zewo is a lightweight library for web applications in Swift.
What sets Zewo apart?
Zewo is not a web framework. Zewo is a lightweight library for web applications in Swift. Most server-side Swift projects use Grand Central Dispatch (GCD) as the concurrency library of choice. The drawback of using GCD is that its APIs are asynchronous. With async code comes callback hell and we all know it, it's no fun.
Node.js is the best example of how callbacks can be frustrating. Express.js creator TJ Holowaychuk wrote a blog post about Callback vs Coroutines in 2013 and one year later left the Node.js community in favor of Go. There were many reasons for that but one of the main reasons was the concurrency model. Sure we have futures and promises and functional reactive programming. They all mitigate the problem, but the async nature of the code will always be there.
At Zewo we use coroutines. Coroutines allow concurrency while maintaining synchronous APIs. We all learn how to program with synchronous code. We're used to reason about our code synchronously. Being able to use synchronous APIs makes the code much more readable and understandable. Coroutines are also faster than threads, because they live in user-space, unlike threads which are managed by the kernel.
Our implementation of coroutines (which is based on libdill) is single-threaded. This means that you don't have to worry about locks or race conditions. So your code is safer by default. To use all the CPU power available all you have to do is to replicate the work according to the number of logical CPUs available. As an example, this could mean running as many processes of your server as cores in your machine. Rob Pike, one of the creators of Go had a talk called Concurrency is not Parallelism that explains this concept very well. Go also has the philosophy:
Don't communicate by sharing memory. Share memory by communicating.
Like Go, instead of sharing memory and handling state we promote the use of CSP-style concurrency using channels. This pattern brings the abstractions used on the development of distributed systems closer to the way we're used to think about communication. It also aligns well with Swift's mindset of immutability and value types. All of these things contributes to a distinct experince on the server-side Swift.
With Zewo you get:
- Go-style concurrency
- Synchronous APIs
- Incredible performance
- Safer applications
- Scalable systems
- Cleaner code
- Proper error handling
- No callback hell
- No race conditions
If you have any trouble create a Github issue and we'll do everything we can to help you. When stating your issue be sure to add enough details and reproduction steps so we can help you faster. If you prefer you can join our Slack and go to the #help channel too.
We have an amazing community of open and welcoming developers. Join us on Slack to get to know us!
All Zewo modules are released under the MIT license. See [LICENSE](LICENSE) for details.
*Note that all licence references and agreements mentioned in the Zewo README section above are relevant to that project's source code only.