Flutter 앱 개발에 필요한 모든 핵심 기능이 미리 구현된 올인원 스타터킷
이 스타터킷은 비개발자 4주만에 수익화 서비스 만들기: AI 바이브코딩 웹 + 앱 ALL IN ONE 강의와 함께 사용하도록 제작되었습니다.
- 비개발자도 OK: 코딩 경험이 없어도 4주 만에 앱 출시 가능
- 수익화 전략 포함: AdMob 광고로 실제 수익 창출 방법 학습
- AI 활용: Cursor AI를 활용한 효율적인 개발 방법
- 실무 프로젝트: 실제로 작동하고 수익을 만드는 앱 개발
- Flutter 기초부터 심화까지
- 소셜 로그인 구현 (카카오, 구글, 애플)
- Supabase를 활용한 백엔드 구축
- AdMob 광고 통합 및 수익화
- 앱 스토어 출시 완벽 가이드
- AI를 활용한 빠른 기능 개발
👉 강의 바로가기
- 이메일/비밀번호 인증
- 소셜 로그인 (구글, 카카오, 애플)
- 자동 로그인 유지
- Supabase 세션 관리
- Google AdMob 통합
- 배너, 전면, 보상형, 네이티브 광고
- 광고 빈도 조절
- Firebase Analytics 수익 추적
- Material Design 3 컴포넌트
- 다크모드 지원
- 반응형 레이아웃
- flutter_animate를 활용한 부드러운 애니메이션
- 커스텀 위젯 라이브러리
- 카메라 & 갤러리 접근
- GPS 위치 서비스
- 권한 처리
- 클립보드 기능
- 햅틱 피드백
- Riverpod 상태 관리
- go_router 라우팅
- Supabase 실시간 백엔드
- Firebase 분석
- 클린 아키텍처 패턴
- Flutter SDK (3.24 이상)
- Dart SDK (3.5 이상)
- Android Studio / Xcode
- Firebase 계정
- Supabase 계정
-
저장소 클론
git clone https://github.com/dingcodingco/dingco-vibe-starter-app.git cd dingco-vibe-starter-app -
의존성 설치
flutter pub get
-
iOS 설정 (macOS에서만)
cd ios && pod install && cd ..
.env.example을 복사하여.env파일 생성:cp .env.example .env
.env파일을 열어 실제 값으로 변경
- Firebase Console에서 새 프로젝트 생성
- Android 앱 추가:
- 패키지명:
com.dingco.vibecoding google-services.json다운로드 →android/app/에 저장- 예제 파일:
android/app/google-services.json.example참고
- 패키지명:
- iOS 앱 추가:
- 번들 ID:
com.dingco.vibecoding GoogleService-Info.plist다운로드 →ios/Runner/에 저장- 예제 파일:
ios/Runner/GoogleService-Info.plist.example참고
- 번들 ID:
- Supabase에서 프로젝트 생성
lib/core/config/supabase_config.dart업데이트:class SupabaseConfig { static const String url = '여기에_SUPABASE_URL'; static const String anonKey = '여기에_SUPABASE_ANON_KEY'; }
- Kakao Developers에서 앱 등록
lib/core/config/kakao_config.dart업데이트:class KakaoConfig { static const String nativeAppKey = '여기에_NATIVE_APP_KEY'; }
# 연결된 기기에서 실행
flutter run
# 특정 플랫폼에서 실행
flutter run -d android
flutter run -d ios
# 자세한 로그 출력과 함께 실행
flutter run -v스타터킷에는 완전히 작동하는 데모 화면들이 포함되어 있습니다:
- 🔐 인증 데모: 소셜 로그인 구현 테스트
- ☁️ Supabase 데모: 실시간 동기화 CRUD 작업
- 💰 AdMob 데모: 다양한 광고 형식 및 구현
- 🎨 디자인 시스템: 모든 Material Design 3 컴포넌트
- 📱 네이티브 기능: 카메라, GPS, 권한
lib/
├── core/ # 핵심 기능
│ ├── theme/ # 앱 테마 및 스타일링
│ ├── constants/ # 앱 상수
│ └── config/ # 설정 파일
├── features/ # 기능 모듈
│ ├── auth/ # 인증
│ ├── home/ # 홈 화면
│ ├── profile/ # 사용자 프로필
│ └── demo/ # 데모 화면
├── shared/ # 공유 컴포넌트
│ ├── widgets/ # 재사용 가능한 위젯
│ ├── services/ # 서비스 클래스
│ └── providers/ # Riverpod 프로바이더
└── main.dart # 앱 진입점
- Flutter - UI 프레임워크
- Riverpod - 상태 관리
- Supabase - Backend as a Service
- Firebase - 분석 및 Crashlytics
- Google Mobile Ads - 수익화
- Material Design 3 - 디자인 시스템
dependencies:
flutter_riverpod: ^2.5.1
go_router: ^14.2.0
supabase_flutter: ^2.6.0
firebase_core: ^3.1.1
firebase_analytics: ^11.3.0
google_mobile_ads: ^5.1.0
kakao_flutter_sdk_user: ^1.9.0
google_sign_in: ^6.2.1
sign_in_with_apple: ^6.1.0
image_picker: ^1.1.2
geolocator: ^12.0.0
flutter_animate: ^4.5.0-
서명 키 생성:
keytool -genkey -v -keystore release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias
-
릴리즈 APK/AAB 빌드:
flutter build apk --release flutter build appbundle --release
-
Xcode에서 열기:
open ios/Runner.xcworkspace
-
서명 설정 및 빌드:
flutter build ios --release
Android 빌드 에러
cd android && ./gradlew clean && cd ..
flutter clean && flutter pub getiOS 빌드 에러
cd ios && pod deintegrate && pod install && cd ..권한 문제
- iOS:
Info.plist에 사용 설명 추가 - Android:
AndroidManifest.xml에 권한 추가
이 프로젝트는 MIT 라이선스를 따릅니다 - 자세한 내용은 LICENSE 파일을 참조하세요.
기여를 환영합니다! Pull Request를 자유롭게 제출해주세요.
- 프로젝트 Fork
- Feature 브랜치 생성 (
git checkout -b feature/AmazingFeature) - 변경사항 커밋 (
git commit -m 'Add some AmazingFeature') - 브랜치에 Push (
git push origin feature/AmazingFeature) - Pull Request 오픈