Skip to content

hyunsupLee/react-study-o

Repository files navigation

image

πŸš€ ν”„λ‘œμ νŠΈ κ°œμš”

StudyOλŠ” μŠ€ν„°λ””(Study)와 μŠ€νŠœλ””μ˜€(Studio)λ₯Ό κ²°ν•©ν•œ μ˜¬μΈμ› ν˜‘μ—… ν”Œλž«νΌμž…λ‹ˆλ‹€.
μŠ€ν„°λ”” λͺ¨μ§‘λΆ€ν„° ν™œλ™, νŒ€ ν”„λ‘œμ νŠΈκΉŒμ§€ λ³΅μž‘ν•œ 과정을 μ†μ‰½κ²Œ κ΄€λ¦¬ν•˜κ³  νŒ€μ›Œν¬λ₯Ό μ™„μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • ν”„λ‘œμ νŠΈλͺ…: StudyO - λͺ¨λ“  μŠ€ν„°λ””μ˜ μ‹œμž‘
  • κ°œλ°œκΈ°κ°„: 2025.07.14 - 2025.08.20 (5μ£Ό)
  • νŒ€κ΅¬μ„±: 6λͺ… (ν’€μŠ€νƒ 6λͺ…)
  • 배포 URL: www.studyo.r-e.kr/ (2025λ…„ 10μ›”κΉŒμ§€ 운영 μ˜ˆμ •)
  • Frontend Repository: react-study-o
  • Backend Repository: tjspring
  • PPT: StudyO λ°œν‘œ 자료
  • μ‹œμ—° μ˜μƒ: youtu.be/YQAbBxCMgDo

πŸ‘₯ νŒ€ μ†Œκ°œ

κΉ€ν™˜ν¬(νŒ€μž₯) κΉ€μ˜ˆμ§€ λ°±μœ μ„  μœ€κ³ μ€ 이재우 μ΄ν˜„μ„­
UI/UX λ””μžμΈ
μŠ€ν„°λ”” κ·Έλ£Ή 관리
FullCalendar 연동
UI/UX λ””μžμΈ
둜그인 인증
계정 관리
멀버 승인/관리
UI/UX λ””μžμΈ
μŠ€ν„°λ”” κ·Έλ£Ή CRUD
AWS S3 연동
썸넀일 관리
νšŒμ›κ°€μž… μ‹œμŠ€ν…œ
필터링 κΈ°λŠ₯
μΆ”μ²œ μ‹œμŠ€ν…œ
λ§ˆμ΄νŽ˜μ΄μ§€
ν”„λ‘œν•„ μˆ˜μ •
곡용 μ»΄ν¬λ„ŒνŠΈ
AWS 인프라
CI/CD ꡬ좕
홍보글 CRUD

✨ μ£Όμš” κΈ°λŠ₯

πŸ“š μŠ€ν„°λ”” 관리

  • μŠ€ν„°λ”” λͺ¨μ§‘: μ§€μ—­κ³Ό μ£Όμ œλ³„ ν•„ν„°λ₯Ό ν†΅ν•œ 효율적인 μŠ€ν„°λ”” 탐색
  • κ·Έλ£Ή 관리: μŠ€ν„°λ””μž₯ κΆŒν•œ 기반 멀버 승인/거절 μ‹œμŠ€ν…œ
  • 일정 관리: FullCalendarλ₯Ό ν™œμš©ν•œ 직관적인 μΊ˜λ¦°λ” μΈν„°νŽ˜μ΄μŠ€

πŸ‘€ μ‚¬μš©μž κ²½ν—˜

  • κ°„νŽΈν•œ μ‹œμž‘: μ‰¬μš΄ κ°€μž…κ³Ό 둜그인 κ³Όμ •
  • κ°œμΈν™”: λ§ˆμ΄νŽ˜μ΄μ§€μ—μ„œ ν”„λ‘œν•„ 관리 및 ν™œλ™ ν˜„ν™© 확인
  • μ‹€μ‹œκ°„ μ†Œν†΅: μŠ€ν„°λ”” ν›„ νŒ€ ν”„λ‘œμ νŠΈλ‘œ μžμ—°μŠ€λŸ¬μš΄ μ „ν™˜

