Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

118 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub License

title

目次

リンク一覧

(トップへ)

使用技術

Category Technology Stack
App SwiftUI, Swift
Platform iOS
Integrations Files, AirPlay, Picture in Picture
Design Figma
Development Xcode

(トップへ)

アーキテクチャ

flowchart TB
  subgraph local[Local Configuration]
    projectYml[project.yml] --> xcodegen[XcodeGen]
    xcodegen --> xcodeproj[PocketVideo.xcodeproj]
  end

  subgraph runtime[App Runtime]
    xcodeproj --> app[App Entry]
    app --> shell[Player Shell<br/>Open / Recent / Settings]
    shell --> files[Files<br/>Video Selection]
    shell --> playback[Playback Resolver]
    shell --> nativeFeatures[PiP / Now Playing / Remote Commands]
    files --> playback
    playback --> player[Native Video Player]
    player --> external[External Playback]
  end

  player --> localFiles[Local Video Files]
  external --> airplay[AirPlay / External Display]
Loading

(トップへ)

環境構築

# リポジトリのクローン
git clone git@github.com:Arata1202/PocketVideo.git
cd PocketVideo

# XcodeGenのインストール
brew install xcodegen

# Xcodeプロジェクトの生成
xcodegen generate

# Xcodeから起動
open PocketVideo.xcodeproj
# iOSリリースビルド
xcodebuild -project PocketVideo.xcodeproj -scheme PocketVideo -configuration Release -destination 'generic/platform=iOS' build

(トップへ)

テスト

# ユニットテスト
xcodebuild -project PocketVideo.xcodeproj -scheme PocketVideo -destination 'platform=iOS Simulator,name=iPhone 16' test

(トップへ)

ディレクトリ構成

❯ tree -a -I ".git|.DS_Store|xcuserdata|DerivedData|build|*.xcuserstate" -L 3
.
├── .docs
│   └── readme
│       └── images
├── .gitignore
├── Brand
│   ├── PocketVideoAppIcon-1024.png
│   └── PocketVideoAppIcon-source.png
├── LICENSE
├── PocketVideo
│   ├── App
│   │   ├── ExternalDisplayPlayback.swift
│   │   └── PocketVideoApp.swift
│   ├── Assets.xcassets
│   │   ├── AppIcon.appiconset
│   │   └── Contents.json
│   ├── Info.plist
│   ├── Models
│   │   ├── PlaybackAlert.swift
│   │   ├── RecentVideo.swift
│   │   └── RecentVideoStore.swift
│   ├── PrivacyInfo.xcprivacy
│   ├── ViewModels
│   │   └── PlayerViewModel.swift
│   ├── Views
│   │   ├── PlayerHomeView.swift
│   │   ├── PlayerView.swift
│   │   └── SettingsView.swift
│   └── ja.lproj
│       └── Localizable.strings
├── PocketVideo.xcodeproj
│   ├── project.pbxproj
│   ├── project.xcworkspace
│   │   ├── contents.xcworkspacedata
│   │   └── xcshareddata
│   └── xcshareddata
├── PocketVideoTests
│   └── RecentVideoStoreTests.swift
├── README.md
└── project.yml

18 directories, 22 files

(トップへ)

Gitの運用

ブランチ

GitHub Flowを使用する。 mainとfeatureブランチで運用する。

ブランチ名 役割 派生元 マージ先
main 本番環境 - -
feature/* 機能開発 main main

コミットメッセージの記法

fix: バグ修正
feat: 新機能追加
perf: パフォーマンス改善
refactor: コードのリファクタリング
docs: ドキュメントのみの変更
style: コードのフォーマットに関する変更
test: テストコードの変更
build: ビルドシステムや依存関係の変更
ci: CI/CD設定の変更
revert: 変更の取り消し
chore: その他の変更

(トップへ)

About

ファイルアプリの動画をすばやく開いて再生できる、シンプルなiOS向け動画プレイヤー。

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages