이웃콜(IwootCall) — 수수료 없이 직접 운영하는 오픈소스 배차 플랫폼 공개
카카오택시에 전화 한 통 잡을 때마다 수수료가 빠져나갑니다. 배달 플랫폼은 라이더를 묶어두고 요금을 올립니다. 농어촌 지역은 배차 플랫폼 자체가 없어서 주민들이 이동 수단을 못 찾습니다.
"배차 시스템 자체를 오픈소스로 공개하면, 지역 단위나 협동조합도 독립적으로 운영할 수 있지 않을까?" 이 질문에서 이웃콜(IwootCall)이 시작됐습니다.
"수수료 없이, 플랫폼 종속 없이. 배차 시스템을 직접 소유하는 것."
이웃콜이 해결하는 문제
이웃콜은 택시 협동조합, 지역 대리운전 조합, 농어촌 셔틀 운영 단체 등이 카카오·배달의민족 같은 외부 플랫폼 없이도 직접 배차 시스템을 구축하고 운영할 수 있도록 설계됐습니다. 코드는 100% 공개, 라이선스는 MIT, 비용은 서버비만.
5가지 서비스 모듈
핵심 구조 — 코어는 하나, 모듈은 무한
서비스 종류가 늘어나도 배차 엔진을 매번 새로 만들지 않습니다. 배차 코어는 공유하고, 서비스 모듈만 추가합니다. 택시 호출도, 화물 요청도, 농어촌 셔틀도 — 전부 같은 `Job` 단위로 처리됩니다.
기술 스택
| 영역 | 기술 | 역할 |
|---|---|---|
| 앱 (×3) | Next.js + TypeScript | 고객앱 / 기사앱 / 관리자앱 |
| API 서버 | Node.js + TypeScript | 배차 코어, REST API |
| 실시간 | Socket.IO | 배차 이벤트, 위치 실시간 공유 |
| 배차 큐 | BullMQ + Redis | 비동기 배차 작업 처리 |
| 데이터베이스 | PostgreSQL + PostGIS | 위치 기반 기사 탐색 |
| 모노레포 | Turborepo + pnpm | 앱·패키지 통합 관리 |
| 인프라 | Docker Compose | 로컬 실행 스택 |
5분 안에 시작하기
git clone https://github.com/sinmb79/Free-call.git
cd Free-call
# 2. 환경 변수 + 패키지
cp .env.example .env
pnpm install
# 3. DB + Redis 시작
pnpm dev:stack
# 4. 앱 3개 동시 실행
pnpm dev:start
관리자 앱 → 토큰 생성 → 기사 앱 로그인(OTP: 000000) → 온라인 ON → 고객 앱에서 FreeCab 호출 → 기사 앱 수락 → 관리자 앱 실시간 상태 변화 확인. 이 흐름 한 번이면 전체 구조가 보입니다.
누구를 위한 프로젝트인가
| 대상 | 활용 방안 |
|---|---|
| 지역 택시 협동조합 | 카카오택시 없이 자체 배차 앱 운영 |
| 대리운전 조합 | 수수료 없이 기사-고객 직접 연결 |
| 농어촌 지자체 | FREESHUTTLE로 교통 취약 지역 커버 |
| 소형 물류 스타트업 | FREECARGO로 화물 배차 시스템 구축 |
| 개발자 | 실시간 배차 시스템 레퍼런스 코드 |
📞 22B Labs · IwootCall
배차 시스템의 진입 장벽을 없애는 것이 목표입니다.
플랫폼이 아니라 공동체가 직접 소유하는 이동 서비스를 만드세요.
⭐ Star 눌러주시면 개발에 큰 힘이 됩니다
👉 github.com/sinmb79/Free-call
✍️ 22B Labs · The 4th Path, GitHub: sinmb79