🎯 ν˜‘μ—… 도ꡬ

  • 파일 관리: AWS S3 기반 μ•ˆμ „ν•œ 파일 μ—…λ‘œλ“œ/λ‹€μš΄λ‘œλ“œ
  • μ§„ν–‰ 관리: 개인 ν•  일 관리 및 μ§„μ²™ 상황 확인
  • 홍보 μ‹œμŠ€ν…œ: ν’λΆ€ν•œ ν…μŠ€νŠΈ 에디터λ₯Ό ν†΅ν•œ μŠ€ν„°λ”” 홍보

πŸ›  기술 μŠ€νƒ

Environment

Visual Studio Code IntelliJ IDEA Git GitHub

Frontend

Flutter React React Router

Backend

Java Spring Boot MyBatis Lombok

Database

Oracle SQL

Infrastructure

AWS Amazon EC2 Amazon S3

Design & Cooperation

Figma

πŸ— μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚             β”‚    β”‚              β”‚    β”‚             β”‚
β”‚   React     │◄──►│ Spring Boot  │◄──►│ Oracle 11g  β”‚
β”‚  Frontend   β”‚    β”‚   Backend    β”‚    β”‚  Database   β”‚
β”‚             β”‚    β”‚              β”‚    β”‚             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
       β”‚                   β”‚                   
       β”‚                   β”‚                   
       β–Ό                   β–Ό                   
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”           
β”‚             β”‚    β”‚              β”‚           
β”‚   AWS S3    β”‚    β”‚   AWS EC2    β”‚           
β”‚File Storage β”‚    β”‚    Server    β”‚           
β”‚             β”‚    β”‚              β”‚           
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜           

πŸ“‚ ν”„λ‘œμ νŠΈ ꡬ쑰

Frontend (React)

react-study-o/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ index.html
β”‚   └── favicon.ico
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/     # μž¬μ‚¬μš© μ»΄ν¬λ„ŒνŠΈ
β”‚   β”œβ”€β”€ pages/         # νŽ˜μ΄μ§€ μ»΄ν¬λ„ŒνŠΈ
β”‚   β”œβ”€β”€ utils/         # μœ ν‹Έλ¦¬ν‹° ν•¨μˆ˜
β”‚   β”œβ”€β”€ App.js         # 메인 μ•± μ»΄ν¬λ„ŒνŠΈ
β”‚   └── index.js       # μ—”νŠΈλ¦¬ 포인트
β”œβ”€β”€ package.json
└── README.md

Backend (Spring Boot)

tjspring/
β”œβ”€β”€ src/main/java/com/tj/spring/
β”‚   β”œβ”€β”€ admin/         # κ΄€λ¦¬μž κΈ°λŠ₯
β”‚   β”œβ”€β”€ auth/          # 인증/인가
β”‚   β”œβ”€β”€ study/         # μŠ€ν„°λ”” κ΄€λ ¨
β”‚   β”œβ”€β”€ user/          # μ‚¬μš©μž 관리
β”‚   └── common/        # 곡톡 κΈ°λŠ₯
β”œβ”€β”€ src/main/resources/
β”‚   β”œβ”€β”€ mybatis/mapper/  # MyBatis 맀퍼
β”‚   β”œβ”€β”€ static/          # 정적 파일
β”‚   └── application.properties
└── pom.xml

πŸš€ μ‹œμž‘ν•˜κΈ°

μ„€μΉ˜ 및 μ‹€ν–‰

Frontend μ‹€ν–‰

# λ ˆν¬μ§€ν† λ¦¬ 클둠
git clone https://github.com/hyunsupLee/react-study-o.git
cd react-study-o

# μ˜μ‘΄μ„± μ„€μΉ˜
npm install

# 개발 μ„œλ²„ μ‹€ν–‰
npm run dev

Oracle DB 접속정보 μ„€μ •

  1. μΈν…”λ¦¬μ œμ΄ μš°μƒλ‹¨ configuration Edit
Image

Oracle ν™˜κ²½λ³€μˆ˜ μ„€μ •

  1. Environment variables ν™˜κ²½λ³€μˆ˜μ— DB 정보 μ„€μ •
