Skip to content

grandchildrice/vapor-clean-architecture

Repository files navigation

Vapor × Clean Architecture

Hello. This is a Vapor 4.5 × Clean Architecture Template.

✅ Develop Fast & Safety.
✅ Use async/await.
✅ Multi-package based design for separating responsibilities.
✅ You can share Endpoint and DomainEntity codes with your iOS Clients.
✅ TDD with UseCase Unit Testing and Controller E2E Testing.


Get Started

$ vapor new <project name> --template https://github.com/masatsch/vapor-clean-architecture

Run

$ cp .env.development{.sample,}
$ docker-compose up -d db
$ open Package.swift

go edit scheme > Run > Options, then turn on Use custom working directory(set current directory path)

then command cmd + r


Test Controller

$ cp ./Tests/.env.testing{.sample,}
$ open Package.swift

then command cmd + u


Test UseCase

$ cd Modules/Core
$ open Package.swift

then command cmd + u


Architecture