Skip to content
eai04191Public

About

手触りの良いiOS向けMastodonクライアント

Topics

Resources

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

100% VIBE-CODED

Sciaのアイコン

Scia

Scia(シア、/ˈʃi.a/)はストリーミングAPIに対応した、手触りの良いiOS向けMastodonクライアントです。

TestFlight: https://testflight.apple.com/join/6g69MEf8

読んでいる途中に届いた新着が上に溜まっているホームのタイムライン タイムラインの上で写真を3枚添付し、ハッシュタグの候補を出した投稿欄 ステータスバーの場所に流れたお気に入りの通知

特徴

  • ストリーミングはもちろん、ストリーミングを見ながら投稿や反応、リンク先の閲覧ができる
  • 通知タブを開かなくても、自分への反応がステータスバーの場所に流れて気づける
  • バックグラウンドからの復帰や再接続のときも取りこぼしや重複なくタイムラインがつながる
  • HIGに沿った美しく滑らかなインターフェイス
  • アニメーションの途中でも操作を受け付けどこで止めても破綻しない
  • 必要なリクエストだけを送りスペックの低いサーバーでも快適に使える

すべての機能一覧

動作環境

  • iOS 26以降(27以降での使用を推奨)
  • 接続先としてMastodon 4.7の最新版でのみ動作を確認

ビルド

必要なもの:

  • Xcode 26以降
  • XcodeGen
  • SwiftLint(make lintとmake checkで使う)
  • WebPのcwebp(READMEのアイコンを描き出すmake readme-iconsと、スクリーンショットを撮るmake readme-screenshotsで使う)
brew install xcodegen swiftlint webp

Scia.xcodeprojはコミットしていないので、project.ymlから生成します。

make generate

シミュレーター向けには、そのままビルドできます。

make build

実機で動かすときは、Config/Local.xcconfigに署名のチームを書きます。このファイルはコミットしません。

DEVELOPMENT_TEAM = <チームID>

構成

  • Packages/SciaCore: UIに依存しないロジック(モデル、APIクライアント、ストリーミング、タイムラインの状態管理)UIKit/AppKit/SwiftUIをimportしない
  • App/Sources: iOSアプリ(UIKitライフサイクル)
  • project.yml: XcodeGenの定義

テスト

make test-core

SciaCoreのテストをmacOS上で走らせます。シミュレーターは要りませんが、macOS 26以降が必要です。

make test SIM='iPhone 16 Pro'

アプリのテストをシミュレーターで走らせます。make checkは、lint、SciaCoreのテスト、ビルド、警告の検出をまとめて行います。

謝辞

Sciaは次のクライアントから多くの影響を受けています

ライセンス

ソースコードはMIT No Attribution(MIT-0)で公開しています。ただし、名称とアプリアイコン・ロゴは除きます。

App/Resources/Twemoji.ttfは、Twemojiの絵(Copyright Twitter, Inc and other contributors、CC BY 4.0)からTools/build-twemoji-font.pyで作った書体です。

撮影用のシナリオのアイコンと写真の模様を描くApp/Sources/Debug/Scenario/ScenarioArtwork.swiftは、Boring Avatars(Copyright (c) 2021 boringdesigners)の描き方を移したもので、ファイルの頭に載せたMIT Licenseが適用されます。

名称とアイコン・ロゴ

「Scia」という名称と、アプリアイコン・ロゴ(App/Resources/AppIcon.icon、App/Resources/AppIconLight.icon、そこから描き出したdocs/images/icon-*.webp)は、MIT-0の対象に含めません。

ソースコードは自由に改変・再配布できますが、改変したものやビルドしたものを配布するときは、Sciaとは別の名称とアイコン・ロゴに差し替えてください。作者が作ったものと見分けられるようにするためです。自分の端末で動かすためにビルドするだけなら、差し替えなくて構いません。

About

手触りの良いiOS向けMastodonクライアント

Topics

Resources

Security policy

Stars

0 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages