MyFairy는 아이들이 직접 동화를 만들고 그림을 그릴 수 있는 인터랙티브 스토리텔링 서비스입니다. 기존의 일방적인 콘텐츠 소비에서 벗어나 아이들이 창작 과정에 직접 참여하여 의사소통 능력과 창의력을 기를 수 있도록 설계되었습니다.
- 협업 동화 제작: 친구들과 함께 동화를 만들거나 혼자서도 제작 가능
- 직접 그림 그리기: 동화 삽화를 아이들이 직접 그려서 참여도 향상
- AI 그림 보정: 아이들의 그림을 기반으로 동화풍 이미지로 변환
- 실시간 협업: WebRTC 기반 실시간 그림 공유 및 협업
- 과도한 미디어 노출: 아동의 30%가 매일 유튜브 시청, 평균 3시간 (WHO 권고의 3배)
- 의사소통 발달 저하: 미디어 노출로 인한 아동 발달 저해
- 일방적 콘텐츠: 기존 아동용 독서 서비스의 제한적 상호작용
- 아이들이 직접 참여하는 인터랙티브 스토리텔링
- 창작 과정을 통한 의사소통 능력 향상
- 협업을 통한 사회성 발달
- React: 사용자 인터페이스 구성
- Canvas API: 실시간 그림 그리기 기능
- WebRTC (OpenVidu): 실시간 화면 공유 및 협업
- Spring Boot: RESTful API 서버
- MySQL: 사용자 정보 및 동화 데이터 저장
- Redis: 임시 데이터 저장 및 캐싱
- 비동기 처리: LLM 응답 속도 최적화
- Stable Diffusion ControlNet: 그림 기반 이미지 생성
- Scribble 모델: 낙서 형태 그림을 동화풍 이미지로 변환
- LLM: 동화 내용 생성, 이미지 프롬프트 생성, 음성 생성
- 동화 선택: 제작하고 싶은 동화 템플릿 선택
- 협업 모드: 혼자 또는 친구들과 함께 제작 선택
- 스토리 수정: 동화의 일부분을 아이들이 직접 수정
- 삽화 그리기: 각 페이지에 해당하는 그림을 직접 그리기
- 동화 완성: AI가 보정한 그림과 함께 완성된 동화 확인
- Stable Diffusion ControlNet: 텍스트 프롬프트와 그림을 동시에 입력받아 이미지 생성
- Scribble 신경망: 아이들의 낙서를 동화풍 이미지로 변환
- 커스텀 모델: 동화 스타일에 특화된 자체 구축 모델 사용
- 프롬프트 엔지니어링: 역할 부여, 구조화, Few-shot 기법 적용
- 다중 기능: 동화 내용 생성, 이미지 프롬프트 생성, 음성 생성
- 부모 페이지: 새로운 동화 템플릿 생성 지원
- 선택적 화면 공유: 캔버스 컴포넌트만 스트림으로 전송
- 불필요한 데이터 전송 최소화: 효율적인 실시간 협업 구현
- Redis 활용: 다양한 형태의 임시 데이터를 Redis에 저장 후 일괄 처리
- 객체 직렬화: Spring 중심의 안정적인 데이터 입출력 관리
- 비동기 처리: LLM 응답 속도 개선을 위한 비동기 요청 구현
- 창의력 향상: 직접 창작하는 과정을 통한 상상력 발달
- 의사소통 능력: 협업과 스토리텔링을 통한 언어 능력 향상
- 디지털 리터러시: 건전한 미디어 활용 능력 배양
- 협업 능력: 친구들과 함께 만드는 과정에서 사회성 발달
- 성취감: 직접 만든 동화를 통한 자신감 향상
- 가족 소통: 부모와 함께 동화를 만들며 가족 유대감 강화
WebRTC 6팀 (총 6명)
- Frontend: 3명 (React)
- Backend: 3명 (API 서버, AI 모델, 데이터베이스)