VeryMore의 탄생 — 폴더 정리부터 9가지 블록 에디터까지
2025년 10월 18일 ~ 27일 · v1.0 → v1.2
10월 18일, 드디어 VeryMore 프로젝트가 공식적으로 시작됐다. 경남 크리에이터들을 위한 플랫폼을 만들겠다는 구상은 꽤 오래전부터 있었지만, 실제로 코드를 치기 시작한 건 이날이 처음이다. 창원문성대학교 RISE 사업단의 지원 아래, 약 열흘간의 집중 작업으로 프로젝트의 뼈대를 세웠다.
첫 번째 할 일: 정리 (v1.0)
프로젝트의 시작은 화려한 기능 구현이 아니라 지극히 평범한 폴더 정리였다. 여기저기 흩어져 있던 CSS, JS, 이미지 파일들을 체계적인 디렉토리 구조로 재정비했다.
assets/css/로 스타일시트 통합assets/js/로 스크립트 통합assets/images/로 이미지 통합backup/날짜별 백업 관리 시스템 생성uploads/creators/user_001크리에이터별 독립 업로드 폴더 설계
기술 스택은 심플하게 가기로 했다. 백엔드 PHP 7.4+ / MySQL 8.0+, 프론트엔드 Vanilla JS / GSAP, 호스팅 닷홈(Dothome), 도메인 verymore.co.kr. 프레임워크 없이 순수 PHP로 가는 건 다소 도전적이지만, 학교 서버 환경을 고려하면 가장 현실적인 선택이었다.
블록 에디터 — VeryMore의 심장 (v1.1)
VeryMore의 핵심인 블록 에디터를 본격 구현했다. 프로젝트 생성은 3단계 위자드 방식으로 설계했다. 단편/연재 선택 → 프로젝트 정보 입력 → 캐릭터·이미지 등록. 처음에는 한 페이지에 다 넣으려 했는데, 단계를 나누니까 흐름이 훨씬 자연스러워졌다.
에디터의 핵심은 9가지 블록 시스템이다.
- Text — Quill.js 리치 텍스트 에디터. 이미지 삽입은 의도적으로 차단
- Image — 에셋 패널에서 선택하는 방식. 여러 에피소드에서 재사용 가능
- Dialogue — 웹소설/시나리오용 대화 블록. 1인~3인 이상 레이아웃 지원
- Video — YouTube·네이버TV URL 임베드
- Audio — MP3/WAV/OGG 직접 업로드, 5MB 제한
- Link / Code / PDF / Spacer — 외부 링크, 구문 강조, PDF 뷰어, 여백 조절
키보드 단축키도 꼼꼼히 넣었다. Ctrl+S 저장, ↑↓ 블록 선택, Alt+↑↓ 블록 이동, Delete 삭제. 작은 차이지만, 실제로 써보면 생산성이 확 달라진다.
에셋 관리 시스템 — 3일간의 집중 작업 (v1.2)
10월 25일부터 27일까지 사흘 동안 에셋 관리 시스템에만 매달렸다. 캐릭터 CRUD, 중복 검증, 이미지 업로드 검증, 오디오 기능까지 한꺼번에 완성했다.
가장 까다로운 건 중복 처리였다. 같은 프로젝트 안에서 같은 이름의 캐릭터, 같은 캐릭터에 같은 표정명, 똑같은 이미지(MD5 해시 비교) — 이 모든 경우를 프론트엔드+백엔드 이중 검증으로 막았다.
캐릭터 삭제 기능도 구현했는데, '삭제'가 생각보다 복잡한 작업이었다. 표정 이미지, DB 레코드, 실제 파일까지 트랜잭션으로 ACID를 보장하면서 한 묶음으로 처리해야 했다.
디자인 방향: 전체적으로 border-radius를 제거한 각진(Squared) 스타일로 통일했다. 처음엔 딱딱해 보일까 걱정했는데, 오히려 콘텐츠에 집중하게 되는 효과가 있었다.