WaterMirror is a cross-platform mobile client for collecting and submitting water quality measurements to an analysis backend. The app provides data upload, validation, and results display features in a compact, production-oriented interface.
- Dissolved oxygen (DO)
- Biochemical oxygen demand (BOD)
- Suspended solids (SS)
- Ammonia nitrogen (NH3-N)
- Electrical conductivity (EC)
- Node.js 16+ or 18+
- npm 8+ or yarn 1/3
- Expo CLI (
npx expo) for local run
git clone https://github.com/KageRyo/WaterMirror.git
cd WaterMirror
npm installSet backend config in src/config.json:
{
"api_url": "http://127.0.0.1",
"port": "8000"
}Start the app:
npx expo start- For local development, run on simulator/emulator via Expo.
- For production, follow Expo's published app workflow.
WaterMirror expects an API server endpoint for inferencing. Use MPR_Model (or similar) as backend and ensure network authorization is configured.
The accepted format is CSV with a header row containing columns:
DO,BOD,NH3N,EC,SS
Example row:
7.2,3.1,0.5,280,45
- File system access for upload
- Network access for backend communication
src/: application source codeassets/: static assets and imagessrc/config.json: environment configuration
- Fork repository
- Create feature branch
- Add tests/manual test notes
- Open pull request
Apache License 2.0. See LICENSE.
- Chien-Hsun Chang (KageRyo)
- Kuo-Wei Wu (RRAaru)