[{"title":"( 45 个子文件 237KB ) water_leak_detector:检测漏水","children":[{"title":"water_leak_detector-main","children":[{"title":"arduino_water_detector","children":[{"title":"README.md <span style='color:#111;'> 202B </span>","children":null,"spread":false},{"title":"arduino_water_detector.ino <span style='color:#111;'> 347B </span>","children":null,"spread":false}],"spread":true},{"title":"deploy_app.bat <span style='color:#111;'> 54B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 335B </span>","children":null,"spread":false},{"title":"deploy_backend.bat <span style='color:#111;'> 84B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 87B </span>","children":null,"spread":false},{"title":"server","children":[{"title":"limiters.js <span style='color:#111;'> 570B </span>","children":null,"spread":false},{"title":"model","children":[{"title":"User.js <span style='color:#111;'> 514B </span>","children":null,"spread":false},{"title":"Phonedata.js <span style='color:#111;'> 319B </span>","children":null,"spread":false},{"title":"Leak.js <span style='color:#111;'> 376B </span>","children":null,"spread":false},{"title":"Detector.js <span style='color:#111;'> 353B </span>","children":null,"spread":false}],"spread":true},{"title":"README.md <span style='color:#111;'> 2.11KB </span>","children":null,"spread":false},{"title":"index.js <span style='color:#111;'> 2.52KB </span>","children":null,"spread":false},{"title":"routes","children":[{"title":"db","children":[{"title":"db.js <span style='color:#111;'> 3.86KB </span>","children":null,"spread":false}],"spread":true},{"title":"auth","children":[{"title":"auth.js <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"validation.js <span style='color:#111;'> 874B </span>","children":null,"spread":false},{"title":"isValidDetectorMiddleware.js <span style='color:#111;'> 891B </span>","children":null,"spread":false},{"title":"isAdminMiddleware.js <span style='color:#111;'> 758B </span>","children":null,"spread":false},{"title":"verifyTokenMiddleware.js <span style='color:#111;'> 756B </span>","children":null,"spread":false}],"spread":true},{"title":"io","children":[{"title":"handlers.js <span style='color:#111;'> 305B </span>","children":null,"spread":false}],"spread":false},{"title":"api.js <span style='color:#111;'> 302B </span>","children":null,"spread":false}],"spread":true},{"title":"package-lock.json <span style='color:#111;'> 158.77KB </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 653B </span>","children":null,"spread":false}],"spread":true},{"title":"raspi_serial_moniter","children":[{"title":"moniter.py <span style='color:#111;'> 1.60KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 561B </span>","children":null,"spread":false},{"title":"send_req.py <span style='color:#111;'> 503B </span>","children":null,"spread":false}],"spread":true},{"title":"mobile","children":[{"title":".expo-shared","children":[{"title":"assets.json <span style='color:#111;'> 155B </span>","children":null,"spread":false}],"spread":true},{"title":"babel.config.js <span style='color:#111;'> 107B </span>","children":null,"spread":false},{"title":"Login.js <span style='color:#111;'> 1.60KB </span>","children":null,"spread":false},{"title":"assets","children":[{"title":"splash.png <span style='color:#111;'> 17.80KB </span>","children":null,"spread":false},{"title":"favicon.png <span style='color:#111;'> 17.80KB </span>","children":null,"spread":false},{"title":"icon.png <span style='color:#111;'> 17.80KB </span>","children":null,"spread":false},{"title":"loading.gif <span style='color:#111;'> 49.40KB </span>","children":null,"spread":false}],"spread":true},{"title":"App.js <span style='color:#111;'> 9.97KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 410B </span>","children":null,"spread":false},{"title":"Loading.js <span style='color:#111;'> 494B </span>","children":null,"spread":false},{"title":"Functions.js <span style='color:#111;'> 241B </span>","children":null,"spread":false},{"title":"Styles.js <span style='color:#111;'> 1.00KB </span>","children":null,"spread":false},{"title":"app.json <span style='color:#111;'> 596B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 118B </span>","children":null,"spread":false},{"title":"Home.js <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"Register.js <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false},{"title":"Settings.js <span style='color:#111;'> 825B </span>","children":null,"spread":false},{"title":"package-lock.json <span style='color:#111;'> 324.95KB </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.00KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}]