docs: Update SUMMARY.md

This commit is contained in:
ChangJoo Park(박창주) 2025-05-13 19:11:34 +09:00
parent 7be4a9578a
commit 341898d4af
4 changed files with 253 additions and 15 deletions

13
.vscode/settings.json vendored
View file

@ -2,5 +2,16 @@
"dart.flutterSdkPath": "/Users/changjoopark/.local/share/mise/installs/flutter/3.29.3-stable",
"debug.javascript.defaultRuntimeExecutable": {
"pwa-node": "/Users/changjoopark/.local/share/mise/shims/node"
}
},
"typescript.validate.enable": true,
"javascript.validate.enable": true,
"files.exclude": {
"**/node_modules/**/*": true
},
"search.exclude": {
"**/node_modules/**/*": true
},
"typescript.disableAutomaticTypeAcquisition": true,
"typescript.tsserver.experimental.enableProjectDiagnostics": false,
"typescript.tsserver.enableTracing": true
}

123
SUMMARY.md Normal file
View file

@ -0,0 +1,123 @@
## 안내
- 소개
- 시작하기
## 튜토리얼
- 프로젝트 1. 카운터
- 프로젝트 2. TodoList
## 디버깅
- Flutter Devtools
- 로거 (talker)
## Dart
- 소개
## 기초
- Container
- 레이아웃
- ListView, GridView
- Text
- Image
- Button
- Form
## 중급
- StatelessWidget / StatefulWidget
- Slivers
- MediaQuery
- LayoutBuilder
- Theme, ThemeData
- Semantics
## 심화
- flutter_mix
## 테스트
- unit
- mobile.dev
## 파이어베이스
- Firebase Cloud Messaging
## 애니메이션
## 네비게이션
- 소개
- Navigator
- Navigator 2.0 (go_router)
- 실습: TodoList 개선
## 서버와의 통신
- 소개
- Dio
- 실습: 무한 스크롤 구현
## 네이티브와의 소통
- 소개
- MethodChannel
- iOS에 이벤트 전달
- Android에 이벤트 전달
- 네이티브에서 Flutter로
## 상태 관리
- 소개
- setState
- InheritedWidget
- riverpod
## 에셋 관리
- 소개
- 에셋 추가 방법
- 타이포그래피
- 이미지
- rootBundle
- Lottie
- flutter_gen
- 활용 패턴
## 패키지
- 소개
- pub.dev 탐색
- 패키지 관리
- dependency_override, dev_dependencies
- 패키지 작성
## 모노레포
- 소개
- melos vs dart workspace
- 모노레포 활용 패턴
## 운영
- 배포 환경
- 자동 배포 (Codemagic)
- Apple Appstore
- Google Play
- 사용자 분석 (Firebase Analytics)
- 사용자 분석 (Posthog)
- 오류 추적 (Sentry)
- 오류 추적 (Firebase Crashlytics)
## 참조
- 의존성 관리
- Flutter Hooks
- 추천 패키지

View file

@ -9,7 +9,7 @@ export default defineConfig({
trailingSlash: "always",
integrations: [
starlight({
title: "My Own Flutter Book",
title: "Flutter 문서",
social: [
{
icon: "github",
@ -36,9 +36,18 @@ export default defineConfig({
],
},
{
label: "개발 가이드",
label: "기본 컴포넌트",
items: [
{ label: "프로젝트 1. 카운터", slug: "tutorials/1_counter" },
{ label: "Container", slug: "tutorials/1_counter" },
{ label: "레이아웃", slug: "tutorials/1_counter" },
{ label: "폼 엘리먼트", slug: "tutorials/1_counter" },
{ label: "폼 엘리먼트", slug: "tutorials/1_counter" },
],
},
{
label: "커스텀 컴포넌트",
items: [
{ label: "Container", slug: "tutorials/1_counter" },
{
label: "프로젝트 2. TodoList",
slug: "tutorials/2_todo_list",
@ -46,26 +55,115 @@ export default defineConfig({
],
},
{
label: "주요 컴포넌트",
label: "네이티브와의 소통",
items: [
{ label: "프로젝트 1. 카운터", slug: "tutorials/1_counter" },
{ label: "소개", slug: "tutorials/1_counter" },
{
label: "프로젝트 2. TodoList",
label: "MethodChannel",
slug: "tutorials/2_todo_list",
},
{
label: "iOS에 이벤트 전달",
slug: "tutorials/2_todo_list",
},
{
label: "Android에 이벤트 전달",
slug: "tutorials/2_todo_list",
},
{
label: "네이티브에서 Flutter로",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "참조",
autogenerate: { directory: "reference" },
},
{
label: "리소스",
label: "상태 관리",
items: [
{ label: "소개", slug: "tutorials/1_counter" },
{
label: "프로젝트 2. TodoList",
label: "InheritedWidget",
slug: "tutorials/2_todo_list",
},
{
label: "riverpod",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "에셋 관리",
items: [
{ label: "소개", slug: "tutorials/1_counter" },
{ label: "flutter_gen", slug: "tutorials/1_counter" },
{
label: "활용 패턴",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "패키지",
items: [
{ label: "소개", slug: "tutorials/1_counter" },
{
label: "패키지 관리",
slug: "tutorials/2_todo_list",
},
{
label: "패키지 작성",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "모노레포",
items: [
{ label: "소개", slug: "tutorials/1_counter" },
{
label: "melos vs dart workspace",
slug: "tutorials/2_todo_list",
},
{
label: "모노레포 활용 패턴",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "운영",
items: [
{ label: "배포 환경", slug: "tutorials/1_counter" },
{ label: "자동 배포 (Codemagic)", slug: "tutorials/1_counter" },
{ label: "Apple Appstore", slug: "tutorials/1_counter" },
{ label: "Google Play", slug: "tutorials/1_counter" },
{
label: "사용자 분석 (Firebase Analytics)",
slug: "tutorials/2_todo_list",
},
{
label: "사용자 분석 (Posthog)",
slug: "tutorials/2_todo_list",
},
{
label: "오류 추적 (Sentry)",
slug: "tutorials/2_todo_list",
},
{
label: "오류 추적 (Firebase Crashlytics)",
slug: "tutorials/2_todo_list",
},
],
},
{
label: "참조",
items: [
{
label: "의존성 관리",
slug: "tutorials/2_todo_list",
},
{ label: "Flutter Hooks", slug: "tutorials/1_counter" },
{ label: "추천 패키지", slug: "tutorials/1_counter" },
],
},
],

View file

@ -1,5 +1,11 @@
{
"extends": "astro/tsconfigs/strict",
"include": [".astro/types.d.ts", "**/*"],
"exclude": ["dist"]
"include": [
".astro/types.d.ts",
"**/*"
],
"exclude": [
"dist",
"node_modules"
]
}