Official iOS app for Mastodon
Go to file
CMK 9c7da4389e fix: remove unavailable framework import 2022-01-27 22:00:03 +08:00
.github fix: update the Xcode version to fix the CI failure 2022-01-27 21:50:02 +08:00
AppShared feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
CoreDataStack feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
CoreDataStackTests feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
Localization feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
Mastodon fix: update the Xcode version to fix the CI failure 2022-01-27 21:50:02 +08:00
Mastodon.xcodeproj feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
Mastodon.xcworkspace feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
MastodonIntent feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
MastodonSDK fix: remove unavailable framework import 2022-01-27 22:00:03 +08:00
MastodonTests feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
MastodonUITests feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
NotificationService feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
ShareActionExtension feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
.gitignore chore: update gitignore rules 2021-11-03 16:13:11 +08:00
LICENSE chore: add GPL-3 LICENSE 2021-07-31 18:18:34 +08:00
MastodonSDK.xctestplan feat: add rules attribute for Instance entity 2021-02-22 12:26:44 +08:00
Podfile feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
Podfile.lock feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
README.md feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
crowdin.yml chore: add intents strings dict to Crowdin configuration. 2021-08-10 16:02:51 +08:00
swiftgen.yml feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00
update_localization.sh feat: adapt the app to async & await. Update timeline UI 2022-01-27 21:23:39 +08:00

README.md

Mastodon

CI Crowdin

Download on the App Store

Requirements

  • Xcode 12.5+
  • Swift 5.3+
  • iOS 14.0+

Setup

We need the latest version of Xcode from App Store. And use Cocoapods for dependency management.

CocoaPods

For the Intel Mac

sudo gem install cocoapods
sudo gem install cocoapods-keys
pod install

For the M1 Mac

sudo gem install cocoapods
sudo gem install cocoapods-keys

# pod install may not works on M1 Mac. Fix by install ffi
# ref: https://github.com/CocoaPods/CocoaPods/issues/10220
sudo arch -x86_64 gem install ffi

arch -x86_64 pod install

Start

  1. Open Mastodon.xcworkspace
  2. Wait the Swift Package Dependencies resolved.
  3. Check the signing settings make sure choose a team. More info…
  4. Select Mastodon scheme and run it.

Contributors

The app require the App Group capability. To make sure it works for your developer membership. Please check AppName.swift file and set another unique groupID and update App Group settings.

The app is compatible with toot-relay APNs. You can set your push notification endpoint via cocoapod-keys.

Acknowledgements

License

This project is released under the GPL-3 License. It is also dual-licensed to Apple for the purposes of publishing the app on the App Store. For this reason, any contributors are required to sign a Contributor License Agreement.