e2f00c6e21e7ae2c1393bc4654db68aa48520bc1
- **Frontend (Flutter)**
- Optimize for Google TV: Force Landscape mode, disable touchscreen requirement, and set TV Dashboard as default home.
- Weather Widget:
- Add Daily Max/Min temperature ('최고/최저').
- Add Air Quality Index (AQI) with visual indicator ('미세먼지').
- Increase font sizes and adjust layout to match Digital Clock style.
- Implement 1-hour auto-refresh timer.
- Model: Update WeatherInfo to support tempMin, tempMax, and aqi.
- **Backend (Node.js)**
- Weather API (/api/weather):
- Implement daily forecast aggregation logic (Seoul Time KST) to calculate accurate daily High/Low.
- Integrate OpenWeatherMap Air Pollution API to fetch AQI.
Bini Google TV Dashboard
Google TV용 대시보드 앱과 백엔드 API 프로젝트입니다.
구성
backend: Node.js + Express + MongoDB APIflutter_app: Flutter Google TV 앱
백엔드 실행 (로컬)
cd backend
cp .env.example .env
# .env에 OPENWEATHER_API_KEY 등 필요한 값 설정
npm install
npm start
MongoDB
로컬 MongoDB가 필요합니다.
- 기본 연결:
mongodb://localhost:27017/google-tv-dashboard - 변경 시
backend/.env의MONGODB_URI수정
백엔드 실행 (Docker)
docker compose up -d
Flutter 빌드
cd flutter_app
flutter build apk --release
서버 주소 주입
Google TV에서 로컬 백엔드로 연결하려면 Mac의 IP를 사용하세요.
flutter build apk --release --dart-define=API_BASE_URL=http://<MAC_IP>:4000
APK 설치
생성된 APK 경로:
flutter_app/build/app/outputs/flutter-apk/app-release.apk
Google TV 설치 (USB 메모리)
- APK를 USB 메모리에 복사
- TV에 USB 꽂기
- 파일 관리자 앱에서 APK 실행 → 설치
어드민
관리 화면에서 성경 말씀을 등록할 수 있습니다.
- 랜덤 노출
- 날짜 지정은 옵션
환경 변수
backend/.env.example 참고
Description
Languages
Dart
82.4%
JavaScript
16.9%
HTML
0.6%