FRELOCATOR は、個人の自由時間を具体的な計画に落とし込み、あとから振り返れる形にするためのローカルファーストな Flutter アプリです。
アプリは 3 つの画面レイヤーを中心に構成しています。
TaskMasterやりたいこと・やるべきことのタスク管理DailyPlan自由時間枠にタスクを割り当てる日次計画WeeklyReport1 週間の時間配分を振り返るレポート
現在のデータ保存は shared_preferences による端末内保存です。Cloud sync、通知配信、アカウント機能、外部カレンダー連携はまだ実装していません。
コアとなる計画フローは実装済みで、現在は次の 3 プラットフォーム向けにリリース確認を進めています。
macOSWebAndroid
直近では以下の確認を通しています。
flutter analyzeflutter testflutter build macosflutter build webflutter build apk --releaseflutter build appbundle
このアプリは、次のような人を想定しています。
- 個人タスクの backlog を整理したい
やるべきこと / やりたいことを分けて管理したい- タスクを実際の自由時間に割り当てたい
- 日ごとの計画パターンを別日に複製したい
- 週単位で時間の使い方を振り返りたい
現在の実装には、計画の作成から振り返りまでの基本フローが含まれています。
- Home dashboard
- TaskMaster
- Category settings
- DailyPlan
- WeeklyReport
- タスク CRUD
- カテゴリ CRUD
- カテゴリの共通 / 分離モード
- 日付ごとの日次計画作成
- 自由時間枠 CRUD
- 日またぎ枠のサポート
- 枠内の予定 CRUD
- 枠と予定の重複バリデーション
- 枠内および枠間のドラッグ移動
- 日 / 枠 / 予定単位での複製
- 前週 / 今週 / 翌週を切り替える週次集計
shared_preferencesによるローカル保存
- ローカル保存のみ
- アカウント機能なし
- 通知機能は未実装
- Google ログインなし
- バックエンド API なし
- 通知機能は今後実装予定
- アカウント機能は作らない方針
- ただし、端末変更時のための引き継ぎ機能は追加したい
Flutterflutter_riverpodgo_routershared_preferencesintl
メインのアプリケーションコードは lib/features/ 以下にあります。
home/task_master/daily_plan/weekly_report/
主なルーティング:
//tasks/categories/daily-plan/weekly-report
lib/
app/
features/
home/
task_master/
daily_plan/
weekly_report/
docs/
test/
web/
android/
macos/
ios/, linux/, windows/ も scaffold として存在しますが、現在の主な検証対象は macOS / Web / Android です。
依存導入:
flutter pub get基本確認:
flutter analyze
flutter testプラットフォーム別起動:
flutter run -d macos
flutter run -d chrome
flutter run -d <android_device_id>Chrome 連携が不安定な場合:
flutter run -d web-server --web-hostname=127.0.0.1 --web-port=8080リリースビルド:
flutter build macos
flutter build web
flutter build apk --release
flutter build appbundle用途別ドキュメント:
- docs/debug_flow.md 日々のデバッグフロー
- docs/feature_checklist.md 機能確認チェックリスト
- docs/platform_debug_checklist.md macOS / Web / Android の起動と確認方法
- docs/web_release_checklist.md Web 公開準備
- docs/android_release_signing.md Android 署名とリリースメモ
- docs/troubleshooting_flutter_web_chrome.md Flutter Web と Chrome のトラブルシュート
- docs/distribution_release_prep.md 配布準備メモ
- docs/android_store_assets_checklist.md Android ストア素材チェックリスト
- Android package ID:
net.riumu.frelocator - macOS bundle ID:
net.riumu.frelocator - Web target:
app.frelocator.riumu.net - Android release signing はローカル
android/key.propertiesで設定 - Web サポートページ:
/privacy.html/support.html
- デフォルトブランチは
main - 現在は private repository 前提
- keystore、パスワード、個人スケジュール、環境依存の秘密情報はコミットしない