Assist Hub 어시스트 허브
A personal productivity console that unifies a learning materials library, multi-source bulletin board (RSS + Google Classroom), and Google Calendar schedule — built as a zero-config single-user tool with SQLite and Next.js App Router. 학습 자료 라이브러리, 멀티소스 게시판(RSS + Google Classroom), Google Calendar를 하나로 통합하는 개인 생산성 허브 — SQLite와 Next.js App Router 기반의 설정 없는 단일 사용자 도구.
Problem 문제 정의
Scattered Learning Resources학습 자료 분산
Learning materials spread across bookmarks, Notion pages, and Google Drive with no unified search or taxonomy.학습 자료가 북마크, Notion, Google Drive에 분산돼 통합 검색이나 분류 체계가 없었음.
Notification Overload알림 과부하
Announcements from Google Classroom, RSS feeds, and email arrived in separate channels with no consolidated feed.Google Classroom, RSS, 이메일 공지가 각각 다른 채널로 분산 수신돼 통합 피드가 없었음.
Context Switching컨텍스트 스위칭
Checking schedule required opening Google Calendar separately, breaking focus from learning or task work.일정 확인을 위해 Google Calendar를 별도로 열어야 해 학습·작업 흐름이 끊겼음.
Approach 접근 방식
Single App Router + Google API Aggregation단일 App Router + Google API 통합
Next.js 16 App Router fetches Google Calendar and Classroom data server-side via Google APIs, merges with RSS feed items stored in Prisma/SQLite, and renders everything as a unified dashboard. No separate backend process — all orchestration happens inside Server Components and Route Handlers.
Next.js 16 App Router가 서버사이드에서 Google Calendar·Classroom 데이터를 Google API로 패칭하고, Prisma/SQLite에 저장된 RSS 피드 항목과 병합해 통합 대시보드로 렌더링. 별도 백엔드 프로세스 없이 Server Components와 Route Handlers 내부에서 모든 오케스트레이션 처리.
Features 주요 기능
01
Learning Console Dashboard학습 콘솔 대시보드
At-a-glance overview of today's schedule, recent materials, and pending announcements — rendered as a single RSC page with no client-side data fetching.오늘 일정, 최근 자료, 미확인 공지를 한눈에 — 클라이언트 데이터 패칭 없이 단일 RSC 페이지로 렌더링.
02
Materials Library학습 자료 라이브러리
Tag-based learning resource library with full-text search. Resources are stored in SQLite via Prisma with type (video, article, book, tool) and subject metadata.태그 기반 학습 자료 라이브러리와 전문 검색. 유형(동영상, 글, 책, 도구)·과목 메타데이터와 함께 Prisma/SQLite에 저장.
03
Multi-Source Bulletin멀티소스 게시판
3-in-1 notification feed: Google Classroom announcements, RSS articles, and system notes — consolidated into a unified timeline with source tagging and read/unread state.3-in-1 알림 피드: Google Classroom 공지, RSS 기사, 시스템 노트를 소스 태그 및 읽음 상태와 함께 통합 타임라인으로 표시.
04
Schedule & Calendar일정 및 캘린더
Google Calendar integration via OAuth2 service account — displays upcoming events in a compact weekly view without leaving the dashboard.OAuth2 서비스 계정으로 Google Calendar 통합 — 대시보드를 떠나지 않고 압축 주간 뷰로 예정된 일정 표시.
Architecture 아키텍처
Metrics 성과 지표
Notification Sources
3
unified feed
Google APIs
2
integrated
Config Required
Zero
SQLite local
Target Users
1
personal tool
Before / After 도입 전후 비교
| Aspect | Before | After |
|---|---|---|
| Learning materials | Scattered bookmarks + Notion | Unified tagged library |
| Announcements | 3 separate app checks daily | Single consolidated feed |
| Schedule access | Open Google Calendar tab | Inline weekly view on dashboard |
| Setup complexity | Multiple app configs needed | Zero-config SQLite local install |
Tech Stack
Next.js 16
App Router
Prisma
SQLite
Google Calendar API
Google Classroom API
RSS