Build a branded Flutter login and sign-up experience #2

Closed
opened 2026-09-11 12:24:15 +00:00 by tech · 0 comments
Owner

Goal

Create a polished, expressive Flutter login form with an integrated sign-up option, adopting the sxchnge_theme package.

Approach

Scaffold frontend/app for Flutter web. Build a responsive authentication entry screen with bold ink/mint/lime branding, an editorial side panel on wide screens, and a focused form on mobile. Provide login/sign-up switching, email/password validation, password visibility controls, and keyboard-friendly submission. Keep authentication explicitly in preview until the BFF exists; do not send or persist credentials.

Acceptance criteria

  • Login and sign-up modes are accessible from one screen and share the installed theme.

  • Required fields, email format, sign-up password length, and matching passwords are validated.

  • Password visibility controls, keyboard navigation, and submission work.

  • Valid forms show a clear backend-unavailable preview response without claiming account creation or login.

  • Layout works on narrow/mobile and desktop viewports and at enlarged text sizes.

  • Dart format, flutter analyze, frontend tests, and Flutter web build pass.

  • Visual review covers both modes.

  • Screen colors and typography use the installed theme; no hardcoded Dart colors.

  • Resizing across the desktop/mobile breakpoint preserves form mode and input.

Notes

Depends on theme task #1. The theme and earlier repository relocation currently remain uncommitted in the working tree. No production authentication, social login, KYC, or payment functionality is included. Never log or persist entered credentials.

Implementation and review completed locally in frontend/app. Validation: dart format --output=none --set-exit-if-changed passed; flutter analyze passed with no issues; make test-frontend passed all 12 tests (3 theme, 3 theme consumer, 6 app); flutter build web --no-wasm-dry-run passed. An earlier full build also passed the Wasm dry run. Browser visual review covered desktop login/sign-up and mobile at 390px; widget tests covered 320px and 1440px at 200% text scaling. Fixed overflow and breakpoint state loss during review.

Code remains uncommitted in the local auth-2 working tree alongside the earlier repository/theme changes. Task remains open pending commit/review.

Delivery

Implementation is now committed and pushed in PR #9. Earlier notes describing uncommitted work are superseded by this delivery. Current implementation branch: routing-6. Review order is #7 → #8 → #9; PRs #7, #8 and #9 are now merged into main.

Validation: all 56 frontend tests, all four Flutter package analyses, formatting checks and app web build passed. Website tests (3), Astro check and website build passed. Durable scope, limitations and workflow are stored in docs/implementation.md, AGENTS.md, frontend/AGENTS.md and .agents/skills/.

Merge completion

Merged through PRs #7, #8 and #9 in dependency order with merge commits. All contributions are on main at abc3f2d. Local main is synchronized and its tree matches the previously validated routing-6 tree exactly. Task completed.

### Goal Create a polished, expressive Flutter login form with an integrated sign-up option, adopting the sxchnge_theme package. ### Approach Scaffold frontend/app for Flutter web. Build a responsive authentication entry screen with bold ink/mint/lime branding, an editorial side panel on wide screens, and a focused form on mobile. Provide login/sign-up switching, email/password validation, password visibility controls, and keyboard-friendly submission. Keep authentication explicitly in preview until the BFF exists; do not send or persist credentials. ### Acceptance criteria - [x] Login and sign-up modes are accessible from one screen and share the installed theme. - [x] Required fields, email format, sign-up password length, and matching passwords are validated. - [x] Password visibility controls, keyboard navigation, and submission work. - [x] Valid forms show a clear backend-unavailable preview response without claiming account creation or login. - [x] Layout works on narrow/mobile and desktop viewports and at enlarged text sizes. - [x] Dart format, flutter analyze, frontend tests, and Flutter web build pass. - [x] Visual review covers both modes. - [x] Screen colors and typography use the installed theme; no hardcoded Dart colors. - [x] Resizing across the desktop/mobile breakpoint preserves form mode and input. ### Notes Depends on theme task #1. The theme and earlier repository relocation currently remain uncommitted in the working tree. No production authentication, social login, KYC, or payment functionality is included. Never log or persist entered credentials. Implementation and review completed locally in frontend/app. Validation: dart format --output=none --set-exit-if-changed passed; flutter analyze passed with no issues; make test-frontend passed all 12 tests (3 theme, 3 theme consumer, 6 app); flutter build web --no-wasm-dry-run passed. An earlier full build also passed the Wasm dry run. Browser visual review covered desktop login/sign-up and mobile at 390px; widget tests covered 320px and 1440px at 200% text scaling. Fixed overflow and breakpoint state loss during review. Code remains uncommitted in the local auth-2 working tree alongside the earlier repository/theme changes. Task remains open pending commit/review. ### Delivery Implementation is now committed and pushed in [PR #9](https://git.sendico.io/tech/sxchnge/pulls/9). Earlier notes describing uncommitted work are superseded by this delivery. Current implementation branch: `routing-6`. Review order is #7 → #8 → #9; PRs #7, #8 and #9 are now merged into `main`. Validation: all 56 frontend tests, all four Flutter package analyses, formatting checks and app web build passed. Website tests (3), Astro check and website build passed. Durable scope, limitations and workflow are stored in `docs/implementation.md`, `AGENTS.md`, `frontend/AGENTS.md` and `.agents/skills/`. ### Merge completion Merged through PRs #7, #8 and #9 in dependency order with merge commits. All contributions are on `main` at `abc3f2d`. Local `main` is synchronized and its tree matches the previously validated `routing-6` tree exactly. Task completed.
tech added the frontend label 2026-09-11 12:24:15 +00:00
tech self-assigned this 2026-09-11 12:24:15 +00:00
tech added this to the SXCHNGE project 2026-09-11 12:24:15 +00:00
tech added reference auth-2 2026-09-11 12:24:31 +00:00
tech changed reference from auth-2 to routing-6 2026-09-11 13:38:40 +00:00
tech closed this issue 2026-09-11 13:46:17 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tech/sxchnge#2