https://github.com/yumnumm/eqmonitor
An earthquake monitoring Application
https://github.com/yumnumm/eqmonitor
android earthquake flutter
Last synced: 11 months ago
JSON representation
An earthquake monitoring Application
- Host: GitHub
- URL: https://github.com/yumnumm/eqmonitor
- Owner: YumNumm
- License: mit
- Created: 2022-02-27T17:14:37.000Z (over 4 years ago)
- Default Branch: develop
- Last Pushed: 2025-01-24T17:03:47.000Z (over 1 year ago)
- Last Synced: 2025-01-26T04:41:43.294Z (over 1 year ago)
- Topics: android, earthquake, flutter
- Language: Dart
- Homepage: https://eqmonitor.app/
- Size: 83.5 MB
- Stars: 196
- Watchers: 8
- Forks: 11
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# EQMonitor - 地震速報・監視アプリケーション
[](https://github.com/EQMonitor/EQMonitor/tags)
[](https://github.com/EQMonitor/EQMonitor/releases/latest)
| Android | iOS |
| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| [
](https://play.google.com/store/apps/details?id=net.yumnumm.eqmonitor) | [
](https://apps.apple.com/ja/app/eqmonitor-%E5%9C%B0%E9%9C%87%E9%80%9F%E5%A0%B1/id6447546703) |
> [!WARNING] > [利用規約 - Term of Service](https://github.com/EQMonitor/EQMonitor/blob/main/assets/docs/term_of_service.md)を必ずご確認の上ご利用ください。

## 概要
EQMonitorは、日本全国の地震情報をいち早く受信できるアプリケーションです。
**_機能_**
- **地震情報・緊急地震速報の通知**
気象庁により発表された地震情報や、緊急地震速報を受信し、通知します。
- **過去の地震履歴の閲覧**
過去に発表された地震情報を遡って確認できます。
- **緊急地震速報のリアルタイム表示**
緊急地震速報が発表された際に、P波・S波の予想到達範囲、予想最大震度、震央地を表示します。
緊急地震速報は、リアルタイムに更新され、インターネットに接続されていれば、どこからでも確認できます。
- **強震モニタの表示**
防災科学技術研究所の提供するWebサービス 強震モニタ を表示します。
(※ 強震モニタは、揺れの様子を直感的に捉えることを目的としています。また、リアルタイムで観測値を処理しているため、ノイズ等により観測値が変動します。
そのため、本アプリケーションで表示される観測値は、あくまで参考値としてご利用ください。)
## 環境構築
下記のコマンドをターミナルから実行してください。
1. [mise](https://mise.jdx.dev/)をインストールしてください
1. Swift Package Managerを利用するために、以下のコマンドを実行してください
- [Swift Package Manager for app developers](https://docs.flutter.dev/packages-and-plugins/swift-package-manager/for-app-developers)
```bash
flutter config --enable-swift-package-manager
```
1. Dartプロジェクトを管理するためのツールである[melos](https://melos.invertase.dev/)をインストールします。
- `dart pub global activate melos` を実行してください。
- 詳細は、[Get Started](https://melos.invertase.dev/~melos-latest/getting-started)を参照してください。
1. `melos bootstrap` を実行してください。
- これにより、各パッケージの依存関係が解決されます。
1. `mv environment/.env.example environment/.env.dev` を実行してください。
1. `flutter run` でアプリケーションを起動します。
## アーキテクチャ
- アプリケーション
- 状態管理: Riverpod, Flutter Hooks
- データ取得: Dio, retrofit, eqapi_client
- JSONシリアライズ/デシリアライズ: freezed, json_serializable
- マップ: flutter-maplibre
- エッジサーバサイド(API)
- 実行環境: Cloudflare Workers
- データベース: Cloudflare D1 + Supabase
- キャッシュ: Cloudflare KV
- WebSocket(Fallback): Cloudflare Durable Objects
- バックエンド(通知配信, DB追加, データ加工, WebSocket, 揺れ検知)
- 実行環境: Oracle Cloud Infrastructure Compute Instance, Docker Compose
- データベース(キャッシュ用): PostgreSQL
- 言語: Node.js(TS), Bun(TS), Golang, C#