Skip to content

Jyoungjo/Hidden-Piece

 
 

Repository files navigation

HIDDEN PIECE

HIDDEN PIECE Web Page v1.0

6️⃣팀 한사랑코딩회
멋쟁이사자처럼 백엔드 스쿨 5기
개발 기간: 2023. 08. 09 ~ 2023. 09. 15

배포 주소

깃허브: ↗️https://github.com/Jyoungjo/Hidden-Piece
서버: ↗️https://www.hidden-piece.kro.kr/views/main

개발팀 소개 🫂

대장 부끄러운 질문봇 건강관리사 치어리더 구글링 고수
↗️김영근 ↗️권선녀 ↗️장영조 ↗️최경환 ↗️서지원
로드맵 페이지 회원가입, 커뮤니티 페이지 로그인, 메인, 마이 페이지, 인프라 구축 로드맵 페이지 커뮤니티, 마이 페이지, 유저프로필

프로젝트 소개 🦁

HIDDEN PIECE는 급성장하는 온라인 교육 시장과 개발자의 교육 및 진로 방향에 대한 필요성에 착안하여 탄생한 개발자 로드맵 공유 플랫폼입니다. 자신의 학습 방향과 경험을 기록하고 공유함으로써, 다른 사용자들이 이를 참고해 자신만의 로드맵을 수립할 수 있습니다. HIDDEN PIECE는 단순히 학습의 순서를 제시하는 것이 아닌, 실제 경험을 바탕으로 한 세세한 정보와 기술 학습에 대한 인사이트를 제공합니다. 이를 통해 사용자는 학습의 방향성을 잡을 뿐만 아니라, 개발 분야를 중심으로 새로운 학습 문화를 만들 수 있습니다.


시작 가이드 🌈

Requirements

For building and running the project you need:

  • IntelliJ Ultimate
  • Spring Boot 3.1.2
    • Build Tool: Gradle
    • Dependencies:
      • Spring Boot DevTools
      • Lombok
      • Spring Web
      • Spring Data JPA
      • Spring Boot Starter Security
      • Spring Boot Starter Oauth2
      • Spring Boot Starter Thymeleaf
      • Spring Boot Starter Validation
      • Spring Boot Starter Redis
      • JSON Web Token for Java (jjwt)

Installation

$ git clone https://github.com/likelion-backend-5th/Final_Project_6team.git
$ cd Final_Project_6team

Stacks 👩🏻‍💻

Environment

GitHub GitHub Actions IntelliJ IDEA Visual Studio Code

Development

Front-End

HTML5 CSS3 JavaScript Thymeleaf Bootstrap

Back-End

java Spring Boot spring Security
JSON Web Tokens Hibernate

DB/Server

MySQL SQLite Docker Redis NGINX Amazon EC2 Amazon RDS Amazon S3

Communication

Notion Discord


화면 구성 📺

메인 페이지 마이 페이지
로드맵 페이지 로드맵 상세 페이지
커뮤니티 페이지 커뮤니티 상세 페이지
회원가입 페이지 로그인 페이지

주요 기능

1️⃣ 로그인과 회원가입

  • 로그인 성공 시 JWT 토큰(Access Token, Refresh Token) 생성 및 발급
  • 아이디, 이메일 중복 검증과 가입 시 필요한 항목의 유효성 검사 적용
  • SNS(구글, 카카오, 네이버) 계정을 포함하여 로그인할 수 있음
  • 가입 당시의 보안 질문과 답변을 통해 계정 정보를 찾을 수 있음

2️⃣ 메인 페이지와 마이 페이지

  • 이용자 수와 함께 주제별로 로드맵을 한눈에 확인할 수 있음 메인 페이지
  • 로드맵, 커뮤니티 페이지의 정보를 통합 검색할 수 있음 메인 페이지
  • 추천, 인기, 신규 로드맵의 제목을 클릭할 시 상세 정보를 확인할 수 있음 메인 페이지
  • 로그인한 유저의 로드맵과 커뮤니티 그리고 팔로우 내용을 확인할 수 있음 마이 페이지
  • 로그인한 유저의 상세 프로필과 정보 수정 그리고 회원 탈퇴를 진행할 수 있음 마이 페이지

3️⃣ 로드맵 페이지

  • 타입별로 로드맵을 생성하여 일정을 관리할 수 있음
  • 일정별로 TODO를 생성하여 달성률을 관리할 수 있음
  • 다른 사용자의 로드맵을 검색할 수 있으며 북마크 할 수 있음
  • 작성한 사용자의 프로필을 조회할 수 있으며 팔로우 할 수 있음

4️⃣ 커뮤니티 페이지

  • 타입별로 이미지를 포함한 게시글을 작성할 수 있음
  • 다른 사용자의 게시글을 검색할 수 있으며 좋아요와 북마크 할 수 있음
  • 작성한 사용자의 프로필을 조회할 수 있으며 팔로우 할 수 있음
  • 자유로운 댓글과 답글을 작성할 수 있음

Architecture 📦

서비스 아키텍처

ERD

그 외

↗️Notion: Workspace


↗️Swagger: API Documentation

디렉토리 구조

📦Final_Project_6team
 ┣ 📂src
 ┃ ┣ 📂main
 ┃ ┃ ┣ 📂java
 ┃ ┃ ┃ ┗ 📂com
 ┃ ┃ ┃ ┃ ┗ 📂example
 ┃ ┃ ┃ ┃ ┃ ┗ 📂hiddenpiece
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂auth : 인증 관련 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂common : 공통 모듈 및 유틸리티
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂config : 설정 및 구성 관련 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂controller : API 컨트롤러 및 요청 처리
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂domain : 사용자, 로드맵 등의 도메인 관련 기능
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂exception : 오류 처리를 위한 사용자 정의 예외
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂oauth : OAuth 인증 및 토큰 처리 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂redis : Redis 관련 설정 및 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂security : 보안 및 권한 관련 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂service : 비즈니스 로직 처리 서비스
 ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂view : 뷰 및 프론트엔드 관련 모듈
 ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜HiddenPieceApplication.java : 애플리케이션 실행 클래스
 ┃ ┃ ┗ 📂resources
 ┃ ┃ ┃ ┣ 📂static : 정적 리소스 (css, js, fonts, img 등)
 ┃ ┃ ┃ ┗ 📂templates : 템플릿 및 뷰 파일
 ┃ ┗ 📂test : 테스트 코드 및 관련 모듈
 ┣ 📂uploads : 업로드된 파일 저장 폴더
 ┣ 📜build.gradle : 빌드 설정 파일
 ┣ 📜db.sqlite : SQLite 데이터베이스 파일
 ┣ 📜Dockerfile : Docker 설정 파일
 ┗ 📜README.md : 프로젝트 설명 문서

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 34.6%
  • JavaScript 32.1%
  • HTML 23.7%
  • CSS 9.3%
  • Other 0.3%