IOS - peer-network/peer_backend GitHub Wiki
๐ iOS App โ Peer Network
This page documents the iOS client for Peer Network, built natively with Swift and structured around a modular architecture using SwiftUI, Combine, and Apollo GraphQL.
๐ฑ Project Overview
- Built with SwiftUI for a modern, declarative UI
- Uses Combine for reactive state and data flow
- Integrates with the backend via Apollo GraphQL
- Supports authentication, profile, feed, wallet
- Maintains a clean project structure separating core, tests, and networking logic
๐งฑ Tech Stack
Layer | Technology |
---|---|
Language | Swift |
UI Framework | SwiftUI |
State Management | Combine |
Networking | Apollo GraphQL |
Token Storage | Keychain |
Package Manager | Swift Package Manager (SPM) |
Build Tool | Xcode |
โ Implemented Features
- โ User authentication (register, login, logout)
- โ Profile management (username, bio, image)
- โ Create and view posts and comments
- โ Follow users
- โ Wallet balance display
- โ Token transfer functionality
๐ซ Not Yet Implemented
- โ Push notifications
- โ Real-time messaging (chat)
- โ Referral registration flow
๐ Release Notes
โ๏ธ Backend Integration
- GraphQL schema and type generation is managed in
ApolloGQL/
- Authentication tokens are stored securely in Keychain
- GraphQL operations use Apolloโs strongly typed client
- Custom payload logic is centralized in
PayloadModification/
๐งช Testing
- Unit tests are located in
PeerAppTests/
- UI tests are under
PeerAppUITests/
- Testing includes flows like login, post creation, and navigation
๐ Project Structure
peer_ios_frontend/
โโโ ApolloGQL/ # GraphQL schema, code generation, fragments
โโโ Packages/ # Swift Package Manager dependencies
โโโ PayloadModification/ # Custom request/response interceptors
โโโ PeerApp.xcodeproj/ # Xcode project settings
โโโ PeerApp/ # Main application code (Views, ViewModels, Modules)
โโโ PeerAppTests/ # Unit tests for core features
โโโ PeerAppUITests/ # Automated UI tests
โโโ .gitignore
โโโ LICENSE
โโโ README.md
๐ Related Pages
- ๐ป Clients
- ๐ค Android
- ๐ WebApp
- ๐ Home
- ๐ฌ GraphQL Schema Overview