flutter-firebase-masterclass
Flutter & Firebase Masterclass
파일 탐색기
최종 버전 다운로드 (.zip)- ecommerce-app-preview.png
- tests.yaml
- launch.json
- adb-exited-code-1-not-enough-space.mdx
- android-build-gradle-issues.mdx
- cant-run-build-runner-build-runner-logger.mdx
- cleartext-http-traffic-not-permitted.mdx
- cloud-firestore-setup-datastore-mode.mdx
- cocoapods-did-not-set-base-configuration.mdx
- cocoapods-not-installed.mdx
- enable-macos-desktop-support.mdx
- extra-page-swiping-safari-ios.mdx
- failed-update-cloud-function-secret.mdx
- firebase-tools-java-11.mdx
- flutter-3.13-update.mdx
- flutter-firebase-macos-errors.mdx
- how-to-recreate-starter-project.mdx
- how-to-run-cocoapods-apple-silicon.mdx
- localization-feature-first.mdx
- macos-deployment-target-issue.mdx
- macos-method-definition-not-found.mdx
- macos-pods-invalid-key-value-pair.mdx
- missing-file-xcode-14.3.mdx
- project-quotas-max-instances.mdx
- sandbox-not-in-sync-podfile.mdx
- unable-to-find-runner-tests.mdx
- using-bash-zsh-on-windows.mdx
- xcode-dt-toolchain-dir.mdx
- xcode-dvt-assertions-macos.mdx
- xcode-ios-sandbox-error.mdx
- cloud-firestore-datastore.png
- xcode-minimum-deployment-target.png
- index.mdx
- 2023-05.mdx
- 2023-08.mdx
- 2023-11.mdx
- 2024-05.mdx
- index.mdx
- tests.yaml
- launch.json
- AndroidManifest.xml
- MainActivity.kt
- launch_background.xml
- ic_launcher_background.png
- ic_launcher_foreground.png
- ic_launcher_background.png
- ic_launcher_foreground.png
- launch_background.xml
- ic_launcher_background.png
- ic_launcher_foreground.png
- ic_launcher_background.png
- ic_launcher_foreground.png
- ic_launcher_background.png
- ic_launcher_foreground.png
- launcher_icon.xml
- ic_launcher.png
- launcher_icon.png
- ic_launcher.png
- launcher_icon.png
- ic_launcher.png
- launcher_icon.png
- ic_launcher.png
- launcher_icon.png
- ic_launcher.png
- launcher_icon.png
- styles.xml
- styles.xml
- network_security_config.xml
- AndroidManifest.xml
- AndroidManifest.xml
- build.gradle.kts
- gradle-wrapper.properties
- .gitignore
- build.gradle.kts
- gradle.properties
- settings.gradle.kts
- LICENSE.txt
- Roboto-Regular.ttf
- bruschetta-plate.jpg
- flowers-plate.jpg
- honey-pot.jpg
- juicer-citrus-fruits.jpg
- mozzarella-plate.jpg
- pasta-plate.jpg
- piggy-blue.jpg
- piggy-green.jpg
- piggy-pink.jpg
- pizza-plate.jpg
- plate-and-bowl.jpg
- salt-pepper-lemon.jpg
- salt-pepper-olives.jpg
- snacks-plate.jpg
- app-icon-background.png
- app-icon-foreground.png
- app-icon.png
- admin.ts
- index.ts
- ratings.ts
- stripe.ts
- stripe_images.ts
- stripe_secret.ts
- .eslintrc.js
- .gitignore
- package-lock.json
- package.json
- tsconfig.dev.json
- tsconfig.json
- purchase_flow_test.dart
- AppFrameworkInfo.plist
- Debug.xcconfig
- Release.xcconfig
- Contents.json
- Icon-App-1024x1024@1x.png
- Icon-App-20x20@1x.png
- Icon-App-20x20@2x.png
- Icon-App-20x20@3x.png
- Icon-App-29x29@1x.png
- Icon-App-29x29@2x.png
- Icon-App-29x29@3x.png
- Icon-App-40x40@1x.png
- Icon-App-40x40@2x.png
- Icon-App-40x40@3x.png
- Icon-App-50x50@1x.png
- Icon-App-50x50@2x.png
- Icon-App-57x57@1x.png
- Icon-App-57x57@2x.png
- Icon-App-60x60@2x.png
- Icon-App-60x60@3x.png
- Icon-App-72x72@1x.png
- Icon-App-72x72@2x.png
- Icon-App-76x76@1x.png
- Icon-App-76x76@2x.png
- Icon-App-83.5x83.5@2x.png
- Contents.json
- LaunchImage.png
- LaunchImage@2x.png
- LaunchImage@3x.png
- README.md
- LaunchScreen.storyboard
- Main.storyboard
- AppDelegate.swift
- Info.plist
- Runner-Bridging-Header.h
- IDEWorkspaceChecks.plist
- WorkspaceSettings.xcsettings
- contents.xcworkspacedata
- Runner.xcscheme
- project.pbxproj
- IDEWorkspaceChecks.plist
- WorkspaceSettings.xcsettings
- contents.xcworkspacedata
- RunnerTests.swift
- .gitignore
- Podfile
- Podfile.lock
- action_text_button.dart
- alert_dialogs.dart
- async_value_widget.dart
- custom_image.dart
- custom_text_button.dart
- decorated_box_with_shadow.dart
- empty_placeholder_widget.dart
- error_message_widget.dart
- primary_button.dart
- responsive_center.dart
- responsive_scrollable_card.dart
- responsive_two_column_layout.dart
- app_sizes.dart
- breakpoints.dart
- app_exception.dart
- async_error_logger.dart
- error_logger.dart
- error_logger.g.dart
- user_token_refresh_service.dart
- user_token_refresh_service.g.dart
- auth_repository.dart
- auth_repository.g.dart
- fake_app_user.dart
- fake_auth_repository.dart
- firebase_app_user.dart
- user_metadata_repository.dart
- user_metadata_repository.g.dart
- app_user.dart
- account_screen.dart
- account_screen_controller.dart
- account_screen_controller.g.dart
- email_password_sign_in_controller.dart
- email_password_sign_in_controller.g.dart
- email_password_sign_in_form_type.dart
- email_password_sign_in_screen.dart
- email_password_sign_in_validators.dart
- string_validators.dart
- cart_service.dart
- cart_service.g.dart
- cart_sync_service.dart
- cart_sync_service.g.dart
- fake_local_cart_repository.dart
- local_cart_repository.dart
- local_cart_repository.g.dart
- sembast_cart_repository.dart
- fake_remote_cart_repository.dart
- remote_cart_repository.dart
- remote_cart_repository.g.dart
- cart.dart
- item.dart
- mutable_cart.dart
- add_to_cart_controller.dart
- add_to_cart_controller.g.dart
- add_to_cart_widget.dart
- cart_total_text.dart
- cart_total_with_cta.dart
- shopping_cart_item.dart
- shopping_cart_items_builder.dart
- shopping_cart_screen.dart
- shopping_cart_screen_controller.dart
- shopping_cart_screen_controller.g.dart
- item_quantity_selector.dart
- checkout_service.dart
- checkout_service.g.dart
- fake_checkout_service.dart
- checkout_sessions_repository.dart
- checkout_sessions_repository.g.dart
- payment_sheet_repository.dart
- payment_sheet_repository.g.dart
- payments_repository.dart
- payments_repository.g.dart
- checkout_session.dart
- checkout_session_platform.dart
- payment.dart
- checkout_screen.dart
- payment_button.dart
- payment_button_controller.dart
- payment_button_controller.g.dart
- payment_page.dart
- user_orders_provider.dart
- user_orders_provider.g.dart
- fake_orders_repository.dart
- orders_repository.dart
- orders_repository.g.dart
- order.dart
- user_order.dart
- order_card.dart
- order_item_list_tile.dart
- order_status_label.dart
- orders_list_screen.dart
- fake_products_repository.dart
- products_repository.dart
- products_repository.g.dart
- products_search_repository.dart
- products_search_repository.g.dart
- test_products.dart
- product.dart
- home_app_bar.dart
- more_menu_button.dart
- shopping_cart_icon.dart
- leave_review_action.dart
- product_average_rating.dart
- product_screen.dart
- product_card.dart
- products_list_screen.dart
- products_search_query_notifier.dart
- products_search_query_notifier.g.dart
- products_search_text_field.dart
- sliver_products_grid.dart
- image_upload_service.dart
- image_upload_service.g.dart
- image_upload_repository.dart
- image_upload_repository.g.dart
- template_products_providers.dart
- template_products_providers.g.dart
- admin_product_edit_controller.dart
- admin_product_edit_controller.g.dart
- admin_product_edit_screen.dart
- admin_product_upload_controller.dart
- admin_product_upload_controller.g.dart
- admin_product_upload_screen.dart
- admin_products_add_screen.dart
- admin_products_screen.dart
- product_validator.dart
- fake_reviews_service.dart
- reviews_service.dart
- reviews_service.g.dart
- fake_reviews_repository.dart
- reviews_repository.dart
- reviews_repository.g.dart
- review.dart
- leave_review_controller.dart
- leave_review_controller.g.dart
- leave_review_screen.dart
- product_rating_bar.dart
- product_review_card.dart
- product_reviews_list.dart
- string_hardcoded.dart
- app_router.dart
- app_router.g.dart
- go_router_refresh_stream.dart
- not_found_screen.dart
- async_value_ui.dart
- currency_formatter.dart
- currency_formatter.g.dart
- current_date_provider.dart
- current_date_provider.g.dart
- date_formatter.dart
- date_formatter.g.dart
- delay.dart
- html_window_url_non_web.dart
- html_window_url_stub.dart
- html_window_url_web.dart
- in_memory_store.dart
- notifier_mounted.dart
- app.dart
- app_bootstrap.dart
- app_bootstrap_fakes.dart
- app_bootstrap_firebase.dart
- app_bootstrap_stripe.dart
- .gitignore
- env.dart
- main.dart
- main_fakes.dart
- Flutter-Debug.xcconfig
- Flutter-Release.xcconfig
- GeneratedPluginRegistrant.swift
- app_icon_1024.png
- app_icon_128.png
- app_icon_16.png
- app_icon_256.png
- app_icon_32.png
- app_icon_512.png
- app_icon_64.png
- Contents.json
- MainMenu.xib
- AppInfo.xcconfig
- Debug.xcconfig
- Release.xcconfig
- Warnings.xcconfig
- AppDelegate.swift
- DebugProfile.entitlements
- Info.plist
- MainFlutterWindow.swift
- Release.entitlements
- IDEWorkspaceChecks.plist
- Runner.xcscheme
- project.pbxproj
- IDEWorkspaceChecks.plist
- contents.xcworkspacedata
- RunnerTests.swift
- .gitignore
- Podfile
- Podfile.lock
- accounts.json
- config.json
- all_namespaces_all_kinds.export_metadata
- output-0
- firestore_export.overall_export_metadata
- 10856aef-8137-4884-88f6-2cc021e683d7
- 209a2b7c-4691-4261-bdfd-dbeba38831f3
- 32f041e7-9c44-4d46-9d19-691510f0fd5d
- 36c3abb7-65f7-4fc5-927c-94d4961910ec
- 49d1b309-97a6-439f-a049-c3ad0f6f4e03
- 5ed4c4b6-ae96-41fa-bbdd-fa1c057592fe
- 9b282f39-a683-4c17-831a-93f6d056b3e3
- a43e47f3-2d6f-49f9-9f61-051c3225a37f
- af4d0051-3d93-422a-8d45-d802cafd430b
- b17bc9d6-4705-4de7-b2e1-9894ca576f1e
- b795f696-8608-4b64-ac82-2d6bc1e0b549
- d8de9998-1154-4a08-a922-fee06f78ecc3
- e4428c77-536b-4275-a6eb-5c57aca6dfab
- f4f11faa-7299-4447-89c9-f66bb68beed1
- 10856aef-8137-4884-88f6-2cc021e683d7.json
- 209a2b7c-4691-4261-bdfd-dbeba38831f3.json
- 32f041e7-9c44-4d46-9d19-691510f0fd5d.json
- 36c3abb7-65f7-4fc5-927c-94d4961910ec.json
- 49d1b309-97a6-439f-a049-c3ad0f6f4e03.json
- 5ed4c4b6-ae96-41fa-bbdd-fa1c057592fe.json
- 9b282f39-a683-4c17-831a-93f6d056b3e3.json
- a43e47f3-2d6f-49f9-9f61-051c3225a37f.json
- af4d0051-3d93-422a-8d45-d802cafd430b.json
- b17bc9d6-4705-4de7-b2e1-9894ca576f1e.json
- b795f696-8608-4b64-ac82-2d6bc1e0b549.json
- d8de9998-1154-4a08-a922-fee06f78ecc3.json
- e4428c77-536b-4275-a6eb-5c57aca6dfab.json
- f4f11faa-7299-4447-89c9-f66bb68beed1.json
- buckets.json
- firebase-export-metadata.json
- fake_auth_repository_test.dart
- account_screen_controller_test.dart
- account_screen_test.dart
- email_password_sign_in_controller_test.dart
- email_password_sign_in_screen_test.dart
- auth_flow_test.dart
- auth_robot.dart
- cart_service_test.dart
- cart_sync_service_test.dart
- cart_total_provider_test.dart
- item_available_quantity_provider_test.dart
- mutable_cart_test.dart
- add_to_cart_controller_test.dart
- shopping_cart_screen_controller_test.dart
- shopping_cart_screen_test.dart
- cart_robot.dart
- fake_checkout_service_test.dart
- checkout_screen_test.dart
- payment_button_controller_test.dart
- checkout_robot.dart
- orders_robot.dart
- fake_products_repository_test.dart
- products_robot.dart
- reviews_service_test.dart
- leave_review_controller_test.dart
- leave_review_screen_test.dart
- reviews_robot.dart
- purchase_flow_test.dart
- .gitignore
- golden_products_list_test.dart
- golden_robot.dart
- products_list_1000x1000.png
- products_list_300x600.png
- products_list_600x800.png
- mocks.dart
- robot.dart
- Icon-192.png
- Icon-512.png
- Icon-maskable-192.png
- Icon-maskable-512.png
- favicon.png
- index.html
- manifest.json
- .gitattributes
- .gitignore
- .metadata
- analysis_options.yaml
- dart_test.yaml
- firestore.indexes.json
- firestore.rules
- pubspec.lock
- pubspec.yaml
- README.md
- storage.rules
- .gitignore
- docs.json
- LICENSE.md
- README.md
# 설치 가이드
1. 코드 내려받기
git clone https://github.com/bizz84/flutter-firebase-masterclass
깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.
cd flutter-firebase-masterclass
방금 내려받은 프로젝트 폴더 안으로 이동합니다.
2. Gradle (Java/Kotlin)
보통 추천사전 준비물
- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- JDK (Java) Java/Kotlin 프로젝트를 빌드/실행하려면 필요합니다.
- Gradle 레포에 포함된 gradlew(Gradle Wrapper)를 쓰면 Gradle을 따로 설치할 필요가 없습니다.
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
cd ecommerce_app/android/app
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
./gradlew build
Gradle로 빌드를 진행합니다.
BUILD SUCCESSFUL 메시지가 뜨면 성공입니다. build/ 폴더에 결과물이 생성됩니다.
3. Node.js
쉬움사전 준비물
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
cd ecommerce_app/functions
이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.
npm install
package.json에 명시된 라이브러리들을 내려받아 설치합니다.
npm start
개발/실행 서버를 켭니다.
명령어 실행 후 터미널에 나타나는 주소(보통 http://localhost:3000 형태)를 브라우저에서 열어보세요.
// repository documentation
Was this content helpful?
(0 ratings)
