Skip to content

feat(about): rebrand Phase 2 — home/about stat panel - #267

Merged
KendiJ merged 2 commits into
feat/2026_rebrandfrom
feat/rebrand-phase2-home-stats
Sep 17, 2026
Merged

KendiJ merged 2 commits into
feat/2026_rebrandfrom
feat/rebrand-phase2-home-stats

Conversation

@NewtonMutugi

@NewtonMutugi NewtonMutugi commented Sep 17, 2026

Copy link
Copy Markdown
Member

Closes #259. Part of #243. Plan: docs/design/REBRAND-PLAN.md.

What

Ported the web's About-section 2x2 stat block (components/home/About.tsx on flutterconKE2024Web's dev branch) — same four values (3RD Fluttercon edition, 7th Droidcon edition, 230+ sessions delivered, 3,000+ attendees since 2018), same deliberate light/dark color inversion (black+magenta figures in light, magenta+white figures in dark).

Placement decision: About screen, not Home

about_screen.dart already had an About headline + description paragraph structurally identical to the web's About section intro, so the stat block reads as a natural continuation of that content rather than a dashboard summary that fits Home. Left Home's "hero-style header treatment" out of scope here — that's a distinct, larger visual question from the web's own Hero component, better handled on its own rather than folded into this stat-panel port.

Implementation

AboutStatsPanel (lib/features/about/widgets/about_stats_panel.dart) reads Phase 0's InvertedPanelColors extension and AppTextStyles.display rather than hardcoding the light/dark swap. Wired into about_screen.dart right after the existing intro text, before "Organising Team".

Verified visually, not just via analyze/build

Ran the app on an emulator, navigated to the About screen, and confirmed both color-inversion states directly (toggled via adb shell cmd uimode night yes/no) — matches the web's design exactly in both modes.

Light:
Black panel, magenta figures, blue hairline divider between rows — matches docs/design/light.png reference styling.

Dark:
Magenta panel, white figures — confirmed the inversion actually swaps, not just a static color choice.

Verified

  • flutter analyze lib: no issues
  • dart format --set-exit-if-changed lib test: clean
  • Full debug build + manual on-device verification of both theme modes

🤖 Generated with Claude Code

Update (2026-09-17)

Pushed a follow-up commit refreshing the aboutFluttercon copy (lib/l10n/arb/app_en.arb) to match the 2026 event details (3rd edition, Nov 5–6 2026, PrideInn Azure Hotel, Nairobi) instead of the stale pre-rebrand text (old dates, "first event", four Droidcon editions). Content wording, not a design-token change — unrelated to the stat panel itself, but keeps the About screen internally consistent now that the new stat block sits right below it.

Screenshots

image image

NewtonMutugi and others added 2 commits September 17, 2026 12:32
…onKEApp#259)

Ported the web's About-section 2x2 stat block
(components/home/About.tsx on flutterconKE2024Web's dev branch) —
same four values (3RD Fluttercon edition, 7th Droidcon edition, 230+
sessions delivered, 3,000+ attendees since 2018), same deliberate
light/dark color inversion (black+magenta figures in light, magenta+
white figures in dark).

Placement decision: the About screen, not Home. about_screen.dart
already had an About headline + description paragraph structurally
identical to the web's About section intro, so the stat block reads
as a natural continuation of that content rather than a dashboard
summary that fits Home. Left Home's hero-style header treatment out
of scope — that's a distinct, larger visual question from the web's
own Hero component, better handled on its own rather than folded
into this stat-panel port.

AboutStatsPanel (lib/features/about/widgets/about_stats_panel.dart)
reads Phase 0's InvertedPanelColors extension and AppTextStyles.display
rather than hardcoding the light/dark swap. Wired into about_screen.dart
right after the existing intro text, before Organising Team.

Verified visually, not just via analyze/build: ran the app on an
emulator, navigated to the About screen, and confirmed both
color-inversion states directly (toggled via
adb shell cmd uimode night yes/no) — matches the web's design
exactly in both modes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

@KendiJ KendiJ left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Seen

@KendiJ
KendiJ merged commit 467411b into feat/2026_rebrand Sep 17, 2026
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.

2 participants