Skip to content

Phase 5 & 6: Projects, Discord, donna-server (24/7), 10 new features, Resend design - #2

Merged
duckyquang merged 3 commits into
mainfrom
feat/phase-5-projects-discord-proactive
Jun 20, 2026
Merged

Phase 5 & 6: Projects, Discord, donna-server (24/7), 10 new features, Resend design#2
duckyquang merged 3 commits into
mainfrom
feat/phase-5-projects-discord-proactive

Conversation

@duckyquang

Copy link
Copy Markdown
Owner

Summary

Two phases of major feature work — Projects, Discord bot, donna-server (24/7), 10 new features, and a Resend-vibe design overhaul.

Phase 5

Backend

  • db.rsprojects table + CRUD
  • integrations/discord.rs (new) — Discord bot token in OS keychain
  • commands.rs — 10 new commands: project_*, discord_*, fathom_process_recent_meeting
  • lib.rs — window hides on close (app stays alive); all new commands registered
  • scheduler.rsafter_meeting routine type for post-Fathom debriefs

Frontend

  • tailwind.config.ts — Resend-vibe dark tokens, JetBrains Mono, card shadows
  • components/ui.tsx — Badge, Card, Input, EmptyState; Button size/success variant
  • routes/Projects.tsx (new) — 3-column: project list, file tree, in-app editor with Cmd+S
  • routes/Integrations.tsx — Discord section
  • Sidebar.tsx — Projects + Productivity nav

Phase 6

10 new features

  1. Daily Tech News (HN top 15 at 9am → WhatsApp)
  2. Weekly Review (Sunday 8pm)
  3. End-of-Day Journal (daily 6pm → KB)
  4. Reading List with AI summarise
  5. Focus Sessions with circular countdown
  6. Habit Tracker with daily check-ins
  7. Project Status Report (AI reads files → doc)
  8. Weather in Morning Briefing (Open-Meteo, free)
  9. Post-meeting debrief (auto 10 min after event ends)
  10. Pre-call WhatsApp briefing (30 min before meeting)

donna-server — standalone Rust binary for 24/7 without the desktop. Runs on Oracle Cloud Free Tier, Fly.io, Raspberry Pi, or Docker. Handles news, weather, calendar briefings, and meeting prep via env vars.

MindMap — refactor of force-directed layout, node sizing, edge rendering, and global styles.

Test plan

  • cargo check passes (zero errors)
  • New Coding and Research Paper projects scaffold correctly
  • In-app file editor saves with Cmd+S
  • Open in Editor launches Cursor then VS Code
  • Discord token connect/disconnect works
  • Productivity tab: News, Reading List, Focus timer, Habits
  • Window close hides app (stays alive in background)
  • cd donna-server && cargo run starts successfully

🤖 Generated with Claude Code

duckyquang and others added 3 commits June 20, 2026 16:56
## New integrations (backend)
- `integrations/news.rs` — Hacker News top stories via free JSON API
- `integrations/weather.rs` — Open-Meteo current weather (free, no key)

## 10 new features shipped
1. **Daily Tech News** — built-in routine at 9am fetches HN top 15, formats
   digest, sends to WhatsApp/Telegram; also triggerable manually
2. **Weekly Review** — built-in routine every Sunday 8pm
3. **End-of-Day Journal** — built-in routine daily at 6pm with reflection prompts
4. **Reading List** — save URLs, AI-summarize with one click; full CRUD
5. **Focus Sessions** — start 25/45/90-min blocks with live circular countdown
6. **Habit Tracker** — create habits, one-tap daily check-in, streak-ready
7. **Project Status Report** — AI-generated report from project files → saved as doc
8. **Weather in Morning Briefing** — Open-Meteo (lat/lon from KB settings)
9. **Pre-call WhatsApp delivery** — all routine outputs now also push to
   WhatsApp (user's own number from `whatsapp_my_number` setting) or Telegram
10. **Post-meeting debriefs** — scheduler `after_meeting` type auto-processes
    Fathom summaries when a calendar event ends

## Backend
- `db.rs` — 4 new tables (reading_list, focus_sessions, habits, habit_logs);
  3 new structs; 11 new Db methods; 3 new seed routines
- `scheduler.rs` — WhatsApp/Telegram delivery after every routine; HN news
  context for tech_news routine; weather context for morning_briefing
- `commands.rs` — 13 new commands registered + editor priority fixed (Cursor first)
- `lib.rs` — all new commands registered

## Frontend
- `routes/Productivity.tsx` (new) — tabbed News / Reading List / Focus /
  Habits view with live focus timer, circular progress ring, habit check-ins
- `routes/Projects.tsx` — "Status Report" button in project header
- `components/Sidebar.tsx` — Productivity (⚡) nav item
- `lib/api.ts` — 3 new types + 13 new api methods

## donna-server (new directory)
Standalone headless Rust binary for 24/7 operation without the desktop app.
Runs on Oracle Cloud free tier, Fly.io, Raspberry Pi, or any Linux machine.
Handles: morning briefing, daily news, pre-meeting WhatsApp briefings, weekly
review. All config via env vars (DONNA_WHATSAPP_TOKEN, DONNA_GOOGLE_*…).
Includes Dockerfile (two-stage, ~10 MB image), .env.example, README with
deployment guides for Oracle, Fly.io, and Raspberry Pi systemd.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Significant rework of the knowledge-graph visualisation layer:
- KgCircleNode / MindMapGraphLinks — updated node sizing and edge rendering
- forceLayout.ts — improved force-directed layout algorithm
- MindMap.tsx — restructured component tree and interaction model
- global.css — expanded global style definitions

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
@duckyquang
duckyquang merged commit 0e4a91b into main Jun 20, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant