Skip to content

Commit 645aa40

Browse files
committed
🏗 Restructure project and update README to v2.0.0
📝 Summary: Cleaned up project structure by removing unnecessary desktop platform folders and updated README.md to reflect the current v2.0.0 state including Offline Maps, Material 3 Design, and fixed repository URLs. 🔧 Changes: - 🗑️ Removed linux/ folder (desktop platform not needed for mobile app) - 🗑️ Removed macos/ folder (desktop platform not needed for mobile app) - 🗑️ Removed outdated docs (architecture docs now superseded) - 📚 Updated README.md with v2.0.0 features and fixed repo URL - ✨ Added project restructure analysis docs - 🎨 Auto-formatted injection.config.dart 📁 Files Changed: - README.md (updated) - lib/src/core/di/injection.config.dart (formatted) - docs/GIT_HISTORY_ANALYSIS.md (new) - docs/RESTRUCTURE_ANALYSIS.md (new) - linux/ (deleted) - macos/ (deleted) - docs/current_offline_map_architecture.md (deleted) - docs/modular_offline_maps_architecture.md (deleted) - docs/research/philippine-islands-boundaries-2025-12-11.md (deleted)
1 parent ae63113 commit 645aa40

14 files changed

Lines changed: 24 additions & 1654 deletions

README.md

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
44
[![Flutter](https://img.shields.io/badge/Built%20with-Flutter-blue.svg)](https://flutter.dev/)
5-
[![Status](https://img.shields.io/badge/Status-Active-success.svg)]()
5+
[![CI](https://github.com/MasuRii/ph-fare-calculator/actions/workflows/ci.yml/badge.svg)](https://github.com/MasuRii/ph-fare-calculator/actions/workflows/ci.yml)
6+
[![Version](https://img.shields.io/badge/version-2.0.0-blue.svg)](https://github.com/MasuRii/ph-fare-calculator/releases)
67

78
**PH Fare Calculator** is a cross-platform mobile application designed to help tourists, expats, and locals estimate public transport costs across the Philippines.
89

@@ -11,6 +12,8 @@ Unlike city-centric navigation apps, this tool focuses on **"How much?"** rather
1112
## 🚀 Key Features
1213

1314
- **Nationwide Coverage:** Works in Metro Manila, Cebu, Davao, and rural provinces.
15+
- **Modular Offline Maps:** Download maps by island group (Luzon, Visayas, Mindanao) to save storage space while ensuring functionality without internet.
16+
- **Material 3 Design:** A completely redesigned UI/UX that follows modern Material Design guidelines for better accessibility and aesthetics.
1417
- **Hybrid Calculation Engine:**
1518
- **Dynamic:** Uses **OSRM (Open Source Routing Machine)** to calculate road distance for Jeeps, Taxis, Buses, and Tricycles.
1619
- **Static:** Uses embedded Lookup Tables for fixed-price modes like MRT/LRT (Trains) and Ferries.
@@ -29,6 +32,8 @@ Unlike city-centric navigation apps, this tool focuses on **"How much?"** rather
2932
- **State Management & DI:** `injectable` + `get_it` for dependency injection.
3033
- **Routing:** **OSRM** (Open Source Routing Machine) for road distances.
3134
- **Geocoding:** **OpenStreetMap (Nominatim)** via `http` for place search and reverse geocoding.
35+
- **Offline Maps:** `flutter_map_tile_caching` for downloading and storing map regions.
36+
- **Connectivity:** `connectivity_plus` for smart online/offline network detection.
3237
- **Local Storage:** `hive` for persisting saved routes and `shared_preferences` for user settings.
3338
- **Maps:** `flutter_map` with `latlong2`.
3439

@@ -53,14 +58,17 @@ Distance formulas fail here (e.g., Rail distance ≠ Road distance).
5358
```
5459
lib/
5560
├── src/
56-
│ ├── core/ # Core logic (HybridEngine, DI, Errors)
57-
│ ├── models/ # Data models (FareResult, Location, TransportMode, etc.)
58-
│ ├── presentation/ # Flutter UI
59-
│ │ ├── screens/ # MainScreen, Settings, OfflineMenu, etc.
60-
│ │ └── widgets/ # Reusable components (FareResultCard, etc.)
61-
│ ├── repositories/ # Data access layers
61+
│ ├── core/ # Core logic (HybridEngine, DI, Errors, Theme)
62+
│ ├── models/ # Data models (FareResult, Location, MapRegion, etc.)
63+
│ ├── presentation/ # Flutter UI (Material 3)
64+
│ │ ├── controllers/ # State management controllers
65+
│ │ ├── screens/ # MainScreen, Settings, RegionDownload, etc.
66+
│ │ └── widgets/ # Reusable components
67+
│ ├── repositories/ # Data access layers (Fare, Region)
6268
│ ├── services/ # External services
69+
│ │ ├── connectivity/ # Network status detection
6370
│ │ ├── geocoding/ # OpenStreetMap/Nominatim implementation
71+
│ │ ├── offline/ # Offline map management
6472
│ │ └── routing/ # OSRM & Haversine routing services
6573
│ └── l10n/ # Localization (English/Tagalog)
6674
└── main.dart
@@ -70,7 +78,7 @@ lib/
7078

7179
1. **Clone the repository**
7280
```bash
73-
git clone https://github.com/yourusername/ph-fare-calculator.git
81+
git clone https://github.com/MasuRii/ph-fare-calculator.git
7482
cd ph-fare-calculator
7583
```
7684

@@ -94,5 +102,13 @@ lib/
94102

95103
This app provides **estimates only**. Official fares are regulated by the LTFRB/DOTr and are subject to change without notice. This app is not affiliated with any government agency. The "Tourist Trap" indicator is an estimate based on high-traffic pricing models and does not constitute a legal accusation.
96104

105+
## 🤝 Contributing
106+
107+
Contributions are welcome! Please feel free to submit a Pull Request.
108+
109+
## 📄 License
110+
111+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
112+
97113
---
98114
*Built with ❤️ for Philippine Commuters.*

docs/current_offline_map_architecture.md

Lines changed: 0 additions & 114 deletions
This file was deleted.

0 commit comments

Comments
 (0)