Naar de inhoud

Swift, maar dan op een server

Vapor biedt een veilige, performante en gebruiksvriendelijke basis om HTTP-servers, backends en API's in Swift te bouwen

import Vapor

let app = try await Application.make(.detect())

app.get("hello") { req in
    "Hello, world!"
}

try await app.execute()







Drijft bedrijven aan zoals:

Bouw server-side met de tools die je al kent

Je hoeft geen taal vanaf nul te leren (of een apart team samen te stellen) alleen voor je backend. Vapor is gebouwd op Apple’s SwiftNIO, dus je kunt de taal gebruiken die je al kent en waardeert.

Vapor

Bouw efficiënte API's in een taal die je geweldig vindt. Maak routes, verstuur en ontvang JSON en bouw HTTP-servers.

Meer informatie

Fluent

Maak modellen en werk met je database in native, veilige Swift-code zonder ook maar één regel SQL te schrijven.

Meer informatie

JWT

Maak, onderteken en verifieer JSON Web Tokens in Swift. Gebouwd op Swift Crypto.

Meer informatie

Leaf

Een template-engine geschreven in Swift. Genereer HTML voor zowel webapps als e-mails met een eenvoudige syntaxis die iedereen kan gebruiken.

Meer informatie

Hoogperformante API's en servers

Vapor is gebouwd op een non-blocking, event-driven architectuur en stelt je in staat hoogperformante, schaalbare API's en HTTP-servers te bouwen. Met het Concurrency-model van Swift schrijf je heldere, onderhoudbare code die efficiënt en gemakkelijk te lezen is.

Aan de slag
app.get("todos", ":id") { req async throws -> Todo in
  let id: UUID = try req.parameters.require("id")

  guard
    let todo = try await Todo.find(id, on: req.db)
  else {
    throw Abort(.notFound)
  }

  return todo
}

Lever met vertrouwen op, zelfs op vrijdag

Met het expressieve, protocol-georiënteerde ontwerp van Vapor lever je je code met een gerust hart op. Door onze sterke focus op type-veiligheid worden veel fouten en problemen al vroeg door de compiler opgespoord.

Aan de slag
func search(req: Request) async throws -> [Todo] {
  let name: String = try req.query.get(at: "name")

  let results = try await Todo.query(on: req.db)
    .filter(\.$number == name)
    .all()

  return results
}
Binary operator '==' cannot be applied to operands of type 'KeyPath<Todo, FieldProperty<Todo, Int>>' and 'String'
Integraties

Volledige integratie met je hele stack

Het volwassen ecosysteem van Vapor omvat meer dan honderd officiële en door de community onderhouden server-first Swift-packages om het bouwen van je applicaties eenvoudig en efficiënt te maken.

Aan de slag
Vapor Integrations

Gebruikt door de teams achter deze geweldige apps

Volledige lijst bekijken
SwiftFiddle Card

SwiftFiddle

SwiftFiddle is an online playground for creating, sharing and embedding Swift fiddles

Zie het in actie
SwiftPackageIndex Card

SwiftPackageIndex

The Swift Package Index is a searchable index of Swift packages and their compatibility with various platforms.

Zie het in actie
Underway NYC Card

Underway NYC

Quickly locate yourself on the official MTA map of NYC and get real-time train arrivals at that subway stop

Zie het in actie
Litmaps Card

Litmaps

Litmaps is a browser-based research platform designed for clarity, comprehensiveness, and collaboration.

Zie het in actie
Vapor Discord server

Word lid van de grootste community van Swift-backendontwikkelaars

De Discord-community van Vapor met meer dan 13.000 leden staat je bij op je weg. Stel vragen, draag bij en word deel van een bloeiend, hartelijk hoekje van het internet.

Word lid van onze DiscordBijdragen

Krijg alle tools die je nodig hebt om met Swift te bouwen

Aan de slagNaar de API-documentatie

Krijg alle tools die je nodig hebt om met Swift te bouwen

  • Maak eenvoudig nieuwe projecten met de Vapor Toolbox
  • Uitgebreide documentatie en API-referentie
  • Alles wat je nodig hebt om backends en API's te bouwen
  • Volledige ondersteuning voor het concurrency-model van Swift

Ondersteund door onze geweldige sponsors en donateurs

Word ondersteuner
Broken Hands

Broken Hands

Providing Vapor training and consulting for clients around the world.

Meer informatie
omrd

omrd

omrd provides consultation services for dental elated scans.

Meer informatie
Emerge Tools

Emerge Tools

Emerge Tools is a suite of revolutionary products designed to supercharge mobile apps and the teams that build them.

Meer informatie