InvisiBox: 직장 내 익명의 이중 방향 통신 채널
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- 개발자/IT 전문가: 이메일 파싱과 익명성 보장 기능을 구현한 웹 애플리케이션 개발에 관심 있는 분
- 기업 HR/관리자: 직원의 익명 피드백 시스템 도입을 고려하는 기업의 관리자 및 HR 담당자
- 난이도: 중간 (Postmark API 및 MongoDB 활용 기술 필요)
핵심 요약
- Postmark Inbound Email 기반의 익명 통신:
Postmark
의 이메일 파싱 기능을 활용하여 직원/관리자 간 100% 익명의 이중 방향 통신을 지원 - 사용자 인증 없이 참여 가능: 직원은 계정 생성 없이
InvisiBox
프록시 이메일을 통해 메시지를 전송 가능 - 보안 및 확장성 강화 기술:
MongoDB
,Node.js
,React
기반의 실시간 메시지 처리 및 구독자 관리 시스템 구현
섹션별 세부 요약
1. 프로젝트 개요 및 목적
- InvisiBox는 기업 내 직원과 관리자 간 익명의 이중 방향 통신을 제공하는 플랫폼
- 주요 기능: 익명 보고, 비밀 대화, 비밀 투표, 실시간 메시지 전송, 설문조사 시스템
- 핵심 가치: 익명성 보장, 계정 없이 참여, 이메일 통합 기반의 실시간 통신
2. 사용자 계정 구조 및 흐름
- 관리자 계정 생성: 기업은
InvisiBox
플랫폼에 가입하여 유니크한 프록시 이메일을 생성 - 직원 구독: 직원은 기업의 프록시 이메일을 사용하여 구독을 통해 개인 이메일을 노출하지 않고 메시지를 전송
- 메시지 처리 흐름:
- 직원 →
Postmark
이메일 수신 Postmark
→/inbound-handler
웹훅으로 메시지 전달- 백엔드 → 메시지 저장 및 관리자 대시보드 전달
3. 기술 스택 및 구현 방식
- 프론트엔드:
React
+TypeScript
,TailwindCSS
+Shadcn
UI 구성 - 백엔드:
Node.js
+Express
,MongoDB
데이터베이스 - 이메일 통합:
Postmark
의 Inbound Email, Outbound Transactional, Broadcast 스트림 활용 - 핵심 코드 예시:
```javascript
router.post('/inbound-handler', async (req, res) => {
const db = getDB();
const inboundData = req.body;
const invisiboxEmail = inboundData.ToFull[0]?.Email;
const from = inboundData.FromFull.Email;
const textBody = inboundData.TextBody || 'null';
// ... 메시지 처리 및 저장 로직
});
```
4. 보안 및 익명성 보장 기능
- 프록시 이메일 사용: 직원의 실질 이메일은 관리자에게 노출되지 않음
- 이중 방향 통신: 관리자 → 직원, 직원 → 관리자 모두 익명 유지
- 구독자 관리: 문제 있는 사용자에 대한 경고/차단 기능 제공
결론
- Postmark의 이메일 파싱 기능을 활용한 직장 내 익명 통신 플랫폼으로,
MongoDB
와Node.js
기반의 확장성 높은 아키텍처를 적용 - 실무 적용 권장사항:
- Postmark
의 Inbound Email
웹훅을 통해 메시지 전달 처리
- MongoDB
를 활용한 구독자 및 메시지 데이터 저장
- TailwindCSS
와 Shadcn
으로 사용자 친화적인 인터페이스 구현
- 향후 개발 계획: SaaS 형태로 확장 및 Postmark를 핵심 이메일 클라이언트로 지속 활용 예정