여러분 안녕하세요!
UIKit과 Swift를 사용하여 개발하고 있는 Discourse 포럼용 네이티브 iOS 클라이언트 Dexo를 공유하고자 합니다.
스크린샷
주요 기능
- 멀티 포럼 관리 — 하나의 앱에서 여러 Discourse 인스턴스를 추가하고 전환 및 제거할 수 있습니다
- 토픽 탐색 — 무한 스크롤을 지원하는 최신 및 인기 토픽 목록
- 카테고리 및 태그 — 카테고리나 태그별로 토픽을 탐색할 수 있습니다
- 토픽 상세 — 이미지 뷰어, 구문 강조가 적용된 코드 블록, 접을 수 있는 섹션이 포함된 전체 HTML 콘텐츠 렌더링
- 답글 — 토픽이나 특정 게시글에 답글을 달 수 있습니다
- 보안 인증 — RSA 암호화를 사용하는 Discourse 사용자 API 키 플로우를 적용하며, 자격 증명은 iOS 키체인에 안전하게 저장됩니다
- 화면 모드 — 시스템 / 라이트 / 다크 모드 지원
예정된 기능
- 알림 및 개인 메시지
- 토픽 생성
기술 스택
| 구성 요소 | 상세 |
|---|---|
| 언어 | Swift 5 |
| UI 프레임워크 | UIKit |
| 최소 지원 대상 | iOS 17.0 |
| 아키텍처 | MVVM + @Observable |
| 데이터베이스 | SQLite (GRDB) |
| 네트워킹 | Alamofire |
| 이미지 로딩 | SDWebImage |
인증 방식
Dexo는 Discourse 사용자 API 키 사양을 따릅니다.
기기에 RSA 키 쌍을 생성하고, 공개 키를 Discourse 인스턴스로 전송하여 인증을 수행한 후, 생성된 API 키를 iOS 키체인에 안전하게 저장합니다.
기기에 비밀번호가 저장되지 않습니다.
TestFlight
소스 코드
이 프로젝트는 완전한 오픈소스입니다:
소스에서 빌드하기
Xcode 16 이상과 mise가 필요합니다:
make setup # 도구 설치, 의존성 가져오기, Xcode 프로젝트 생성
그런 다음 dexo.xcodeproj를 열고 개발 팀을 선택하여 실행하세요.
피드백
이것은 아직 진행 중인 작업입니다.
여러분의 피드백, 기능 요청, 버그 보고를 환영합니다.
여기에 답글을 달거나 GitHub에서 이슈를 열어 주세요.




