Skip to content

chatgptkrguide/MathLab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿงฎ GoMath - ๊ฒŒ์ด๋ฏธํ”ผ์ผ€์ด์…˜ ์ˆ˜ํ•™ ํ•™์Šต ์•ฑ

Flutter License Deploy

๋“€์˜ค๋ง๊ณ  ์Šคํƒ€์ผ์˜ ๊ฒŒ์ด๋ฏธํ”ผ์ผ€์ด์…˜์„ ์ ์šฉํ•œ ์žฌ๋ฏธ์žˆ๋Š” ์ˆ˜ํ•™ ํ•™์Šต ๋ชจ๋ฐ”์ผ ์•ฑ์ž…๋‹ˆ๋‹ค. ๋งค์ผ ์งง์€ ์‹œ๊ฐ„ ๋™์•ˆ ๊พธ์ค€ํžˆ ์ˆ˜ํ•™์„ ํ•™์Šตํ•˜๋ฉฐ ๋™๊ธฐ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐ŸŒ ๋ฐ๋ชจ

์›น ๋ฒ„์ „: https://chatgptkrguide.github.io/MathLab/

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

๐Ÿ“š ํ•™์Šต ์‹œ์Šคํ…œ

  • ๋ ˆ๋ฒจ ํ…Œ์ŠคํŠธ: ์ดˆ๊ธฐ ์ง„๋‹จ ํ‰๊ฐ€๋กœ ์‚ฌ์šฉ์ž ์‹ค๋ ฅ ํŒŒ์•…
  • ์ ์‘ํ˜• ํ•™์Šต: AI ๊ธฐ๋ฐ˜ ๋‚œ์ด๋„ ์กฐ์ ˆ ๋ฐ ์ทจ์•ฝ ์˜์—ญ ์ง‘์ค‘ ํ•™์Šต
  • ๋‹ค์–‘ํ•œ ๋ฌธ์ œ ์œ ํ˜•: ๊ฐ๊ด€์‹, ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ, ๋‹จ๋‹ตํ˜•
  • ๋‹จ๊ณ„๋ณ„ ํžŒํŠธ: ๋ง‰ํž ๋•Œ ๋‹จ๊ณ„๋ณ„ ๋„์›€๋ง ์ œ๊ณต

๐ŸŽฎ ๊ฒŒ์ด๋ฏธํ”ผ์ผ€์ด์…˜

  • ๊ฒฝํ—˜์น˜(XP) ์‹œ์Šคํ…œ: ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ XP ํš๋“
  • ์—ฐ์† ํ•™์Šต ์ŠคํŠธ๋ฆญ: ๋งค์ผ ํ•™์Šตํ•˜์—ฌ ์ŠคํŠธ๋ฆญ ์œ ์ง€
  • ๋ ˆ๋ฒจ ์‹œ์Šคํ…œ: Bronze โ†’ Silver โ†’ Gold โ†’ Diamond
  • ์—…์  ๋ฑƒ์ง€: ๋‹ค์–‘ํ•œ ํ•™์Šต ์„ฑ์ทจ ๋ฑƒ์ง€
  • ๋ฆฌ๊ทธ ๊ฒฝ์Ÿ: ์ฃผ๊ฐ„ ๋ฆฌ๊ทธ ์‹œ์Šคํ…œ์œผ๋กœ ์นœ๊ตฌ๋“ค๊ณผ ๊ฒฝ์Ÿ

๐Ÿ“Š ํ•™์Šต ๊ด€๋ฆฌ

  • ์ผ์ผ ๋ชฉํ‘œ: ๊ฐœ์ธ ๋งž์ถคํ˜• ์ผ์ผ XP ๋ชฉํ‘œ ์„ค์ •
  • ํ•™์Šต ํ†ต๊ณ„: ์ƒ์„ธํ•œ ํ•™์Šต ์ง„ํ–‰ ์ƒํ™ฉ ๋ฐ ํ†ต๊ณ„
  • ์˜ค๋‹ต ๋…ธํŠธ: ํ‹€๋ฆฐ ๋ฌธ์ œ ์ž๋™ ์ €์žฅ ๋ฐ ๋ณต์Šต
  • ํ•™์Šต ๋ฆฌ๋งˆ์ธ๋”: ์•Œ๋ฆผ์„ ํ†ตํ•œ ํ•™์Šต ์Šต๊ด€ ํ˜•์„ฑ

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ

Frontend

  • Framework: Flutter 3.27.1 (ํฌ๋กœ์Šค ํ”Œ๋žซํผ)
  • ์ƒํƒœ๊ด€๋ฆฌ: Riverpod 2.4.9
  • ๋กœ์ปฌ ์ €์žฅ: SharedPreferences, Hive
  • ์• ๋‹ˆ๋ฉ”์ด์…˜: Lottie, Confetti

