Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified android/app/src/main/res/mipmap-hdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-mdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xhdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/images/webuddhist_gold.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 11 additions & 1 deletion lib/core/config/router/app_router.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import 'package:flutter_pecha/features/auth/presentation/providers/state_provide
import 'package:flutter_pecha/features/auth/presentation/screens/login_page.dart';
import 'package:flutter_pecha/features/home/presentation/screens/main_navigation_screen.dart';
import 'package:flutter_pecha/features/home/presentation/screens/plan_list_screen.dart';
import 'package:flutter_pecha/features/more/presentation/more_screen.dart';
import 'package:flutter_pecha/features/onboarding/presentation/providers/onboarding_datasource_providers.dart';
import 'package:flutter_pecha/features/onboarding/presentation/screens/onboarding_wrapper.dart';
import 'package:flutter_pecha/features/plans/domain/entities/plan.dart';
Expand Down Expand Up @@ -106,6 +107,12 @@ final appRouterProvider = Provider<GoRouter>((ref) {
),
],
),
// settings route
GoRoute(
path: "settings",
name: "home-settings",
builder: (context, state) => const MoreScreen(),
),
],
),

Expand Down Expand Up @@ -258,7 +265,10 @@ final appRouterProvider = Provider<GoRouter>((ref) {
name: "create-image",
builder: (context, state) {
final extra = state.extra as Map<String, dynamic>?;
return CreateImage(text: extra?['text'] as String, imagePath: extra?['imagePath'] as String);
return CreateImage(
text: extra?['text'] as String,
imagePath: extra?['imagePath'] as String,
);
},
),

Expand Down
17 changes: 12 additions & 5 deletions lib/core/constants/app_assets.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,28 @@ class AppAssets {
static const String routineCalendar = 'assets/images/routine_calendar.png';

// ========== LOGOS ==========
static const String weBuddhistLogo = 'assets/images/webuddhist_logo.svg';
static const String weBuddhistLogo = 'assets/images/webuddhist_gold.png';

// Bottom Navigation icons
static const PhosphorFlatIconData homeSelected = PhosphorIconsFill.house;
static const PhosphorFlatIconData homeUnselected = PhosphorIconsRegular.house;
static const PhosphorFlatIconData textsSelected = PhosphorIconsFill.sparkle;
static const PhosphorFlatIconData exploreSelected =
PhosphorIconsFill.magnifyingGlass;
static const PhosphorFlatIconData exploreUnselected =
PhosphorIconsRegular.magnifyingGlass;
static const PhosphorFlatIconData textsSelected =
PhosphorIconsFill.bookOpenText;
static const PhosphorFlatIconData textsUnselected =
PhosphorIconsRegular.sparkle;
PhosphorIconsRegular.bookOpenText;
static const PhosphorFlatIconData practiceSelected = PhosphorIconsFill.bell;
static const PhosphorFlatIconData practiceUnselected =
PhosphorIconsRegular.bell;
static const PhosphorFlatIconData settingsSelected =
PhosphorIconsFill.gearSix;
static const PhosphorFlatIconData settingsUnselected =
PhosphorIconsRegular.gearSix;
static const PhosphorFlatIconData settingsMeSelected = PhosphorIconsFill.userCircle;
static const PhosphorFlatIconData settingsMeUnselected = PhosphorIconsRegular.userCircle;
static const PhosphorFlatIconData connectSelected =
PhosphorIconsFill.usersThree;
static const PhosphorFlatIconData connectUnselected =
PhosphorIconsRegular.usersThree;
}
1 change: 1 addition & 0 deletions lib/core/l10n/app_bo.arb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
"home_profile": "ངོ་སྤྲོད་སྙིང་བསྡུས།",
"no_feature_content": "རྒྱུ་ཆ་མིན་འདུག",
"nav_home": "འདུན་ངོས།",
"nav_explore": "འཚོལ་ཞིབ།",
"nav_texts": "ཡིག་མཛོད།",
"nav_learn": "ཡིག་མཛོད།",
"nav_practice": "ཉམས་ལེན།",
Expand Down
1 change: 1 addition & 0 deletions lib/core/l10n/app_en.arb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
"home_profile": "Profile",
"no_feature_content": "No featured content available",
"nav_home": "Home",
"nav_explore": "Explore",
"nav_texts": "Texts",
"nav_learn": "Learn",
"nav_practice": "Practice",
Expand Down
1 change: 1 addition & 0 deletions lib/core/l10n/app_zh.arb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
"home_profile": "Profile",
"no_feature_content": "尚無內容",
"nav_home": "首頁",
"nav_explore": "探索",
"nav_texts": "文本",
"nav_learn": "学习",
"nav_practice": "修持計劃",
Expand Down
6 changes: 6 additions & 0 deletions lib/core/l10n/generated/app_localizations.dart
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,12 @@ abstract class AppLocalizations {
/// **'Home'**
String get nav_home;

/// No description provided for @nav_explore.
///
/// In en, this message translates to:
/// **'Explore'**
String get nav_explore;

/// No description provided for @nav_texts.
///
/// In en, this message translates to:
Expand Down
3 changes: 3 additions & 0 deletions lib/core/l10n/generated/app_localizations_bo.dart
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@ class AppLocalizationsBo extends AppLocalizations {
@override
String get nav_home => 'འདུན་ངོས།';

@override
String get nav_explore => 'འཚོལ་ཞིབ།';

@override
String get nav_texts => 'ཡིག་མཛོད།';

Expand Down
3 changes: 3 additions & 0 deletions lib/core/l10n/generated/app_localizations_en.dart
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get nav_home => 'Home';

@override
String get nav_explore => 'Explore';

@override
String get nav_texts => 'Texts';

Expand Down
3 changes: 3 additions & 0 deletions lib/core/l10n/generated/app_localizations_zh.dart
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,9 @@ class AppLocalizationsZh extends AppLocalizations {
@override
String get nav_home => '首頁';

@override
String get nav_explore => '探索';

@override
String get nav_texts => '文本';

Expand Down
8 changes: 4 additions & 4 deletions lib/core/theme/app_colors.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ class AppColors {
AppColors._();

// ============ Primary Colors (Action Negative - Red/Burgundy Theme) ============
static const Color primary = Color(0xFFAD2424); // MAN 700
static const Color primaryLight = Color(0xFFD32F2F); // MAN 500
static const Color primaryDark = Color(0xFF871C1C); // MAN 800
static const Color primaryDarkest = Color(0xFF611414); // MAN 900
static const Color primary = Color(0xFFDEAD2D); // MAN 700
static const Color primaryLight = Color(0xFFDEAD2D); // MAN 500
static const Color primaryDark = Color(0xFFB3861C); // MAN 800
static const Color primaryDarkest = Color(0xFF805700); // MAN 900

/// Primary color containers and tints
static const Color primaryContainer = Color(0xFFFAE6E6); // MAN 100
Expand Down
3 changes: 2 additions & 1 deletion lib/core/widgets/logo_label.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_pecha/core/constants/app_assets.dart';
import 'package:flutter_pecha/core/l10n/generated/app_localizations.dart';

class LogoLabel extends StatelessWidget {
Expand All @@ -13,7 +14,7 @@ class LogoLabel extends StatelessWidget {
// Logo or splash animation can go here
Padding(
padding: const EdgeInsets.only(bottom: 8.0),
child: Image.asset('assets/images/webuddhist_logo.png', height: 150),
child: Image.asset(AppAssets.weBuddhistLogo, height: 150),
),
Text(
localizations.pechaHeading,
Expand Down
6 changes: 3 additions & 3 deletions lib/features/app/presentation/pecha_bottom_nav_bar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -77,9 +77,9 @@ class PechaBottomNavBar extends ConsumerWidget {
context: context,
ref: ref,
index: 3,
icon: AppAssets.settingsMeUnselected,
selectedIcon: AppAssets.settingsMeSelected,
label: localizations.nav_settings,
icon: AppAssets.connectUnselected,
selectedIcon: AppAssets.connectSelected,
label: localizations.nav_connect,
isSelected: selectedIndex == 3,
),
],
Expand Down
3 changes: 2 additions & 1 deletion lib/features/auth/presentation/widgets/login_drawer.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:flutter_pecha/core/constants/app_assets.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:flutter_pecha/features/auth/presentation/providers/state_providers.dart';
import 'social_login_button.dart';
Expand Down Expand Up @@ -96,7 +97,7 @@ class _LoginDrawerState extends ConsumerState<LoginDrawer>
),
// App logo
Image.asset(
'assets/images/webuddhist_logo.png',
AppAssets.weBuddhistLogo,
height: 80,
width: 80,
),
Expand Down
43 changes: 43 additions & 0 deletions lib/features/connect/presentation/screens/connect_screen.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import 'package:flutter/material.dart';

class ConnectScreen extends StatelessWidget {
const ConnectScreen({super.key});

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: false,
backgroundColor: Theme.of(context).scaffoldBackgroundColor,
title: Padding(
padding: const EdgeInsets.only(left: 6.0),
child: Text(
'Connect',
style: Theme.of(
context,
).textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold),
),
),
),
body: Padding(
padding: const EdgeInsets.symmetric(horizontal: 34.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Coming Soon...',
style: Theme.of(
context,
).textTheme.titleLarge?.copyWith(fontWeight: FontWeight.bold),
),
const SizedBox(height: 6),
Text(
'Teachers, communities, challenges, and events to support you on the path.',
textAlign: TextAlign.center,
),
],
),
),
);
}
}
43 changes: 43 additions & 0 deletions lib/features/explore/presentation/screens/explore_screen.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import 'package:flutter/material.dart';

