feat(flutter): 시안 기반 테마·폰트·아이콘과 공통 위젯 추가

Claude Design 시안(rup)을 옮기기 위한 공통 기반.
- 색·크기·글꼴 토큰을 시안 styles.css 값 그대로 상수화하고 테마에 연결
- SUITE·충북대체·어비꿍꿍체 번들 (웹폰트만 배포되는 서체는 TTF 로 변환, 출처는 fonts/README.md)
- 시안 아이콘 56종·전용 글리프를 Dart 로 옮긴 RupIcon
- 눌림 축소(Pressable)·pill 버튼·시안 좌표 배치(DesignArtBox)·그림자 이미지 위젯
- CSS 키프레임처럼 구간마다 곡선을 적용하는 보간 유틸과 테스트
- go_router · flutter_svg · shared_preferences 의존성 추가

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-28 18:54:03 +09:00
parent 9b37235d1e
commit 8e2fbe79d8
52 changed files with 1198 additions and 25 deletions
+41 -25
View File
@@ -38,6 +38,9 @@ dependencies:
flutter_dotenv: ^5.2.1
flutter_riverpod: ^3.3.1
flutter_secure_storage: ^10.0.0
go_router: ^17.5.0
flutter_svg: ^2.3.0
shared_preferences: ^2.5.5
dev_dependencies:
flutter_test:
@@ -64,29 +67,42 @@ flutter:
# 런타임 환경변수 — flutter_dotenv 로 로드
assets:
- .env
# 시안(.design/assets) 에서 가져온 이미지. 경로 상수는 lib/core/constants/app_assets.dart
- assets/images/splash/
- assets/images/onboarding/
- assets/images/login/
- assets/svg/intro/
- assets/svg/login/
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/to/resolution-aware-images
# For details regarding adding assets from package dependencies, see
# https://flutter.dev/to/asset-from-package
# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
# - family: Schyler
# fonts:
# - asset: fonts/Schyler-Regular.ttf
# - asset: fonts/Schyler-Italic.ttf
# style: italic
# - family: Trajan Pro
# fonts:
# - asset: fonts/TrajanPro.ttf
# - asset: fonts/TrajanPro_Bold.ttf
# weight: 700
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/to/font-from-package
# 폰트 — 출처·라이선스는 assets/fonts/README.md
fonts:
# 본문(UI) 서체 — 시안의 --font-ui
- family: SUITE
fonts:
- asset: assets/fonts/SUITE-Regular.ttf
weight: 400
- asset: assets/fonts/SUITE-Medium.ttf
weight: 500
- asset: assets/fonts/SUITE-SemiBold.ttf
weight: 600
- asset: assets/fonts/SUITE-Bold.ttf
weight: 700
- asset: assets/fonts/SUITE-ExtraBold.ttf
weight: 800
# 제목 서체 — 시안의 --font-display.
# 시안은 Bold 컷을 normal 로 등록해 두고 800 을 요청해 브라우저가 한 번 더 굵게 합성한다.
# 같은 효과를 내려고 Bold 컷을 400 으로 등록한다 (굵은 weight 요청 시 엔진이 합성).
- family: ChungbukBold
fonts:
- asset: assets/fonts/ChungbukNationalUniversity-Bold.ttf
# 펫 명함 이름 등 일반 굵기가 필요한 자리
- family: Chungbuk
fonts:
- asset: assets/fonts/ChungbukNationalUniversity-Regular.ttf
weight: 400
- asset: assets/fonts/ChungbukNationalUniversity-Bold.ttf
weight: 700
# 인트로 손글씨 문구 (Right Use to Pet)
- family: UhBeeKeongKeong
fonts:
- asset: assets/fonts/UhBeeKeongKeong.ttf