Files
nj/app/pubspec.yaml
iven 11d0971a67
Some checks failed
Main Merge / backend (push) Has been cancelled
Main Merge / frontend (push) Has been cancelled
feat(app): pnpm 一键启动 + Flutter Web 编译修复
1. 新增 pnpm start:dev / pnpm start:stop 命令
   - scripts/dev.mjs: 跨平台启动脚本(后端+管理端+学生端)
   - scripts/stop.mjs: 端口清理停止脚本
   - 根 package.json 定义 pnpm 脚本

2. 修复 Flutter Web 编译(Isar 3.x + flutter_secure_storage 不兼容)
   - isar_database: 条件导出,Web 用空 stub
   - isar_journal_repository: 条件导出,Web 用空 stub
   - sync_engine: 条件导出,Web 用内存队列(无 Isar 持久化)
   - 移除 flutter_secure_storage(v9 web 插件用 dart:html)
   - 新增 SecureTokenStore 接口 + shared_preferences 实现
   - auth_repository 改用 SecureTokenStore 接口
2026-06-03 09:50:19 +08:00

108 lines
2.3 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: nuanji_app
description: "暖记 — 温暖治愈风格的手账日记 App"
publish_to: 'none'
version: 0.1.0+1
environment:
sdk: ^3.12.0
dependencies:
flutter:
sdk: flutter
# 状态管理
flutter_bloc: ^9.1.0
# 路由
go_router: ^14.8.0
# 不可变数据模型
freezed_annotation: ^2.4.0
json_annotation: ^4.9.0
# 本地数据库
isar: ^3.1.0
isar_flutter_libs: ^3.1.0
# 网络请求
dio: ^5.8.0
# 连接检测
connectivity_plus: ^6.1.0
# 安全存储JWT 令牌持久化)
# 注意flutter_secure_storage v9 的 web 插件使用 dart:html
# 不兼容 Flutter 3.44 的 Web 编译器。暂用 shared_preferences 替代。
# TODO: flutter_secure_storage 升级到 v10+ 后恢复
# flutter_secure_storage: ^9.2.0
# 手写引擎
perfect_freehand: ^1.0.0
# 图表
fl_chart: ^0.70.0
# 图片
image_picker: ^1.0.0
flutter_image_compress: ^2.4.0
# 工具
logger: ^2.5.0
uuid: ^4.5.0
intl: ^0.19.0
path_provider: ^2.1.0
share_plus: ^10.1.0
permission_handler: ^11.4.0
shared_preferences: ^2.5.0
# UI 组件
cupertino_icons: ^1.0.8
dev_dependencies:
flutter_test:
sdk: flutter
# 代码生成
build_runner: ^2.4.0
freezed: ^2.5.0
json_serializable: ^6.8.0
isar_generator: ^3.1.0
# 代码规范
flutter_lints: ^6.0.0
# 测试工具
mocktail: ^1.0.4
flutter:
uses-material-design: true
fonts:
# 设计稿主字体 — 待下载 .ttf 文件,当前系统 sans-serif 回退
- family: Nunito
fonts:
- asset: assets/fonts/Nunito-Regular.ttf
- asset: assets/fonts/Nunito-Bold.ttf
weight: 700
- asset: assets/fonts/Nunito-SemiBold.ttf
weight: 600
- family: Quicksand
fonts:
- asset: assets/fonts/Quicksand-Regular.ttf
- asset: assets/fonts/Quicksand-Bold.ttf
weight: 700
- asset: assets/fonts/Quicksand-SemiBold.ttf
weight: 600
# CJK 中文回退(保留)
- family: NotoSansSC
fonts:
- asset: assets/fonts/NotoSansSC-Regular.ttf
- asset: assets/fonts/NotoSansSC-Bold.ttf
weight: 700
# 手写装饰字体(保留)
- family: Caveat
fonts:
- asset: assets/fonts/Caveat-Regular.ttf
- asset: assets/fonts/Caveat-Bold.ttf
weight: 700