웹소설, 일러스트 공유 서비스
웹소설 작가를 위해 소설 작가 전용 웹에디터를 지원하는 소설, 그림 공유 서비스 입니다. 일반적인 텍스트 에디터는 웹소설 작가들이 원하는 특별한 텍스트 기능을 제공하지 않는 경우가 많습니다. Novel Cloud에서는 단축키 및 텍스트 효과를 지원하는 소설 작가 전용 웹 에디터를 제공하여 소설을 더 쓰기 편리하게 만들어준다는 차별점이 있습니다.
소설 작가들에게 접근성이 용이한 소설 작성 도구를 제공하여 그들이 더욱 편리하게 소설을 쓸 수 있도록 하는 것입니다. 현재 웹소설 작가들은 일반적인 텍스트 에디터를 사용하여 소설을 작성해야 하는데, 이는 원하는 기능을 제공하지 않거나 사용하기 불편한 경우가 많습니다.
Novel Cloud는 소설 작가 전용 웹 에디터를 제공함으로써 이 문제를 해결하였습니다. 웹 에디터는 단축키 및 텍스트 효과를 지원하여 소설 작가들이 보다 편리하고 효과적으로 작업할 수 있게 도와줍니다.
이를 통해 소설 작가들은 더욱 쉽고 편리하게 소설을 작성하고, 작품을 공유하며 다른 작가들과 소통하며 성장할 수 있는 환경을 제공받게 됩니다. Novel Cloud를 통해 소설 작가들의 창작 활동을 지원하고 그들의 작품들이 더욱 많은 독자들에게 전달될 수 있도록 하는 것이 프로젝트의 목적입니다.
- 주요 기능 및 구성 요소들에 대한 설명
- 메인 페이지에서 인기 많은 태그, 작품을 조회할 수 있다.
- 상세 조회 페이지
- 유저 프로필을 조회할 수 있다.
- 유저가 쓴 게시물을 조회할 수 있고, 총 몇개의 게시글을 썼는지 알 수 있다.
- 유저를 팔로우를 할 수 있다.
- 업로드를 할 수 있다.
- 작품의 유형을 선택하고, 썸네일과 본문의 이미지를 업로드할 수 있다.
- 내용을 따로 작성할 수 있고, 자동으로 에디터에 쓴 글이 불러와진다.
- 글을 작성할 수 있고, 추가적으로 글에 특수효과, 크기 조절등을 할 수 있다.
- 단축어를 ctrl + (숫자)를 통해 작성할 수 있다.
- 입력을 멈춘 후 3초가 지나면 자동으로 저장된다. (Debounce 사용)
- 단축어 추가, 삭제를 할 수 있다. (단축어 순서를 드래그 앤 드롭으로 변경할 수 있다).
- 위 프로젝트를 진행함으로써, 비주류 웹소설 작가들에게 소설 작성을 위한 전용 에디터를 제공하여 그들의 작품을 더욱 쉽게 작성하고 공유할 수 있게 된다. 이를 통해 웹소설 작가들이 더욱 새로운 작품을 창작할 수 있고, 이를 통해 웹소설 시장이 활성화될 것으로 예상된다. 또한, 그림 공유 기능을 통해 그림 작가들도 자신의 작품을 공유할 수 있으며, 이를 통해 창작 활동의 발전이 이루어질 것이다.
- 의사소통 방법
- 슬랙을 통한 실시간 소통 및 오류 제보
- 일정 관리
- 지라를 사용하여 업무분담, 기한 생성 후 기한 내 업무 처리
- WBS https://docs.google.com/spreadsheets/d/1Kkv5RFFDZAX2C_jnPC1acDktHeMYVty1hu7AvqqfO4M/edit#gid=0
- 기능정의서
- 개발계획서
- 산출물 보고서
- 소스코드(웹)
- 프로젝트 개요에 기입한 주요 기능 및 구성 요소들에 대한 상세 설명 진행
- 메인 페이지:
- 인기 있는 태그와 작품을 조회할 수 있는 섹션을 제공합니다.
- 사용자들이 새로운 작품을 발견하고 탐색할 수 있도록 합니다.
- 작품 상세 조회 페이지:
- 작품의 상세 정보를 보여줍니다. 이 정보에는 작품 제목, 작가, 장르, 설명, 출판일 등이 포함됩니다.
- 작품에 대한 리뷰 및 평점을 확인할 수 있습니다.
- 작품과 관련된 태그를 표시하여 유사한 작품을 찾을 수 있도록 합니다.
- 유저 프로필:
- 사용자 프로필 페이지에서는 해당 사용자가 작성한 게시물의 목록과 총 게시글 수를 확인할 수 있습니다.
- 사용자 정보, 프로필 사진 등의 개인 정보를 표시합니다.
- 팔로우 기능:
- 다른 사용자를 팔로우할 수 있습니다. 팔로우한 사용자의 작품 및 활동을 구독할 수 있습니다.
- 팔로우한 사용자의 업데이트와 소식을 알림으로 받을 수 있습니다.
- 작품 업로드 기능:
- 사용자는 자신의 작품을 업로드할 수 있습니다. 업로드 시에는 작품의 유형, 썸네일 이미지, 본문 이미지 등을 제공합니다.
- 업로드한 작품은 메인 페이지에서 조회 가능하며, 다른 사용자가 해당 작품에 대한 리뷰와 평점을 남길 수 있습니다.
- 웹 에디터:
- 사용자는 웹상에서 작품을 작성할 수 있는 전용 에디터를 사용할 수 있습니다.
- 에디터는 특수 효과, 크기 조절, 서식 지정 등의 기능을 제공하여 작품을 다양하게 표현할 수 있습니다.
- 입력이 멈추면 자동으로 저장되므로, 작가는 글을 잃어버리지 않고 안전하게 작업할 수 있습니다.
- 단축어 관리:
- 사용자는 에디터에서 자주 사용하는 텍스트나 서식을 단축어로 설정할 수 있습니다.
- 단축어를 추가하거나 삭제하여 작품 작성 시의 편의성을 높일 수 있습니다.
- 메인 페이지:
- 실제 서비스 제공 관련
- 서비스 배포: 프로젝트의 개발 단계가 완료된 후, 라즈베리파이 서버로 실제로 서비스를 배포하였습니다. 서비스를 사용할 수 있는 도메인을 제공하였고, 사용자들이 접속하여 서비스를 이용할 수 있게 되었습니다.
- 서버 관리: 실제 서비스를 운영하기 위해 서버를 구축하고 관리하였습니다. 서버의 안정성과 성능을 유지하기 위해 필요한 조치를 취하였고, 서비스에 대한 모니터링과 로그 분석을 통해 문제가 발생할 경우 신속하게 대응하였습니다.
- 사용자 관리: 서비스에 회원가입 기능을 제공하여 사용자들의 정보를 관리하였습니다. Spring Security를 통해 사용자의 인증과 권한 관리를 통해 보안과 개인정보 보호를 강화하였고, 사용자들의 요청과 문의에 대한 처리를 적절히 수행하였습니다.
- 유지보수 및 업데이트: 서비스를 지속적으로 관리하고 개선하기 위해 유지보수와 업데이트 작업을 수행하였습니다. 사용자들로부터 제보된 버그나 문제점을 해결하고, 새로운 기능이나 개선 사항을 추가하여 사용자들의 만족도를 높였습니다.
- 성능 최적화: 서비스의 성능을 최적화하기 위해 여러 가지 방법을 시도하였습니다. 데이터베이스 쿼리의 최적화 서버 사이드 렌더링 등을 통해 서비스의 응답 속도와 확장성을 향상시켰습니다.
- 프로젝트를 통해 얻은 내용 & 의견 → 프로젝트 수행 후기로 정리 (개인)
- Next.js / TypeScript
- Style: styled-components
- Editor: contentEditable WYSIWYG 에디터
- Test: jest, playwright
- Etc: react-hotkeys , react-beautiful-dnd
- Kotiln / Spring / JPA
- Authorization : Spring Security
- DOCS : Swagger
- DB : MySql, Redis
- AWS: EC2 t2.small, S3, CloudFront
- Test: junit, mockk