Backend & Authentication

  • ์ธ์ฆ: Firebase Authentication
  • ์†Œ์…œ ๋กœ๊ทธ์ธ: Google, Kakao, Apple Sign-in
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: Local Storage (ํ–ฅํ›„ PostgreSQL + Redis)

์ฃผ์š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

dependencies:
  flutter_riverpod: ^2.4.9      # ์ƒํƒœ ๊ด€๋ฆฌ
  shared_preferences: ^2.2.2     # ๋กœ์ปฌ ์ €์žฅ
  lottie: ^2.7.0                 # ์• ๋‹ˆ๋ฉ”์ด์…˜
  confetti: ^0.7.0               # ์ถ•ํ•˜ ํšจ๊ณผ
  firebase_core: ^3.10.0         # Firebase
  firebase_auth: ^5.3.4          # ์ธ์ฆ
  google_sign_in: ^6.2.1         # Google ๋กœ๊ทธ์ธ
  kakao_flutter_sdk: ^1.9.5      # Kakao ๋กœ๊ทธ์ธ
  sign_in_with_apple: ^6.1.3     # Apple ๋กœ๊ทธ์ธ

๐Ÿ“ฑ ์ง€์› ํ”Œ๋žซํผ

  • โœ… iOS (iPhone, iPad)
  • โœ… Android (์Šค๋งˆํŠธํฐ, ํƒœ๋ธ”๋ฆฟ)
  • โœ… Web (๋ฐ์Šคํฌํ†ฑ ๋ธŒ๋ผ์šฐ์ €)
  • ๐Ÿšง macOS (๊ฐœ๋ฐœ ์ค‘)
  • ๐Ÿšง Windows (๊ฐœ๋ฐœ ์ค‘)

๐Ÿš€ ์‹œ์ž‘ํ•˜๊ธฐ

์š”๊ตฌ์‚ฌํ•ญ

  • Flutter SDK 3.27.1 ์ด์ƒ
  • Dart 3.5.0 ์ด์ƒ
  • Android Studio / Xcode (๋ชจ๋ฐ”์ผ ๋นŒ๋“œ์šฉ)

์„ค์น˜ ๋ฐ ์‹คํ–‰

  1. ์ €์žฅ์†Œ ํด๋ก 

    git clone https://github.com/chatgptkrguide/MathLab.git
    cd MathLab
  2. ์˜์กด์„ฑ ์„ค์น˜

    flutter pub get
  3. ์•ฑ ์‹คํ–‰

    # iOS
    flutter run -d ios
    
    # Android
    flutter run -d android
    
    # Web
    flutter run -d chrome

๋นŒ๋“œ

# Android APK
flutter build apk --release

# iOS (macOS ํ•„์š”)
flutter build ios --release

# Web
flutter build web --release

๐Ÿ“– ์ปค๋ฆฌํ˜๋Ÿผ

๊ธฐ์ดˆ ๊ณผ์ •

  • ์‚ฌ์น™์—ฐ์‚ฐ (๋ง์…ˆ, ๋บ„์…ˆ, ๊ณฑ์…ˆ, ๋‚˜๋ˆ—์…ˆ)
  • ๋ถ„์ˆ˜์™€ ์†Œ์ˆ˜
  • ๋น„์™€ ๋น„์œจ

์ค‘๊ธ‰ ๊ณผ์ •

  • ๋Œ€์ˆ˜ (๋ฐฉ์ •์‹, ๋ถ€๋“ฑ์‹, ํ•จ์ˆ˜)
  • ๊ธฐํ•˜ (๋„ํ˜•, ๊ฐ๋„, ๋ฉด์ , ๋ถ€ํ”ผ)
  • ํ†ต๊ณ„์™€ ํ™•๋ฅ 

๊ณ ๊ธ‰ ๊ณผ์ • (์˜ˆ์ •)

  • ๋ฏธ์ ๋ถ„ (๊ทนํ•œ, ๋ฏธ๋ถ„, ์ ๋ถ„)
  • ์„ ํ˜•๋Œ€์ˆ˜
  • ๊ณ ๊ธ‰ ํ†ต๊ณ„

๐ŸŽจ ๋””์ž์ธ ์‹œ์Šคํ…œ

ํ”„๋กœ์ ํŠธ๋Š” Figma ๋””์ž์ธ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

  • ์ƒ‰์ƒ: ๋ฐ๊ณ  ์นœ๊ทผํ•œ GoMath ๋ธŒ๋žœ๋“œ ์ƒ‰์ƒ ํŒ”๋ ˆํŠธ
  • ํƒ€์ดํฌ๊ทธ๋ž˜ํ”ผ: ๊ฐ€๋…์„ฑ ์ค‘์‹ฌ์˜ ํฐํŠธ ๊ณ„์ธต ๊ตฌ์กฐ
  • ์• ๋‹ˆ๋ฉ”์ด์…˜: ๋ถ€๋“œ๋Ÿฝ๊ณ  ์ž์—ฐ์Šค๋Ÿฌ์šด ์ „ํ™˜ ํšจ๊ณผ
  • ๋ ˆ์ด์•„์›ƒ: ๋ชจ๋ฐ”์ผ ์šฐ์„  ๋ฐ˜์‘ํ˜• ๋””์ž์ธ

