bdpeer

module
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2026 License: MIT

README

bdpeer

Release Go Version Go Report Card

로컬 네트워크에서 피어를 자동으로 발견하고 텍스트 메시지와 파일을 주고받는 크로스 플랫폼 P2P TUI 앱.

┌──────────────────────────────────────────────────────┐
│  bdpeer  [alice]                                     │
├──────────────┬───────────────────────────────────────┤
│ Peers        │ Chat: bob                             │
│              │                                       │
│ ▶ bob        │ bob: 안녕!                            │
│   carol      │ you: 파일 보낼게                      │
│              │                                       │
│              │ > /file ~/photo.jpg█                  │
│ ↑/↓ select  │ Enter send  /file <path>  Esc quit   │
└──────────────┴───────────────────────────────────────┘

특징

  • 자동 피어 발견 — 같은 Wi-Fi에 있는 피어를 설정 없이 자동으로 탐색
  • 텍스트 채팅 — 선택한 피어에게 실시간 메시지 전송
  • 파일 전송 — /file <경로> 명령으로 파일 전송, SHA-256 체크섬 검증
  • 안정적인 identity — peer ID가 앱 재시작 후에도 유지됨
  • 크로스 플랫폼 — macOS, Windows, Linux 지원

설치

Releases 페이지에서 플랫폼에 맞는 바이너리를 다운로드합니다.

macOS
# 압축 해제
tar -xzf bdpeer_*_darwin_*.tar.gz

# Gatekeeper 차단 해제 (미서명 바이너리)
xattr -d com.apple.quarantine bdpeer

# 실행
./bdpeer

시스템 환경설정 → 개인 정보 보호 및 보안에서 "어쨌든 허용"을 눌러도 됩니다.

Linux
tar -xzf bdpeer_*_linux_*.tar.gz
chmod +x bdpeer
./bdpeer
Windows

zip 압축 해제 후 bdpeer.exe 실행.

직접 빌드
# 현재 플랫폼 빌드
make build

# 실행
./dist/bdpeer

사용법

./bdpeer

첫 실행 시 닉네임을 입력하면 메인 화면으로 전환됩니다. 이후 같은 네트워크의 다른 bdpeer 인스턴스가 자동으로 발견됩니다.

키 동작
↑ / ↓ 피어 선택
Enter 메시지 전송
/file <경로> 파일 전송
Ctrl+C 종료

빌드

make build          # 현재 플랫폼
make build-mac      # macOS (amd64 + arm64)
make build-win      # Windows amd64
make build-linux    # Linux amd64

# BLE 지원 포함 빌드 (CGo 필요)
make build-mac-ble
make build-linux-ble
make build-win-ble

피어 발견 프로토콜

프로토콜 지원 환경 설명
mDNS/Bonjour (_bdpeer._tcp) macOS, iOS, Android, Windows 10+ 로컬 Wi-Fi 자동 발견
SSDP/UPnP Windows, Android Windows 네트워크 탐색
WS-Discovery Windows 탐색기 → 네트워크 폴더 표시
BLE macOS, Linux, Windows (-tags ble) 근거리 근접 발견
libp2p DHT 인터넷 초기 인터넷 피어 발견 ⚠️

AirDrop: Apple 전용 AWDL 프로토콜 사용 — 구현 불가. 같은 Wi-Fi에서 Bonjour로 발견 가능.
Quick Share: Google Nearby Connections 와이어 프로토콜 필요 (Phase 3 예정).
인터넷 P2P: DHT 초기화만 완료. circuit relay 예약/부트스트랩은 향후 작업 예정.

기술 스택

라이선스

MIT

Directories

Path Synopsis
cmd
bdpeer command
internal
net
ui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL