Skip to content

fix(ui): improve About Us layout and adjust description styling#3129

Open
bhavjsh wants to merge 1 commit intofossasia:flutterfrom
bhavjsh:fix/about-us-layout
Open

fix(ui): improve About Us layout and adjust description styling#3129
bhavjsh wants to merge 1 commit intofossasia:flutterfrom
bhavjsh:fix/about-us-layout

Conversation

@bhavjsh
Copy link
Contributor

@bhavjsh bhavjsh commented Mar 14, 2026

Summary

This PR improves the layout of the About Us screen to enhance readability and match the design feedback.

Changes

  • Updated the layout so that only the PSLab description text is wrapped inside a bordered container.
  • Changed the container background to white with a subtle border outline.
  • Adjusted alignment so that the rest of the screen elements follow a normal vertical layout instead of being centered.
  • Replaced "and" with "&" in the PSLab description text to reduce spacing in the phrase "science & engineering experiments".

Files Modified

  • lib/view/about_us_screen.dart
  • lib/l10n/app_en.arb

Result

The About Us page now has a cleaner layout with improved text alignment and spacing.

Screenshot (2628) Screenshot 2026-03-14 182833

Summary by Sourcery

Refine the About Us screen layout and styling for improved readability and alignment.

Enhancements:

  • Adjust About Us content layout to use a scrollable, left-aligned vertical column with padding instead of a centered layout.
  • Wrap the PSLab description text in a full-width, bordered white container with improved typography and spacing.
  • Standardize list item padding and icon spacing for feedback, version info, and contact links, and introduce a reusable section title for the Connect With Us section.

@sourcery-ai
Copy link
Contributor

sourcery-ai bot commented Mar 14, 2026

Reviewer's Guide

Refactors the About Us screen layout to use a left-aligned scrollable column with a bordered description card, tighter and consistent list tile styling, and prepares localization for a minor text tweak in the PSLab description.

Class diagram for the updated AboutUsScreen structure

classDiagram
  class AboutUsScreen {
    +AboutUsScreen()
    +createState() _AboutUsScreenState
  }

  class _AboutUsScreenState {
    -String iconAboutUs
    -List contactItems
    +buildSectionTitle(String title) Widget
    +build(BuildContext context) Widget
  }

  class GlobalFunctions {
    +buildContactList(List items) Widget
  }

  AboutUsScreen --> _AboutUsScreenState : creates
  _AboutUsScreenState --> GlobalFunctions : uses_buildContactList
Loading

File-Level Changes

Change Details Files
Reworked About Us screen layout to be vertically scrollable, left-aligned, and to visually separate the description in a card-like container.
  • Removed the full-screen centered layout and replaced it with a SafeArea-wrapped SingleChildScrollView and a Column aligned to the start with uniform page padding.
  • Reduced the logo size and kept it centered at the top, followed by the description in a full-width container.
  • Wrapped the PSLab description text in a white, rounded-rectangle container with padding, light grey border, left alignment, and increased line height for readability.
lib/view/about_us_screen.dart
Normalized styling and layout of list sections for feedback, app version, and contact links.
  • Introduced a helper method to render section titles with consistent typography and spacing for the "Connect with us" area.
  • Replaced the nested ListView-based section with a linear list of ListTiles separated by Dividers to avoid nested scrolling and match vertical layout expectations.
  • Standardized ListTile paddings and leading icon widths (including contact list tiles) using contentPadding: EdgeInsets.zero and minLeadingWidth to visually align icons and text.
  • Kept the PackageInfo FutureBuilder but simplified the builder’s structure while preserving loading and loaded states.
  • Inserted section title and divider before the contact list to visually group the connect section.
lib/view/about_us_screen.dart
Minor structural and formatting cleanups plus groundwork for text change in localization.
  • Added trailing commas in the contactItems list map entries for consistent formatting and easier diffing.
  • Inserted a small helper for section titles and added spacing/dividers between logical groups for clearer structure.
  • Left the English ARB file ready for a text tweak to the PSLab description (e.g., "science & engineering experiments"), though no concrete string diff is shown here.
lib/view/about_us_screen.dart
lib/l10n/app_en.arb

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've left some high level feedback:

  • The hardcoded 'Loading...' string in the version FutureBuilder bypasses localization; consider exposing a localized loading string via AppLocalizations instead.
  • The container around pslabDescription uses Colors.white and a fixed grey border, which may not adapt well to dark themes; it would be more robust to derive these from Theme.of(context).colorScheme.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The hardcoded 'Loading...' string in the version `FutureBuilder` bypasses localization; consider exposing a localized loading string via `AppLocalizations` instead.
- The container around `pslabDescription` uses `Colors.white` and a fixed grey border, which may not adapt well to dark themes; it would be more robust to derive these from `Theme.of(context).colorScheme`.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@github-actions
Copy link
Contributor

Build Status

Build successful. APKs to test: https://github.com/fossasia/pslab-app/actions/runs/23088348450/artifacts/5924454449.

Screenshots

Android Screenshots
iPhone Screenshots
iPad Screenshots

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant