Gotcha iOS – AI와 사람을 비판적으로 구분하기 위해 AI와 인간의 답을 구분하는 튜링테스트 게임





넥스터즈 27기 Gotchai! 팀의 iOS 앱 레포지토리 입니다.
- Tuist를 이용해 모듈화(Modularization)를 적용했습니다.
- The Composable Architecture를 사용해 일관된 상태 관리와 테스트 및 구조 파악에 용이하게 개발하였습니다.
- 소셜로그인 (Apple/Kakao)
- n개의 퀴즈로 구성된 튜링테스트
- 테스트를 풀고 얻는 배지
- 배지 저장/공유
- 언어: Swift, SwiftUI
- 아키텍처: TCA (Composable Architecture)
- 프로젝트 관리: Tuist
- 네트워크: Moya
- 의존성 관리: Swift Package Manager (SPM)
Gotchai-iOS/
├── App/ # 엔트리 포인트 (앱 타겟)
│ └── Sources/
│ ├── GotchaiApp.swift
│ ├── AppFeature.swift
│ ├── AppView.swift
│ └── AppPath.swift
│
├── Feature/ # 화면/도메인 단위 기능 모듈
│ ├── Onboarding/ # 온보딩 화면
│ ├── SignIn/ # 로그인/회원가입
│ ├── Main/ # 홈 화면/튜링테스트/퀴즈
│ ├── Profile/ # 프로필/뱃지
│ └── Setting/ # 설정
│
├── Core/ # 비즈니스/인프라 레이어
│ ├── Auth/ # 인증/토큰/Provider
│ ├── Network/ # 네트워크 레이어
│ ├── Key/ # KeyChain 레이어
│ └── Common/ # 공용 유틸, 헬퍼, 프로토콜
│
├── Shared/ # 디자인시스템 + 유틸
│ └── DesignSystem/ # 색상, 폰트, UI 컴포넌트
│
├── Tuist/ # Tuist 설정
│ ├── ProjectDescriptionHelpers/
│ ├── Configurations/
│ └── Tuist.swift
│
└── Workspace.swift # tuist graph 산출물
- App/: 엔트리 포인트 (iOS Target)
- Feature/: 기능별 모듈 (Home, Onboarding, Profile, SignIn 등)
- Core/: 공용 모듈 (Network, Auth, DesignSystem 등)
- Tuist/: 프로젝트 정의 및 설정 파일
강민규 | 유가은 |
---|---|
![]() |
![]() |
👁️👄👁️ | ˗ˏˋ(∩╹□╹∩)ˎˊ˗ |
모바일 앱 개발 러버 🙂 | 병아리 개발자 🐥 |
이 프로젝트는 MIT License를 따릅니다.