Image

Backend μ‹€ν–‰

# λ ˆν¬μ§€ν† λ¦¬ 클둠
git clone https://github.com/hyunsupLee/tjspring.git
cd tjspring

🎯 핡심 κΈ°λŠ₯ 상세

1. κΆŒν•œ 기반 μŠ€ν„°λ”” 관리

  • μŠ€ν„°λ””μž₯만 μΊ˜λ¦°λ” 등둝/μˆ˜μ •/μ‚­μ œ κΆŒν•œ
  • 멀버 승인/거절 μ‹œμŠ€ν…œ
  • 그룹별 κΆŒν•œ 뢄리

2. μ‹€μ‹œκ°„ 파일 관리

  • AWS S3 연동을 ν†΅ν•œ μ•ˆμ „ν•œ 파일 μ €μž₯
  • 썸넀일 μžλ™ 생성 및 μ΅œμ ν™”
  • 파일 μ—…λ‘œλ“œ/λ‹€μš΄λ‘œλ“œ μ§„ν–‰λ₯  ν‘œμ‹œ

3. 직관적인 일정 관리

  • FullCalendar 라이브러리 ν™œμš©
  • λ“œλž˜κ·Έ μ•€ λ“œλ‘­μœΌλ‘œ 일정 μˆ˜μ •
  • 개인/κ·Έλ£Ή 일정 톡합 관리

πŸ“Š 개발 ν”„λ‘œμ„ΈμŠ€

Agile 방법둠 적용

  • 4μ£Ό μŠ€ν”„λ¦°νŠΈ: 기획 β†’ 개발 β†’ ν…ŒμŠ€νŠΈ β†’ 배포
  • 일일 μŠ€νƒ λ“œμ—…: 맀일 μ§„ν–‰ 상황 곡유
  • μŠ€ν”„λ¦°νŠΈ 리뷰: μ£Όκ°„ ν”Όλ“œλ°± 및 κ°œμ„ μ‚¬ν•­ λ„μΆœ

Git μ›Œν¬ν”Œλ‘œμš°

  • 브랜치 μ „λž΅: 개인 브랜치 β†’ Main 브랜치
  • CI/CD: GitHub Actionsλ₯Ό ν†΅ν•œ μžλ™ 배포

πŸŽ‰ ν”„λ‘œμ νŠΈ μ„±κ³Ό

기술적 μ„±κ³Ό

  • ν’€μŠ€νƒ 개발: 6λͺ… λͺ¨λ“  νŒ€μ›μ΄ 각자 λ‹΄λ‹Ή κΈ°λŠ₯을 ν”„λ‘ νŠΈμ—”λ“œλΆ€ν„° λ°±μ—”λ“œκΉŒμ§€ μ™„μ „ κ΅¬ν˜„
  • ν΄λΌμš°λ“œ 배포: AWS 인프라λ₯Ό ν™œμš©ν•œ μ‹€μ œ μ„œλΉ„μŠ€ 배포
  • νŒ€ ν˜‘μ—…: Git을 ν™œμš©ν•œ 6λͺ… 규λͺ¨μ˜ 효율적인 ν˜‘μ—… κ²½ν—˜

μ‚¬μš©μž κ°€μΉ˜

  • νŽΈμ˜μ„±: μŠ€ν„°λ”” λͺ¨μ§‘λΆ€ν„° ν™œλ™κΉŒμ§€ μ›μŠ€ν†± 지원
  • νš¨μœ¨μ„±: 직관적인 UI/UX둜 ν•™μŠ΅ 관리 μ‹œκ°„ 단좕
  • ν™•μž₯μ„±: μŠ€ν„°λ””μ—μ„œ ν”„λ‘œμ νŠΈλ‘œ μžμ—°μŠ€λŸ¬μš΄ μ „ν™˜

StudyO - λͺ¨λ“  μŠ€ν„°λ””μ˜ μ‹œμž‘
Study Together, Grow Together

β“’ κΉ€ν™˜ν¬ Β· κΉ€μ˜ˆμ§€ Β· λ°±μœ μ„ 

About

React + Vite , Spring RestAPI , AWS , Oracle , Docker , SSL

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6

Languages