Skip to content

프로그래머스 웹개발 백엔드 6기 8회차 03팀(SamSamOO) 최종 프로젝트 백엔드 레포지토리입니다

Notifications You must be signed in to change notification settings

prgrms-web-devcourse-final-project/WEB6_8_SamSamOO_BE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Balaw (바로)

"Balaw"는 복잡하고 어려운 법률 문제에 직면한 일반인들을 위해 AI 기술을 활용하여 법률 정보의 문턱을 낮추는 서비스입니다.

주요 기능

회원 및 인증 기능

  • 회원가입 및 로그인: 이메일 또는 소셜 계정(카카오, 네이버) 간편 가입
  • 로그아웃: 안전한 계정 정보 보호 및 서비스 종료

AI 및 분석 기능

AI 법률 분석 : 서비스의 핵심 기능

사용자가 자신의 상황을 텍스트로 입력하면 AI가 실시간으로 문맥을 분석하여 종합적인 분석 결과를 즉시 제공

제공 정보: 관련 법률 조항 | 유사 판례 | 핵심 쟁점 | 이해하기 쉬운 조언

투표(유저 배심원단) 기능

기능 설명
투표 생성 및 관리 법률적 고민을 익명으로 공유하고 투표 생성/수정/삭제
투표 참여 및 조회 다양한 사례를 조회하고 배심원으로 참여
투표 결과 통계 시각적 통계(막대그래프, 원형 차트)로 여론 흐름 확인
선택 수정 및 알림 투표 마감 전 선택 수정 가능, 새로운 반응 시 알림 제공

법률 정보 및 검색 기능

  • 법률 조항/판례 통합 검색: 키워드 하나로 법률 조항, 판례 검색
  • 법률 용어 인라인 검색 및 해설: 방대한 데이터베이스에서 정확한 정보 검색 + 클릭 한 번으로 쉬운 해설 제공

UI/UX 및 사용자 경험

  • 반응형 UI/UX: PC, 태블릿, 모바일 최적화 디자인
  • 빠르고 쾌적한 사용 환경: 페이지 로딩 속도 최소화, 부드러운 화면 전환
  • 로딩 스켈레톤: 데이터 로딩 중 콘텐츠 윤곽 먼저 표시로 체감 로딩 시간 단축

실행방법

1. 저장소 클론

git clone https://github.com/prgrms-web-devcourse-final-project/WEB6_8_SamSamOO_BE.git
cd WEB6_8_SamSamOO_BE/backend

2. 의존 서비스 실행 (PostgreSQL, Redis 등)

docker-compose up -d

3. Spring Boot 실행

./gradlew bootRun

기술 스택

백엔드 (Backend)

기술 세부 내용 / 역할
Java 21 LTS 버전, 가상 스레드(Project Loom) 등 최신 언어 기능 활용
Spring Boot 3.5 빠른 애플리케이션 개발 및 설정 자동화, Java 21 완벽 지원
Spring Batch 대용량 데이터의 배치 처리 및 스케줄링
Gradle Groovy/Kotlin 기반의 유연하고 빠른 빌드 자동화 도구
Spring Data JPA 객체-관계 매핑(ORM)을 통해 생산성 향상 및 SQL 중심 개발 탈피
Spring Security / JWT 인증(Authentication) 및 인가(Authorization) 처리, 상태 비저장(Stateless) API를 위한 토큰 기반 인증 구현
OAuth 2.0 카카오, 네이버 소셜 로그인을 통한 간편한 사용자 인증
Springdoc (Swagger) Swagger UI를 활용한 API 명세 자동화 및 테스트 환경 제공
Elasticsearch 검색 기능 고도화 및 로그 데이터 분석/모니터링
Spring RAG LLM과 외부 데이터베이스(Vector DB 등)를 연동한 검색 증강 생성(RAG) 구현
AWS S3 이미지, 동영상 등 정적 파일의 안정적인 저장 및 관리
Gemini 2.5 Pro Google의 최신 LLM을 활용한 AI 기반 핵심 기능 개발

데이터베이스

기술 세부 내용 / 역할
PostgreSQL 오픈소스 관계형 데이터베이스, JSONB 등 다양한 데이터 타입 지원
Redis In-Memory 데이터 저장소, 빠른 응답 속도를 위한 캐싱 및 세션 관리

인프라

기술 세부 내용 / 역할
Docker 애플리케이션의 개발, 배포, 실행 환경을 컨테이너화하여 일관성 확보
AWS EC2 클라우드 기반 가상 서버를 활용한 애플리케이션 배포 및 운영
GitHub Actions GitHub Repository와 연동하여 빌드, 테스트, 배포 파이프라인 자동화

프론트엔드 (Frontend)

기술 세부 내용 / 역할
React UI 라이브러리, 컴포넌트 기반 개발
Next.js React 기반 풀스택 프레임워크 (SSR, SSG, 라우팅, API Routes)
TypeScript 정적 타입 시스템으로 안정성 및 개발 생산성 향상
Framer Motion 애니메이션 및 인터랙션 구현 라이브러리
Chart.js 차트 및 데이터 시각화 라이브러리
Tailwind CSS Utility-first CSS 프레임워크, 반응형 및 커스터마이징 용이
Axios HTTP 요청을 쉽게 다룰 수 있게 해주는 범용 클라이언트 라이브러리
TanStack Query 클라이언트단의 비동기 상태 관리 및 서버 상태 관리 라이브러리
Zustand 전역 상태 관리 라이브러리

품질 관리 & 협업 도구

카테고리 기술 세부 내용 / 역할
품질 관리 Husky 자동으로 린트, 포맷팅, 테스트 등을 실행해 코드 품질을 유지하는 도구
협업 GitHub Git 기반 소스 코드 버전 관리 및 협업 플랫폼
Notion 프로젝트 문서, 회의록, 태스크 관리 등 협업을 위한 올인원 도구
Figma UI/UX 설계 및 프로토타이핑 툴, 협업 디자인
테스팅 LightHouse 웹 성능·접근성·SEO 품질 측정 도구로, 웹사이트를 분석해 점수와 개선 가이드를 제공

About

프로그래머스 웹개발 백엔드 6기 8회차 03팀(SamSamOO) 최종 프로젝트 백엔드 레포지토리입니다

Resources

Stars

Watchers

Forks

Packages

No packages published