Skip to content

coreline-ai/node_aiweb_news

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

AI 뉴스 5분 브리핑 (AI News 5-Min Dashboard)

Project Status: Active License: ISC Platform: Node.js Stack: Serverless

매일 최신 AI 트렌드를 수집, 중복 제거, 요약하여 5분 만에 파악할 수 있는 일일 리포트를 제공하는 자동화된 뉴스 애그리게이터입니다. 서버리스 아키텍처를 기반으로 효율적이고 확장성 있게 구축되었습니다.

데모보기 : https://ai-news-5min-dashboard.netlify.app/

📖 소개 (About)

이 프로젝트는 바쁜 현대인이 매일 쏟아지는 AI 관련 소식을 단 5분 만에 파악할 수 있도록 돕는 자동화된 뉴스 대시보드입니다. 서버리스 파이프라인을 활용하여 다양한 소스에서 뉴스를 수집하고, 유사한 기사를 클러스터링하여 중복을 제거한 뒤, LLM을 활용해 핵심 요약과 "주목해야 할 이유(Why it matters)"를 생성합니다.

✨ 주요 기능

  • 🤖 자동 수집: 20개 이상의 주요 AI 및 테크 RSS 피드를 매일 자동으로 스크랩합니다.
  • 🧹 스마트 중복 제거: 유사도 알고리즘을 사용하여 비슷한 기사들을 하나로 묶어 정보의 중복을 제거합니다.
  • 🧠 AI 기반 요약: Hugging Face Inference API를 활용하여 각 뉴스 클러스터의 핵심 내용을 요약하고 분석합니다.
  • ⚡ 서버리스 & 고속: Netlify Functions와 Neon (Serverless Postgres) 기반으로 구축되어 유지보수가 필요 없고 확장이 용이합니다.
  • 📅 일일 리포트: 매일의 브리핑 내용을 정적 JSON으로 생성하여 즉각적인 로딩과 아카이빙을 지원합니다.

🛠️ 기술 스택 (Tech Stack)

  • 런타임: Node.js TypeScript
  • 데이터베이스: PostgreSQL
  • 클라우드 & 호스팅: Netlify
  • AI 모델: Hugging Face

🏗️ 아키텍처

이 시스템은 매일 4단계의 파이프라인으로 작동합니다:

  1. 수집 (Collect): 활성화된 RSS 소스에서 기사를 수집하고, 신뢰도가 높은 소스나 AI 키워드를 기준으로 필터링합니다.
  2. 클러스터링 (Cluster): 관련된 기사들을 그룹화하여 주요 뉴스 이벤트를 식별합니다.
  3. 요약 (Summarize): 각 클러스터에 대한 요약과 핵심 통찰을 생성합니다.
  4. 리포트 생성 (Build Report): 프론트엔드에서 사용할 수 있도록 데이터를 정적 JSON으로 컴파일합니다.

🚀 시작하기 (Getting Started)

사전 요구 사항

  • Node.js (v18 이상)
  • npm
  • Netlify CLI (npm install -g netlify-cli)
  • Neon Database 계정 (PostgreSQL)
  • Hugging Face API Key

설치 방법

  1. 레포지토리 클론

    git clone https://github.com/HwanChoi/node_aiweb_news.git
    cd node_aiweb_news
  2. 의존성 설치

    npm install
  3. 환경 설정 루트 디렉토리에 .env 파일을 생성합니다:

    DATABASE_URL=postgres://user:pass@host/db?sslmode=require
    HF_API_KEY=your_hugging_face_token
    ADMIN_PASSWORD=secure_password
    JWT_SECRET=random_secret_string
  4. 데이터베이스 초기화

    npm run db:init       # 테이블 생성
    npm run db:init-admin # 관리자 계정 생성
    npm run db:seed       # 초기 소스 데이터 시딩

로컬 개발 (Local Development)

Netlify 개발 서버를 실행하여 서버리스 환경을 시뮬레이션합니다:

npm run dev

대시보드는 http://localhost:8888에서 확인할 수 있습니다.

📂 프로젝트 구조

  • netlify/functions/: 백엔드 서버리스 함수 (워커 & API).
  • scripts/: 관리 및 유지보수 스크립트 (DB 설정, 로컬 파이프라인 실행기).
  • src/lib/: 공용 유틸리티 (데이터베이스, RSS 파서, 헬퍼).
  • public/: 정적 프론트엔드 에셋.

📄 라이선스 (License)

이 프로젝트는 ISC 라이선스를 따릅니다.

Copyright (c) 2026 Antigravity

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

About

AI 뉴스 수집·중복 제거·LLM 요약을 제공하는 5분 브리핑 대시보드 | 5-minute AI news briefing dashboard with collection, deduplication, and LLM summaries

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors