Swift, 하지만 서버에서
Vapor는 Swift로 HTTP 서버, 백엔드 및 API를 구축할 수 있는 안전하고 성능이 뛰어나며 사용하기 쉬운 기반을 제공합니다
import Vapor
let app = try await Application.make(.detect())
app.get("hello") { req in
"Hello, world!"
}
try await app.execute()
이미 알고 있는 도구로 서버 사이드를 구축하세요
백엔드만을 위해 언어를 처음부터 배우거나 별도의 팀을 꾸릴 필요가 없습니다. Vapor는 Apple의 SwiftNIO를 기반으로 만들어져, 이미 알고 좋아하는 언어를 그대로 사용할 수 있습니다.
고성능 API와 서버
논블로킹 이벤트 기반 아키텍처로 구축된 Vapor를 사용하면 고성능의 확장 가능한 API와 HTTP 서버를 만들 수 있습니다. Swift의 동시성 모델을 활용해 효율적이고 읽기 쉬우며 명확하고 유지보수하기 좋은 코드를 작성할 수 있습니다.
시작하기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
}금요일에도 자신 있게 배포하세요
Vapor의 표현력 있고 프로토콜 지향적인 설계 덕분에 안심하고 코드를 배포할 수 있습니다. 타입 안전성에 중점을 두어 많은 오류와 문제를 컴파일러가 일찍 잡아냅니다.
시작하기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
}전체 스택과의 완벽한 통합
Vapor의 성숙한 생태계에는 공식 및 커뮤니티가 관리하는 100개가 넘는 서버 우선 Swift 패키지가 포함되어 있어, 애플리케이션 개발을 쉽고 효율적으로 만들어 줍니다.
시작하기
이 멋진 앱들을 만든 팀들이 사용합니다
전체 목록 보기
SwiftFiddle
SwiftFiddle is an online playground for creating, sharing and embedding Swift fiddles
직접 확인하기
SwiftPackageIndex
The Swift Package Index is a searchable index of Swift packages and their compatibility with various platforms.
직접 확인하기
Underway NYC
Quickly locate yourself on the official MTA map of NYC and get real-time train arrivals at that subway stop
직접 확인하기
Litmaps
Litmaps is a browser-based research platform designed for clarity, comprehensiveness, and collaboration.
직접 확인하기
최대 규모의 Swift 백엔드 개발자 커뮤니티에 참여하세요
13,000명이 넘는 Vapor의 Discord 커뮤니티가 여러분의 여정을 함께합니다. 질문하고, 기여하며, 활기차고 따뜻한 인터넷 공간의 일원이 되어 보세요.
Discord에 참여하기기여하기Swift로 개발하는 데 필요한 모든 도구를 만나보세요
- Vapor Toolbox로 손쉽게 새 프로젝트를 만드세요
- 방대한 문서와 API 레퍼런스
- 백엔드와 API 구축에 필요한 모든 것
- Swift의 동시성 모델 완벽 지원


