@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all \u003cpre\u003e\u003ccode\u003e blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks"); } } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); } })(); (function(){ try { var __m = "github.com"; var __re = new RegExp('^' + "github\\.com" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length \u003e 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
@Team-Oh-Yes

Team-Oh!Yes

GrowMoney (그로우머니)

경제 스토리와 퀴즈, NFT 거래로 배우는 청소년 경제 학습 플랫폼

JavaSpring BootMySQLRedisLicense

프로젝트 소개

GrowMoney는 경제 개념이나 투자 개념을 쉽게 배우고 싶은 학생들을 위한 경제 학습 서비스입니다.

기획재정부 조사에 따르면, 학년이 올라갈수록 경제이해력이 낮아지는 현상이 발생하고 있습니다. 초등학생 61.5점, 중학생 51.9점, 고등학생 51.7점으로 학생들의 경제교육 강화가 필요한 상황입니다.

저희는 이 문제를 해결하기 위해 시각적인 그림과 흥미로운 경제 스토리를 활용한 체험형 학습 서비스를 개발했습니다.

주요 기능

경제 학습 로드맵

  • 10개 테마, 50개 단원으로 구성된 체계적인 경제 교육 커리큘럼
  • 시각적 그림과 스토리텔링 기반 자발적 체험형 학습
  • 단계별 진행, 중간 중단 및 자유로운 학습 지원

퀴즈 시스템

  • 학습 내용 기반 경제 퀴즈
  • 포인트 보상 시스템
  • 틀린 문제 복습 기능

NFT 도감 & 뽑기

  • 학습 보상으로 획득하는 NFT 캐릭터
  • 테마별 다양한 NFT 컬렉션
  • 뽑기 시스템을 통한 재미 요소

NFT 거래소

  • 사용자 간 NFT 거래 기능
  • 포인트 기반 경제 시뮬레이션
  • 실제 경제 원리 체험

랭킹 시스템

  • 사용자별 학습 진도 및 퀴즈 점수 기반 랭킹
  • 경쟁을 통한 학습 동기 부여

기술 스택

Backend

기술버전용도
Java21메인 언어
Spring Boot3.5.5백엔드 프레임워크
Spring Security-인증/인가
Spring Data JPA-ORM
MySQL8.0+메인 데이터베이스
Redislatest토큰 관리, 캐싱
JWT0.12.5토큰 기반 인증
Swagger2.8.8API 문서화

Frontend

기술용도
ReactUI 프레임워크
Vite빌드 도구
React Router라우팅
AxiosHTTP 통신
Styled-components스타일링
React Query서버 상태 관리

DevOps

기술용도
AWS EC2서버 호스팅
GitHub ActionsCI/CD
Docker컨테이너화

프로젝트 구조

grow-up-money-server/
├── .github/workflows/ # CI/CD 설정
├── src/main/java/com/ohyes/GrowUpMoney/
│ ├── domain/
│ │ ├── user/ # 사용자 인증/관리
│ │ ├── roadmap/ # 학습 로드맵
│ │ ├── quiz/ # 퀴즈 시스템
│ │ ├── nft/ # NFT 관리
│ │ ├── marketplace/ # 거래소
│ │ ├── point/ # 포인트 시스템
│ │ ├── ranking/ # 랭킹
│ │ └── admin/ # 관리자
│ └── global/
│ ├── config/ # 설정 (Security, JWT, CORS 등)
│ ├── exception/ # 예외 처리
│ └── util/ # 유틸리티
└── src/main/resources/
└── application.yml # 환경 설정
/Grow-up-money-web/ ├── /src // 모든 소스 코드가 위치하는 핵심 폴더
│ ├── components/
│ │ ├── Add/ #common에서 합친페이지
│ │ ├── api/ #api연결
│ │ ├── common/
│ │ │ ├── AdminComponents/ │ │ │ ├── Loadmapcomponents/
│ │ │ ├── Login/
│ │ │ ├── Logincomponents/
│ │ │ ├── Loginmaincomponents/
│ │ │ ├── maincomponents/
│ │ │ ├── Market/
│ │ │ ├── mypage/
│ │ │ ├── plancomponents/
│ │ │ ├── Serviccenter/
│ │ │ ├── SignUp/
│ │ │ ├── Theme/
│ │ ├── css/ #css파일모음
│ │ ├── data/ #임시 데이터모음
│ │ ├── styled/ #스타일드 컴포넌트
│ ├── img/ #이미지
│ ├── error/ #에러페이지
│ ├── atoms.ts #상태관리
│ └── router.jsx/ #라우터
├── /node_modules #노드 모듈
├── /env #서버주소저장
├── index ├── package-lock.json
├── package.json
├── README.md
├── eslint.config
└── vite.config.js
이름역할담당
문채원총괄 팀장프론트엔드, 프로젝트 관리
배준하개발 팀장백엔드, Git 관리, ERD 설계
김민지디자인 팀장백엔드, UI/UX 가이드라인, 로드맵
홍준기팀원백엔드, 인증 시스템, ERD 설계
한석주팀원프론트엔드, NFT 디자인
안재민팀원프론트엔드, NFT 디자인
최현수팀원프론트엔드, UI/UX 디자인

커밋 메시지 규칙

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드, 설정 변경

⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

Popular repositories Loading

  1. grow-up-money-server grow-up-money-serverPublic

    grow-up-money-server

    Java 2 1

  2. grow-up-money-web grow-up-money-webPublic

    JavaScript 1

  3. .github .githubPublic

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…