feat: rework StudyU app UI#825
Draft
ibrahimozkn wants to merge 13 commits into
Draft
Conversation
- Set explicit brand colors: primary #2196F3, accent #FF9800 - Add Material 3 ColorScheme.fromSeed with white surface, no surface tint - Add AppBar theme: blue background, white foreground, 20px bold title - Add Card theme: white, elevation 0, 8px radius, no surface tint - Add Elevated/Outlined/Text button themes with brand colors, transparent tints - Set scaffold background to #F5F7FA
dashboard.dart: - Remove forceMaterialTransparency - Switch app bar icons to account_circle, bar_chart, more_horiz - Replace ElevatedButton next-day with styled TextButton link - Reduce body bottom padding to 48 task_overview.dart: - Restructure layout: fixed progress row, scrollable content - Add section titles (Current intervention, Today's tasks) 15px bold - Build custom intervention card with orange accent dash, info icon - Add intervention info dialog with baseline description fallback - Use schedule icon for time rows, 14px blue bold - Handle null intervention gracefully with SizedBox.shrink task_box.dart: - Replace ListTile+RoundCheckbox with UI kit task row layout - White card, gray checklist icon 40% alpha, 14px title - Add _CheckCircle widget: orange outlined circle with conditional check - Locked tasks show lock icon instead of checkbox - Remove elevation, add explicit white surface color
- Replace complex circular segments with clean timeline bar design - Run icon start, flag icon end, intervention nodes with connecting lines - Current node: orange #FF9800 with blue #2196F3 progress ring - Progress ring shows completed days / total days in current phase - Past nodes: gray #9E9E9E, future nodes: light gray #CCCCCC - Active line segments: blue, inactive: light gray
- Declare OpenSans font family in pubspec.yaml - Add OpenSans-VariableFont_wdth,wght.ttf to assets/fonts/
- Create reusable WelcomeButton with outlined/primary variants - Replace MDI icons with Material Icons (person, quiz, rocket_launch) - Reduce logo height from 200 to 70, center layout - Remove spacer layout in favor of mainAxisSize.min centered column - Remove material_design_icons_flutter import from welcome screen
study_tile.dart: - Replace ListTile layout with Card+Row containing circular icon - Add _StudyIconCircle: 40dp blue circle with white icon - Use theme colorScheme for text and icons - Remove hardcoded contentPadding default selectable_button.dart: - Use colorScheme.primary/surface/onPrimary instead of hardcoded colors study_selection.dart: - Replace MDI icons with Material Icons (warning, vpn_key) - Use WelcomeButton for invite code button - Restyle heading: centered headlineMedium, subtitle with underline link - Use theme colorScheme for hidden studies banner journey_overview.dart: - Replace Colors.grey with theme.disabledColor for baseline - Use colorScheme.onPrimary for icon foreground
contact_screen.dart: - Wrap logo in Card with padding, add spacing between sections - Wrap contact sections in Cards with padding - Refactor ContactWidget: build items via addItem helper - Replace ListTile-based contact items with InkWell+Row layout - Add chevron_right icon for tappable items, divider separators - Use colorScheme.onSurface for text, onSurfaceVariant for labels faq.dart: - Deduplicate Scaffold code for en/de languages - Wrap FAQ entries in Cards with bottom padding - Style ExpansionTile with theme colors, transparent divider - Use bodyMedium with 1.35 line height for leaf entries - Use titleMedium for expandable headers
performance_section.dart: - Replace hardcoded Colors.red/yellow/green with colorScheme colors - Use onSurfaceVariant for divider color report_history.dart: - Replace Colors.green[600] with colorScheme.primary for active study - Use onPrimary/onSurface for icon and title text - Fix null-awareness on activeSubject dereference average_section_widget.dart: - Replace hardcoded Colors.blue/orange/grey with colorScheme colors - Use primaryContainer/secondaryContainer for chart backgrounds - Use onSurface/outline for chart borders and dots descriptive_statistics_widget.dart: - Replace hardcoded Colors.blue/grey/amber with colorScheme colors - Use primaryContainer for summary box, secondaryContainer for highlights - Use surfaceContainerHighest for table headers gauges_widget.dart: - Replace hardcoded background/border colors with colorScheme - Use onSurface for needle color and value text textual_summary_widget.dart: - Replace hardcoded black Colors with colorScheme.onSurface - Use theme text styles instead of raw TextStyle
|
Visit the preview URL for this PR (updated for commit b5349be):
(expires Sun, 10 May 2026 13:06:24 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: 2149dad49ed83535217e50d5c18c0c8c90da629b |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The participant app UI was still using a mix of legacy Material defaults, hardcoded colors, and one-off spacing values, which made the experience visually inconsistent across onboarding, dashboard, task, questionnaire, and reporting surfaces.
Changes
WelcomeButtonandStudyUSpacingtokens.Testing
dart format --set-exit-if-changed libflutter analyze --no-pubflutter analyzewithout--no-pubis currently blocked by the repo-levelmaterial_color_utilitiesconstraint conflict between Flutter SDK0.11.1andstudyu_designer_v2^0.13.0.