Skip to content

UDR-Sequence/sequence-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

536 Commits
 
 
 
 
 
 
 
 

Repository files navigation

서비스 소개

0. Getting Started (서비스 구성 및 실행 방법)

배포 링크 (개발 중입니다!) : https://sequence-zeta.vercel.app/



1. About Project

  • 프로젝트 목적: 대학 간 PM/디자이너/개발자 교류 서비스
  • 프로젝트 설명: 대학에 인재들이 정말 많다고 생각합니다. 하지만 이 인재들이 학교 내에서만 머물러 있고, 타 학교의 여러 인재들과 여러가지 상황들로 인하여, 협업이 어렵다는 것을 깨닫고 인재 교류 플랫폼을 개발하게 되었습니다!!

프로젝트 아키텍처 업로드 예정!



2. Team14 Members (팀원 및 팀 소개)

나강민
나강민
Lead
GitHub
김대연 김재환 하헌찬 김민지 박규원 조승빈
김대연 김재환 하헌찬 김민지 박규원 조승빈
TECH-LEAD BE BE BE BE BE
GitHub GitHub GitHub GitHub GitHub GitHub
박승균 정준용
박승균 정준용
FE FE
GitHub GitHub


3. Key Features (주요 기능)

  • 회원 관리:

    • 로그인이 진행되고, 필터 단에서 유저의 권한을 확인하여 토큰을 발급합니다.
    • 발급된 토큰을 기반으로 권한별 API를 처리합니다.
    • Security Config에서 권한을 처리합니다.
  • 프로젝트:

    • 프로젝트 CRUD가 가능합니다
    • 프로젝트 별 댓글/대댓글 작업이 가능합니다
    • 유저 초대가 가능합니다
    • 프로젝트 제목/카테고리 별 필터링이 가능합니다.
  • 아카이빙:

    • 지금까지 진행했던 프로젝트 아카이빙이 가능합니다.
    • 상호 팀원 평가가 가능합니다
  • 마이페이지:

    • 지금까지 진행했던 프로젝트를 볼 수 있습니다
    • 내 정보를 확인할 수 있습니다
    • 나의 기술스택 등 개인정보를 확인 할 수 있습니다.
  • 회원탈퇴/신고:

    • soft-delete 방식을 선택하였고 is_deleted 컬럼으로 회원탈퇴 여부를 처리해주고 있습니다.
    • 탈퇴에 영향을 받는 서비스들도 is_deleted 컬럼을 통해 관리해줍니다.


4. ERD

erdcloud : https://www.erdcloud.com/d/gYWeuxRwBSdStHtFD

erd



5. Technology Stack (기술 스택)

5.1 BackEnd

SpringBoot SpringBoot 3.4.3
Java Java 17
Spring Data JPA JPA 5.0.0
QueryDSL QueryDSL 1.11.12
Spring Security QueryDSL 3.4.2

5.2 Infra

MariaDB MariaDB
phpmyadmin phpmyadmin
Nginx Proxy Manager npm latest
Docker docker


6. Development Workflow (개발 워크플로우)

브랜치 전략 (Branch Strategy)

우리의 브랜치 전략은 아래와 같은 Git Flow를 기반으로 하며, 다음과 같은 브랜치를 사용합니다.

git flow
  • Main Branch

    • 배포 가능한 상태의 코드를 유지합니다.
    • 모든 배포는 이 브랜치에서 이루어집니다.
  • develop Branch

    • 통합 기능 관리 브랜치 입니다
    • feat에서 개발한 기능을 develop 브랜치에서 통합하여 관리합니다.
  • feat Branch

    • 기능 개발 브랜치 입니다.
    • 기능 단위로 브랜치를 나누어 기능을 개발하였습니다.
  • refactor Branch

    • 코드 리팩토링 브랜치 입니다.
    • 코드 리팩토링이 필요한 경우 refactor 브랜치에서 작업했습니다.
  • release Branch

    • 배포 전 버전을 관리하는 브랜치 입니다.
    • 최종 배포하기 전 테스트를 진행하고, 이상이 없다면 Main브랜치로 배포를 진행합니다.
  • hotfix Branch

    • 핫픽스를 관리하는 브랜치 입니다.
    • 배포된 환경에서 수정사항이 발생했을 경우, hotfix 브랜치에서 관리하였습니다.


7. Convention

네이밍 컨벤션

함수명은 카멜 케이스를 기본으로 하고 컬럼명은 스네이크케이스를 기본으로 한다.

// 카멜 케이스
camelCase
// 스네이크 케이스
snake_case



8. 커밋 컨벤션

참고 : https://hqc24.tistory.com/9


[feat]: 회원탈퇴 기능 수정

[목적]: 기존 hard-delete 방식 대신, soft-delete 방식을 적용하여 기능 수정을 하기 위해서.  

[목표]: soft-delete 방식으로 회원탈퇴를 구현하여, 유저가 물리적으로 삭제되는 것이 아닌,
	   상태값으로 탈퇴여부를 관리하여, 유저 계정 복구에 대비.  

[달성도]: 

  - soft-delete 구현 완료.  

  - 멤버 테이블에 탈퇴여부 상태값 추가 완료.  

[기타]: DB 과부화를 방지하기 위해서, 탈퇴 회원은 30일 이후 자동 삭제되도록 처리할 필요가 있음.



About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages