Development Showcase

iOS / Android / Flutterエンジニアとしての実務と接続する形で、UI実装や状態管理・技術検証をGitHub上で公開してきたリポジトリをカテゴリー別にまとめています。
あわせて、運営メンバーとして継続的に関わっている技術書同人誌博覧会(技書博)公式サイトの運用保守についても、このShowcaseページで紹介しています。

個人開発Showcase(全27件)

iOS / Android / Flutterエンジニアとしての実務で登場するUI実装・状態管理・アーキテクチャ選定の判断を、GitHub上で追試できる形にストックしてきたリポジトリ群です。 いずれも「業務コードにそのまま持ち込むことは難しいが、実装アプローチの引き出しとして繰り返し役立つ」ことを重視しています。

カテゴリー:公開OSSSwiftUIUIKitRxSwift / ReduxFlutter技術調査

公開OSS・1 件

実運用アプリで利用できる公開OSSとして継続メンテナンスしているリポジトリ
  • 公開OSS 公開OSSSwiftCalendarPublic OSS GitHub
    Swift版 日本の祝祭日判定コードとカレンダーサンプル
    iOSアプリで頻繁に必要になる「日本の祝日判定」を、外部APIに依存せずSwiftのみで完結させる公開OSS。iOSアプリの現場で扱うカレンダーUI・予約フロー・期日計算にそのまま組み込める設計で、Star数の伸びに合わせて継続的にメンテナンスしている。

SwiftUI・7 件

SwiftUI・Observation・SwiftDataなど新しいiOS APIのUI実装検証
  • SwiftUISwiftUIObservationVIPER GitHub
    SwiftUI + VIPER + Observationの実装サンプル
    SwiftUIにObservationマクロを組み合わせ、VIPERレイヤー構成のまま新APIへ移行する道筋を確認したサンプル。既存UIKitアプリを段階的にSwiftUI化する現場での判断材料として活用できる。
  • SwiftUISwiftUISwiftDataTransition GitHub
    SwiftData + インタラクティブ画面遷移のメディア一覧サンプル
    SwiftDataによるお気に入り機能とインタラクティブな画面遷移を組み合わせたメディア型UI。CoreDataからの移行検討や、SwiftUIでの状態永続化を実務に持ち込む際の実装検証として利用している。
  • SwiftUISwiftUIAnimationLayout GitHub
    特徴的なUIをトレース&応用したSwiftUI実装サンプル
    他アプリで見かけた個性的なUI表現をSwiftUIでトレースし、応用しやすい形に整えた実装集。企画・デザイナーとのUI検討で「これSwiftUIで実現できますか」の相談に即答するためのストックとして利用している。
  • SwiftUISwiftUIScrollViewScrollViewReader GitHub
    ScrollViewReaderを活用したTab型表現のSwiftUI実装サンプル
    ScrollViewの性質とScrollViewReaderを組み合わせ、水平タブ切り替えとスクロール連動をSwiftUIで実現。カテゴリー切り替え・記事一覧・EC商品タブ等の実務UIに横展開できる作りにしている。
  • SwiftUISwiftUIGestureAnimation GitHub
    Tinder風のCard切り替え操作のSwiftUI実装サンプル
    SwiftUIのgesture / animation / transitionを組み合わせてTinder風のカード切り替えを再現。マッチング系や診断系サービスで頻出する操作感を、実装の勘どころ込みで持ち運べる形にした。
  • SwiftUISwiftUIReduxState GitHub
    SwiftUI + Reduxによる画面状態管理サンプル
    SwiftUIのView表現とReduxによる単方向データフローを組み合わせ、規模が大きくなっても破綻しない状態管理の書き方を検証。BFFやAPI連携を含む実プロダクトへの適用時の判断材料にしている。
  • SwiftUISwiftUIScrollCross-OS UI GitHub
    AndroidのCoordinatorLayout風の動きをSwiftUIで実装
    Androidで親しみやすいCoordinatorLayoutのスクロール連動ヘッダをSwiftUIで再現。iOS/Androidを横断する開発者として、両OS間のUI表現の違いをコードで説明する土台としても機能している。

UIKit・9 件

UIKit・UICollectionView・UIScrollViewを組み合わせたUI実装検証

RxSwift / Redux・3 件

RxSwift・Reduxによる状態管理とUI実装の組み合わせ検証

Flutter・6 件

Flutter + Riverpod / Drift / Firestoreを組み合わせたUI実装検証

技術調査・1 件

ライブラリのバージョン差分やアーキテクチャ移行を目的とした比較用リポジトリ
  • 技術調査ApolloGraphQLMigration GitHub
    Apollo 0.x / 1.x系の差分調査用リポジトリ
    Apollo iOSのmajorバージョン間の差分を実コードで比較・確認するための調査用リポジトリ。実プロダクトでGraphQLクライアントをアップデートする際の、破壊的変更影響範囲の見極めに利用している。

技術書同人誌博覧会 公式サイト 運用保守

技術書同人誌博覧会(技書博)の運営メンバーとして、公式Webサイトおよび関連システムの運用保守・段階的改善に取り組んでいます。イベント開催という明確な期限がある中で、既存サービスを止めず・大きく作り直さず、「現在正常に動いているものを守りながら、次の運用を少しずつ安全にする」ことを重視した継続的なContributionです。

Role: Web Application Maintenance / Modernization / Event Operations

イベント開催に必要な情報更新だけでなく、長期間更新が難しかったフロントエンドの技術スタック・依存ライブラリ・開発環境・運用スクリプトを整理し、既存機能やデザインを維持しながら段階的な改善を進めています。 Next.js / React / Node.js / Firebase / Emotion / Tailwind CSS / TypeScriptなど複数の技術要素が古いバージョンのまま相互依存していたため、単純な一括アップデートではなく、影響範囲の調査・ビルド確認・型チェック・画面比較・実行環境確認を組み合わせながら移行しています。 アップデート前後では主要画面のスクリーンショットを取得し、Visual Regression Testで差分を確認。Docker環境でのビルド・起動確認まで行い、本番Cloud Run相当の実行経路も検証しています。 Firestoreデータ投入・メール送信スクリプトは、誤操作を防ぐためDryRunをデフォルトとする安全設計へ変更し、実際の更新は明示的なオプション指定が必要な方式に改めました。

主な取り組み

  • 公式Webサイトおよび関連システムの継続運用・保守
  • Next.js / React / Node.jsを中心としたレガシー技術スタックの段階的アップデート
  • Firebase / Emotion / Tailwind CSS / TypeScript等の依存関係更新と互換対応
  • Breaking Changes・非推奨API・旧ライブラリへの互換パス整備
  • Playwright + pixelmatchによるVisual Regression Testの導入
  • TypeScript型チェック・Production Build・Docker環境での動作検証
  • Firestoreデータ投入・メール送信スクリプトへのDryRun既定化
  • イベント開催前のサークル情報・運用データ投入フローの整備
  • 開発環境構築・障害調査・データ投入手順のドキュメント整備
  • 改善項目を切り分け、段階的に対応可能な状態へ整理

技術スタック

Frontend
Next.jsReactTypeScriptEmotionTailwind CSSMDX
Backend / Infrastructure
FirebaseFirestoreCloud FunctionsCloud RunFirebase HostingGoogle Cloud Build
Development / Verification
DockerPlaywrightpixelmatchnpmGitHub