Skip to content

danielrosehill/Day-Planner-Dashboard

Repository files navigation

Daily Dashboard

alt text

A small local desktop dashboard optimized for a 7" screen. It shows:

  • Local and UTC time; human-friendly date
  • Five latest emails (combined across connected Google accounts)
  • Today and tomorrow agenda (combined across accounts)
  • Next meeting countdown
  • Local weather (Jerusalem by default) and tomorrow forecast
  • Three latest Google News (Israel) headlines

Quick start

  • Install Python 3.10+.
  • Create a virtualenv and install deps: pip install -r requirements.txt.
  • Copy example config and env, then edit as needed:
    • cp config.example.json config.json (optional — or use the in‑app Settings page)
    • cp .env.example .env (optional — for WAQI_TOKEN, host/port)
  • Place your Google OAuth Desktop client in the repo root named like client_secret_*.json.
    • The file is git‑ignored to avoid accidental commits.
  • Run the app: python app.py then open http://127.0.0.1:5000.
  • Connect your Google account(s): visit http://127.0.0.1:5000/auth/google. Repeat to add a second account. Tokens are written under tokens/ (git‑ignored).

Notes

  • Weather uses Open‑Meteo (no API key). Location defaults to Jerusalem; adjust DEFAULT_LAT/LON in app.py if needed.
  • News uses Google News RSS for Israel (English). Adjust the feed_url in /api/news if desired.
  • Gmail date parsing is best-effort for relative times; Google APIs return RFC/ISO timestamps.
  • The UI auto-refreshes: time every 15s; email/agenda every 60s; weather every 5m; news every 10m.

Sanitization and safety

  • No personal emails are in defaults. personal and business default to empty.
  • Example camera URLs use documentation addresses (192.0.2.0/24). Replace with your own local IPs.
  • Secrets and local data are excluded from version control via .gitignore:
    • config.json, client_secret_*.json, .env, and tokens/ are ignored.
    • Only config.example.json and .env.example are included.

Layout

  • CSS grid arranges four cards: clock, next-meeting+weather, emails, agenda+news. Designed to fit 800×480/1024×600.

Troubleshooting

  • If Google auth libraries aren’t installed, install deps via pip install -r requirements.txt.
  • If Google OAuth fails, confirm the OAuth client type is “Desktop app”. The local flow opens a browser and stores tokens under tokens/.
  • To reset accounts, delete files under tokens/ and re‑auth.

About

Day planner dashboard config with email, calendar, news, IP cam, weather

Topics

Resources

Stars

Watchers

Forks

Contributors 2

  •  
  •