본문으로 건너뛰기

© 2026 Molayo

GH Trending릴리즈2026. 05. 20. 19:42

OpenWA: 오픈 소스 WhatsApp API 게이트웨이

요약

OpenWA는 벤더 종속성 없이 메시징 인프라를 완전히 제어할 수 있도록 설계된 무료 오픈 소스 WhatsApp API 게이트웨이입니다. 플러그형 아키텍처를 채택하여 데이터베이스, 스토리지, 캐시 레이어를 자유롭게 교체할 수 있으며, Docker를 통해 손쉽게 배포가 가능합니다.

핵심 포인트

  • 플러그형 아키텍처를 통해 SQLite/PostgreSQL, Local/S3, Memory/Redis 등 구성 요소 교체 가능
  • React 기반의 현대적인 대시보드를 제공하여 세션, 웹훅, API 키 관리 지원
  • 멀티 세션 지원 및 n8n 워크플로 자동화 통합 기능 제공
  • Docker 네이티브 환경을 지원하여 프로덕션 환경에 즉시 적용 가능

오픈 소스 WhatsApp API 게이트웨이 (Open Source WhatsApp API Gateway)

기능 (Features) • 빠른 시작 (Quick Start) • 문서 (Docs) • API • 기여하기 (Contributing)

OpenWA는 벤더 종속 (vendor lock-in)이나 숨겨진 유료 결제 없이 메시징 인프라에 대한 완전한 제어가 필요한 개발자들을 위해 설계된 무료 오픈 소스 WhatsApp API 게이트웨이입니다.

**플러그형 아키텍처 (pluggable architecture)**를 기반으로 구축된 OpenWA는 애플리케이션 코드를 단 한 줄도 변경하지 않고도 데이터베이스 엔진 (SQLite/PostgreSQL), 스토리지 백엔드 (Local/S3), 캐시 레이어 (Memory/Redis)를 교체할 수 있습니다.

🔓 100% 오픈 소스 (Open Source) |
라이선스 비용 없음, 기능 제한 없음, 전체 소스 코드 접근 가능 |
🏗️ 플러그형 아키텍처 (Pluggable Architecture) |
설정을 통해 데이터베이스, 스토리지, 캐시 어댑터를 교체 가능 |
🖥️ 전체 대시보드 (Full Dashboard) |
세션, 웹훅 (webhook), API 키 관리를 위한 현대적인 React UI |
🔹 멀티 세션 지원 (Multi-Session Ready) |
하나의 인스턴스에서 여러 WhatsApp 세션을 동시에 실행 가능 |
🐳 Docker 네이티브 (Docker Native) |
설정 없이 즉시 프로덕션 환경 사용 가능 |
🔗 n8n 통합 (n8n Integration) |
워크플로 자동화를 위한 커뮤니티 노드 제공 |

기능 (Feature)상태 (Status)설명 (Description)
REST APIHTTP 엔드포인트를 통한 전체 WhatsApp API
...
기능 (Feature)상태 (Status)설명 (Description)
---------
텍스트 메시지 (Text Messages)텍스트 메시지 송수신
...
기능 (Feature)상태 (Status)설명 (Description)
---------
그룹 API (Groups API)그룹 생성, 관리 및 메시지 전송

| 라벨 관리 (Labels Management) | ✅ | 라벨을 통한 채팅 정리 |
| 프록시 지원 (Proxy Support) | ✅ | 세션별 프록시 설정 |
| 속도 제한 (Rate Limiting) | ✅ | 설정 가능한 요청 제한 |
| ... |

기능 (Feature)상태 (Status)설명 (Description)
SQLite설정이 필요 없는 임베디드 데이터베이스
...
# 클론 및 시작 (Clone and start)
git clone https://github.com/rmyndharis/OpenWA.git
cd OpenWA
...
# 리포지토리 클론 (Clone repository)
git clone https://github.com/rmyndharis/OpenWA.git
cd OpenWA
...

프로덕션 환경의 경우, 선택적 서비스를 포함한 메인 docker-compose.yml을 사용하세요:

# 기본 프로덕션 (SQLite, 로컬 스토리지)
docker compose up -d
# PostgreSQL 데이터베이스 사용 시
...
프로필 (Profile)서비스 (Services)
postgresPostgreSQL 데이터베이스
redisRedis 캐시 (Cache)
minioS3 호환 스토리지 (S3-compatible storage)
with-dashboard웹 대시보드 (Web dashboard)
with-proxyTraefik 리버스 프록시 (Reverse proxy)
full위의 모든 서비스

개발 (Development) vs 프로덕션 (Production)

  • 개발 (Development) (docker-compose.dev.yml): SQLite, 로컬 스토리지, API 및 대시보드 모두 포함
  • 프로덕션 (Production) (docker-compose.yml): 설정 가능한 데이터베이스, 선택적 서비스를 위한 프로필 제공
서비스 (Service)포트 (Port)설명 (Description)
API2785REST API 엔드포인트 (Endpoints)
Dashboard2886웹 관리 인터페이스 (Web management interface)
Swagger2785/api/docs대화형 API 문서 (Interactive API docs)
curl -X POST http://localhost:2785/api/sessions \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
...
# 세션 시작 (Start the session)
curl -X POST http://localhost:2785/api/sessions/{sessionId}/start \
-H "X-API-Key: YOUR_API_KEY"
...
curl -X POST http://localhost:2785/api/sessions/{sessionId}/messages/send-text \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
...
curl -X POST http://localhost:2785/api/sessions/{sessionId}/webhooks \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
...
계층 (Layer)기술 (Technology)
런타임 (Runtime)Node.js 22 LTS
프레임워크 (Framework)NestJS 11.x
언어 (Language)TypeScript 5.x
WA 엔진 (WA Engine)whatsapp-web.js
데이터베이스 (Database)SQLite / PostgreSQL
캐시 (Cache)Redis (선택 사항)
스토리지 (Storage)로컬 (Local) / S3 / MinIO
ORMTypeORM
컨테이너 (Container)Docker + Docker Compose
openwa/
├── src/
│ ├── main.ts # 애플리케이션 진입점 (Application entry point)
...

상세한 문서는 docs/ 폴더에서 확인할 수 있습니다:

문서 (Document)설명 (Description)
프로젝트 개요 (Project Overview)소개 및 목표
...

기여(Contribution)를 환영합니다! 시작하는 방법은 다음과 같습니다:

Fork를 통해 저장소를 복제하세요.
Create를 통해 기능 브랜치를 생성하세요 (git checkout -b feature/amazing-feature).
Commit을 통해 변경 사항을 커밋하세요 (git commit -m 'Add amazing feature').

)를 통해 브랜치에 **Push** 하세요 (git push origin feature/amazing-feature`).

Pull Request를 생성하세요.

코딩 표준 및 권장 사항(best practices)에 대해서는 개발 가이드라인(Development Guidelines)을 읽어주시기 바랍니다.

이 프로젝트는 MIT License에 따라 라이선스가 부여됩니다 – 개인적 및 상업적 용도로 자유롭게 사용할 수 있습니다.

자세한 내용은 LICENSE 파일을 참조하세요.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub Trending All (daily)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0