Skip to content

prgrms-web-devcourse-final-project/WEB5_7_2Jangs_BE

Repository files navigation

image TEAM 이장님들 - Docsa

🔗 배포 링크

https://app.docsa.kro.kr/

🙌 프로젝트 소개

Docsa는 문서의 변경 이력과 다양한 버전을 효율적으로 관리할 수 있는 문서 버전 관리 시스템입니다. 이 프로젝트의 목표는 Git을 모르는 사용자도 손쉽게 버전 관리를 활용하여 문서를 편집하고 운용할 수 있도록 돕는 것입니다.

사용자는 그래프로 구현된 시각적인 UI를 통해 문서를 직접 편집하고, 다양한 버전 흐름을 한눈에 확인하며 관리할 수 있습니다. Docsa는 문서의 변경 사항을 기록(commit) 단위로 추적하고, 버전(branch) 를 분기하거나, 서로 다른 버전을 병합(merge) 할 수 있는 강력한 기능을 제공합니다.

이러한 기능은 editor.js 기반의 블록 단위 저장 방식을 통해 구현되며, 변경된 블록만을 감지하여 데이터베이스에 저장하고 이를 조합하여 기록함으로써 저장 효율성과 자원 활용도를 극대화합니다.

📌 주요 기능

*Git의 개념과 용어를 모르는 일반인 유저를 위해, Docsa에서는 일반적인 Git의 개념과 대응되는 용어를 다음과 같이 재정의합니다.
(기록: commit, 버전: branch, 병합하기: merge)

문서 버전 관리

  • 문서는 기록,저장과 버전을 가진 최상위 단위입니다. 문서마다 모든 변경 사항을 기록 단위로 저장하여, 원하는 시점의 기록을 조회 (checkout) 할 수 있으며, 메인화면에서 생성과 삭제가 가능합니다.

버전(branch) 분기 및 병합

  • 하나의 문서에서 여러 버전을 생성하여 자유롭게 분기해나갈 수 있으며, 브랜치 간 병합을 통해 작업 내용을 통합할 수 있습니다. main버전 이외 버전 단위의 삭제도 가능합니다.

저장(Save) 및 기록(Commit) 시스템

  • 작성 중인 내용을 저장할 수 있는 ‘저장하기’ 기능과, 특정 시점의 변경 사항을 확정하는 ‘기록하기’ 기능을 사용할 수 있습니다. 기록마다 제목과 설명을 추가할 수 있으며, 저장 또는 기록을 단일 삭제할 수도 있습니다.

두 기록 비교하기

  • ‘비교하기’를 통해 현재 보고있는 기록과 다른 기록을 문단 단위로 비교할 수 있습니다.

시각화된 버전 그래프 UI

  • 기록과 저장,브랜치 간의 관계를 트리 구조 그래프로 시각화하여, 문서의 버전 흐름을 직관적으로 확인할 수 있습니다.

실시간 문서 편집

  • Docsa의 에디터를 통해 직접 문서를 작성 및 수정할 수 있으며, 블록 기반 편집과 마크다운 문법을 지원합니다.

👩‍💻 팀 이장님 소개

팀원 역할 담당 업무

한승훈
PO - 프론트 개발자님과 소통
- 프로젝트 일정 관리
- 저장 관련 API 구현

배문성
BE 팀장 - 문서 관련 API 구현
- 이종간 트랜잭션 삭제 로직 설계 및 구현

한정민
AWS 관리자 - 인증 및 사용자 관련 API 구현
- AWS 인프라 운영
- Docker 기반 배포
- 모니터링 시스템 구축

권우철
BE 팀원 - 기록(커밋) 관련 API 구현
- 병합기능(머지) API 구현
- 이종간 트랜잭션 삭제 로직 설계

이예원
BE 팀원 - 버전(브랜치) 관련 API 구현
- 그래프 조회 API 구현

🌐 시스템 아키텍처

이장님들-System-arch (1)

Backend

Java Spring Boot Spring MVC Spring Security Spring Data JPA

MySQL MongoDB Caffeine Cache

AWS EC2 AWS RDS Nginx

Prometheus Grafana

JUnit5 Mockito Postman

Collaboration & Tools

Slack Notion IntelliJ IDEA Git GitHub Projects

📚 Swagger API 문서

Swagger Badge

🧪 API 명세서 및 테스트를 위한 Swagger 문서입니다.


📲 애플리케이션 UI

🔗 서비스 배포 주소
🎥 시연 영상

[대표 사진] image image 화면 캡처 2025-08-03 184713

📄 ERD

docsa-몽고도입 후

📄 Flow Chart

이장님들-페이지-1 drawio

⚡ 기술적 이슈

*정리 후 이슈마다 블록 링크 걸 예정

🎇 트러블 슈팅

*정리 후 이슈마다 블록 링크 걸 예정

❓ QnA

*추가 예정

  1. 질문 1
  2. 질문 2
  3. 질문 3

About

프로그래머스 백엔드 데브코스 5기 7회차 2팀 이장님들팀 4차 팀 프로젝트입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5