Swiftpack.co - khanlou/Meridian as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by khanlou.
khanlou/Meridian 0.2.5
Meridian is a web server written in Swift that lets you write your endpoints in a declarative way.
⭐️ 235
🕓 4 weeks ago
macOS
.package(url: "https://github.com/khanlou/Meridian.git", from: "0.2.5")

Meridian

Meridian is a web server written in Swift that lets you write your endpoints in a declarative way.

Here is an example endpoint:

struct SampleEndpoint: Responder {
  
    @QueryParameter("sort_direction") var sortDirection: SortDirection = .ascending
  
    @URLParameter(\.id) var userID
    
    @EnvironmentObject var database: Database
    
    func execute() throws {
        JSON(database.fetchFollowers(of: userID, sortDirection: sortDirection))
    }
  
}

Server(errorRenderer: BasicErrorRenderer())
    .register {
        SampleEndpoint()
            .on("/api/users/\(\.id))/followers")

    }
    .environmentObject(Database())
    .listen()

Installation

Meridian uses Swift Package Manager for installation.

Add Meridian as a dependency for your package:

.package(url: "https://github.com/khanlou/Meridian.git", from: "0.2.5"),

The version should be the latest tag on GitHub.

Add Meridian as a dependency for your target as well:

.product(name: "Meridian", package: "Meridian"),

Documentation

Full documentation can be found in the Documentation folder.

GitHub

link
Stars: 236
Last commit: 1 week ago
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

3 years ago
  • Route groups, with error renderer overrides
  • Method Property Wrapper
  • Header Property Wrapper
  • Path Property Wrapper
  • Support for custom property wrappers
  • URLParameter is more type aware
  • EnvironmentKey is more type aware
  • Supports OPTIONS method and CORS

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics