generated from ttipo/project-base
2371dff023
시안의 첫 진입 흐름을 순서대로 옮겼다. - 스플래시: 이미지 디코딩 후 등장 애니메이션 재생, 2.6초 뒤 진입 단계에 맞는 화면으로 이동 - 인트로·온보딩은 설치 후 1회만 노출, 로그아웃 시 로그인으로 복귀 (EntryState → 라우터 redirect) - 온보딩 일러스트는 블러·마스크 때문에 레이어별 PNG 로 래스터화하고 움직임은 Flutter 로 재현 (하단 안내문·시작하기 버튼은 비율이 다른 기기에서 잘리지 않도록 위젯으로 분리) - 로그인은 DemoAuthRepository 로 임시 처리 — 소셜 SDK 앱 키와 백엔드 인증 API 연동 시 교체 - 하단 탭 4개 셸(StatefulShellRoute), 탭 화면은 흐름 순서대로 교체할 자리만 둔다 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
20 lines
578 B
Dart
20 lines
578 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
import 'package:tma_app/core/router/app_router.dart';
|
|
import 'package:tma_app/core/theme/app_theme.dart';
|
|
|
|
/// 앱 루트 — 테마와 라우터를 연결한다.
|
|
class RupApp extends ConsumerWidget {
|
|
const RupApp({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context, WidgetRef ref) {
|
|
return MaterialApp.router(
|
|
title: 'rup',
|
|
debugShowCheckedModeBanner: false,
|
|
theme: AppTheme.light,
|
|
routerConfig: ref.watch(appRouterProvider),
|
|
);
|
|
}
|
|
}
|