Struktur project sudah dipisah menjadi:
backend/untuk API + MQTT subscriberfrontend/untuk aplikasi frontend
Jalankan SQL berikut:
SOURCE backend/database/schema.sql;Atau copy isi backend/database/schema.sql ke MySQL client.
cp backend/.env.example backend/.envEdit backend/.env sesuai kredensial MySQL kamu.
Tambahkan juga konfigurasi API eksternal untuk cuaca dan pasang surut:
WEATHER_API_BASE_URL=https://api.bmkg.go.id/publik/prakiraan-cuaca?adm4=35.29.13.2007
WEATHER_API_KEY=
WEATHER_LOCATION_LAT=-7.0167
WEATHER_LOCATION_LON=113.8667
TIDE_API_BASE_URL=
TIDE_API_KEY=
TIDE_STATION_CODE=sumenepnpm install --prefix backend
npm install --prefix frontendnpm run build --prefix frontendnpm start --prefix backendAkses:
- Frontend:
http://localhost:3000 - API all data:
http://localhost:3000/api/sensor-data - API latest:
http://localhost:3000/api/sensor-data/latest
Endpoint backend baru:
GET /api/external/configambil konfigurasi integrasi aktifPUT /api/external/configsimpan konfigurasi dari frontendPOST /api/external/weather/fetchfetch cuaca dari provider eksternalPOST /api/external/tide/fetchfetch pasang surut dari provider eksternalPOST /api/external/fetch-allfetch cuaca + pasang surut sekaligus
Semua endpoint di atas sudah terhubung ke halaman Pengaturan (/settings) agar URL API, API key, dan lokasi/stasiun bisa diubah langsung dari web.