class ExploreScreen extends StatelessWidget {
const ExploreScreen({super.key});

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: false,
backgroundColor: Theme.of(context).scaffoldBackgroundColor,
title: Padding(
padding: const EdgeInsets.only(left: 6.0),
child: Text(
'Explore',
style: Theme.of(
context,
).textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold),
),
),
),
body: Padding(
padding: const EdgeInsets.symmetric(horizontal: 34.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
'Coming Soon...',
style: Theme.of(
context,
).textTheme.titleLarge?.copyWith(fontWeight: FontWeight.bold),
),
const SizedBox(height: 6),
Text(
'A curated space to discover practices, teachings, and community events.',
textAlign: TextAlign.center,
),
],
),
),
);
}
}
36 changes: 28 additions & 8 deletions lib/features/home/presentation/screens/home_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import 'package:flutter_pecha/shared/utils/helper_functions.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
import 'package:logging/logging.dart';
import 'package:phosphor_flutter/phosphor_flutter.dart';

final _log = Logger('HomeScreen');

Expand Down Expand Up @@ -121,14 +122,33 @@ class _HomeScreenState extends ConsumerState<HomeScreen> {
horizontal: HomeScreenConstants.topBarHorizontalPadding,
vertical: HomeScreenConstants.topBarVerticalPadding,
),
child: Align(
alignment: Alignment.centerLeft,
child: Text(
localizations.nav_home,
style: Theme.of(
context,
).textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold),
),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
localizations.nav_home,
style: Theme.of(
context,
).textTheme.headlineMedium?.copyWith(fontWeight: FontWeight.bold),
),
GestureDetector(
onTap: () {
context.pushNamed('home-settings');
},
child: Padding(
padding: const EdgeInsets.all(8.0),
child: CircleAvatar(
backgroundColor: const Color(0xFF272727),
radius: 20,
child: Icon(
PhosphorIconsRegular.userCircle,
size: 24,
color: Colors.white,
),
),
),
),
],
),
);
}
Expand Down
23 changes: 16 additions & 7 deletions lib/features/home/presentation/screens/main_navigation_screen.dart
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
import 'package:flutter/material.dart';
import 'package:flutter_pecha/core/constants/app_assets.dart';
import 'package:flutter_pecha/core/l10n/generated/app_localizations.dart';
import 'package:flutter_pecha/features/connect/presentation/screens/connect_screen.dart';
import 'package:flutter_pecha/features/explore/presentation/screens/explore_screen.dart';
import 'package:flutter_pecha/features/ai/presentation/screens/ai_mode_screen.dart';
import 'package:flutter_pecha/features/home/presentation/screens/home_screen.dart';
import 'package:flutter_pecha/features/more/presentation/more_screen.dart';
import 'package:flutter_pecha/features/learn/presentation/screens/learn_screen.dart';
import 'package:flutter_pecha/features/practice/presentation/screens/practice_screen.dart';
import 'package:flutter_pecha/shared/widgets/appBottomNavBar/app_bottom_nav_bar.dart';
import 'package:flutter_pecha/shared/widgets/appBottomNavBar/app_bottom_nav_item.dart';
Expand All @@ -26,24 +28,31 @@ class MainNavigationScreen extends ConsumerWidget {
),
AppBottomBarItemModel(
type: 1,
label: localizations.nav_explore,
selectedWidget: const ExploreScreen(),
selectedIconData: AppAssets.exploreSelected,
unSelectedIconData: AppAssets.exploreUnselected,
),
AppBottomBarItemModel(
type: 2,
label: localizations.nav_learn,
selectedWidget: const AiModeScreen(),
selectedWidget: const LearnScreen(),
selectedIconData: AppAssets.textsSelected,
unSelectedIconData: AppAssets.textsUnselected,
),
AppBottomBarItemModel(
type: 2,
type: 3,
label: localizations.nav_practice,
selectedWidget: const PracticeScreen(),
selectedIconData: AppAssets.practiceSelected,
unSelectedIconData: AppAssets.practiceUnselected,
),
AppBottomBarItemModel(
type: 3,
type: 4,
label: localizations.nav_connect,
selectedWidget: const MoreScreen(),
selectedIconData: AppAssets.settingsMeSelected,
unSelectedIconData: AppAssets.settingsMeUnselected,
selectedWidget: const ConnectScreen(),
selectedIconData: AppAssets.connectSelected,
unSelectedIconData: AppAssets.connectUnselected,
),
];
}
Expand Down
Loading