feat: 완전한 Tapo 스마트 플러그 백엔드 시스템 구현

 새로운 기능:
- Tapo P110/P100 스마트 플러그 완전 연동
- 동적 기기 관리 (추가/제거/수정)
- 실시간 전력 데이터 수집 API
- 설정 파일 기반 확장 가능한 아키텍처

🔧 기술 개선:
- Docker Compose 파일 통합 (mac-mini 전용 제거)
- MariaDB 설정 최적화 (호환성 문제 해결)
- 포트 구조 개선 (9304-9307 대역 사용)
- Express.js 기반 RESTful API 완성

📚 문서화:
- README 전면 업데이트 (구현된 API 반영)
- Tapo API 엔드포인트 상세 문서화
- 실제 사용 가능한 curl 예제 추가

🗄️ 데이터베이스:
- MariaDB 11 안정화
- Redis 캐시 시스템 구축
- 사용자 권한 모델 준비

🚀 Docker 환경:
- 단일 docker-compose.yml로 통합
- 포트 충돌 해결
- 헬스체크 및 자동 재시작 설정
This commit is contained in:
Hyungi Ahn
2025-08-12 10:55:12 +09:00
parent 4b77086bb2
commit 1a01809a6e
12 changed files with 8018 additions and 200 deletions

View File

@@ -17,29 +17,30 @@
"lint:fix": "eslint src/ --fix"
},
"dependencies": {
"express": "^4.18.2",
"mysql2": "^3.6.0",
"sequelize": "^6.32.1",
"redis": "^4.6.7",
"bcryptjs": "^2.4.3",
"jsonwebtoken": "^9.0.2",
"joi": "^17.9.2",
"helmet": "^7.0.0",
"cors": "^2.8.5",
"compression": "^1.7.4",
"express-rate-limit": "^6.8.1",
"winston": "^3.10.0",
"node-cron": "^3.0.2",
"cors": "^2.8.5",
"dotenv": "^16.3.1",
"express": "^4.18.2",
"express-rate-limit": "^6.8.1",
"express-validator": "^7.0.1",
"moment": "^2.29.4"
"helmet": "^7.0.0",
"joi": "^17.9.2",
"jsonwebtoken": "^9.0.2",
"moment": "^2.29.4",
"mysql2": "^3.6.0",
"node-cron": "^3.0.2",
"redis": "^4.6.7",
"sequelize": "^6.32.1",
"tp-link-tapo-connect": "^2.0.7",
"winston": "^3.10.0"
},
"devDependencies": {
"nodemon": "^3.0.1",
"jest": "^29.6.1",
"supertest": "^6.3.3",
"eslint": "^8.45.0",
"prettier": "^3.0.0"
"jest": "^29.6.1",
"nodemon": "^3.0.1",
"prettier": "^3.0.0",
"supertest": "^6.3.3"
},
"engines": {
"node": ">=18.0.0"
@@ -53,4 +54,4 @@
],
"author": "hyungi",
"license": "MIT"
}
}