์ž์„ธํ•œ ๋‚ด์šฉ์€ DESIGN_GUIDE.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๐Ÿ“‚ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

lib/
โ”œโ”€โ”€ app/                    # ์•ฑ ์„ค์ • ๋ฐ ๋ผ์šฐํŒ…
โ”œโ”€โ”€ data/
โ”‚   โ”œโ”€โ”€ models/            # ๋ฐ์ดํ„ฐ ๋ชจ๋ธ
โ”‚   โ”œโ”€โ”€ providers/         # Riverpod ์ƒํƒœ ๊ด€๋ฆฌ
โ”‚   โ””โ”€โ”€ services/          # API ๋ฐ ์ €์žฅ์†Œ ์„œ๋น„์Šค
โ”œโ”€โ”€ features/              # ๊ธฐ๋Šฅ๋ณ„ ํ™”๋ฉด
โ”‚   โ”œโ”€โ”€ auth/             # ์ธ์ฆ
โ”‚   โ”œโ”€โ”€ home/             # ํ™ˆ ํ™”๋ฉด
โ”‚   โ”œโ”€โ”€ lessons/          # ๋ ˆ์Šจ
โ”‚   โ”œโ”€โ”€ problem/          # ๋ฌธ์ œ ํ’€์ด
โ”‚   โ”œโ”€โ”€ profile/          # ํ”„๋กœํ•„
โ”‚   โ””โ”€โ”€ ...
โ”œโ”€โ”€ shared/
โ”‚   โ”œโ”€โ”€ constants/        # ์ƒ์ˆ˜ (์ƒ‰์ƒ, ์Šคํƒ€์ผ ๋“ฑ)
โ”‚   โ”œโ”€โ”€ widgets/          # ๊ณตํ†ต ์œ„์ ฏ
โ”‚   โ”œโ”€โ”€ utils/            # ์œ ํ‹ธ๋ฆฌํ‹ฐ
โ”‚   โ””โ”€โ”€ themes/           # ํ…Œ๋งˆ
โ””โ”€โ”€ main.dart             # ์•ฑ ์ง„์ž…์ 

๐ŸŽฏ ๋กœ๋“œ๋งต

Phase 1 (MVP) - โœ… ์™„๋ฃŒ

  • ๊ธฐ์ดˆ UI/UX ๊ตฌํ˜„
  • ๊ฒŒ์ด๋ฏธํ”ผ์ผ€์ด์…˜ ์‹œ์Šคํ…œ
  • ๋ ˆ๋ฒจ ํ…Œ์ŠคํŠธ
  • ๊ธฐ๋ณธ ๋ฌธ์ œ ํ’€์ด ์‹œ์Šคํ…œ
  • ์†Œ์…œ ๋กœ๊ทธ์ธ ์—ฐ๋™

Phase 2 - ๐Ÿšง ์ง„ํ–‰ ์ค‘

  • ๋ฐฑ์—”๋“œ API ๊ตฌ์ถ•
  • ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ๋™๊ธฐํ™”
  • ์นœ๊ตฌ ์‹œ์Šคํ…œ
  • ๊ทธ๋ฃน ํ•™์Šต ๊ธฐ๋Šฅ

Phase 3 - ๐Ÿ“‹ ๊ณ„ํš

  • AI ํŠœํ„ฐ ๋ชจ๋“œ
  • ์˜คํ”„๋ผ์ธ ๋ชจ๋“œ
  • ๋ถ€๋ชจ ๋ชจ๋“œ (์ž๋…€ ํ•™์Šต ์ถ”์ )
  • ๋‹ค๊ตญ์–ด ์ง€์›

๐Ÿค ๊ธฐ์—ฌํ•˜๊ธฐ

๊ธฐ์—ฌ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ์ฃผ์„ธ์š”:

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“„ ๋ผ์ด์„ ์Šค

์ด ํ”„๋กœ์ ํŠธ๋Š” MIT ๋ผ์ด์„ ์Šค ํ•˜์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ LICENSE ํŒŒ์ผ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๐Ÿ“ž ๋ฌธ์˜

ํ”„๋กœ์ ํŠธ ๊ด€๋ จ ๋ฌธ์˜์‚ฌํ•ญ์€ Issues์— ๋“ฑ๋กํ•ด ์ฃผ์„ธ์š”.


Made with โค๏ธ by GoMath Team

๐Ÿค– Enhanced with Claude Code

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •