Skip to content

feat: show version in-app and polish the UI (0.2.4) - #33

Merged
programmersd21 merged 5 commits into
mainfrom
feat/0.2.4-in-app-version-premium-ui
Aug 27, 2026
Merged

feat: show version in-app and polish the UI (0.2.4)#33
programmersd21 merged 5 commits into
mainfrom
feat/0.2.4-in-app-version-premium-ui

Conversation

@programmersd21

@programmersd21 programmersd21 commented Aug 27, 2026

Copy link
Copy Markdown
Owner

What

Brings the running version into the UI and polishes the layout toward a cleaner, more refined (Vercel/Linear-style) look.

Changes

  • In-app version — the current version (e.g. v0.2.4) now renders as a small accent-colored pill right next to the flow title in hero and compact modes (so it's clearly the app version, not the interface). Still available via flow --version.
  • Clean centered layout — removed the large rainbow ASCII logo and its tagline from hero mode; hero now uses a single centered ● flow v0.2.4 title, consistent across hero and compact.
  • Theme-consistent status colors — latency and interface up/down indicators now derive from the active theme (accent highlights elevated latency / down link) instead of hardcoded green/amber/red.
  • Removed the green interface-status dot in the footer for a cleaner look (interface name + state remain).
  • Bump VERSION to 0.2.4; updated CHANGELOG and README.

Verification

  • go build ./..., go vet ./..., gofmt, golangci-lint (0 issues), go test ./... all pass.
  • flow --version reports 0.2.4.
  • Rendered hero + compact layouts to confirm the title/version are truly centered and no logo remains.

Summary by Sourcery

Polish the dashboard UI and surface the application version across supported views.

New Features:

  • Display the running application version in the UI and retain flow --version support.
  • Add a pulsing active-interface indicator in compact and mini views.

Enhancements:

  • Refresh the dashboard layout and status presentation, including a cleaner interface footer and theme-consistent latency and link-state styling.
  • Improve theme readability and increase the vibrancy of default directional colors.

Build:

  • Update the demo Make target to use the renamed tape file.

Documentation:

  • Update the README and changelog for the 0.2.4 release and its UI changes.

Chores:

  • Bump the application version to 0.2.4.

Summary by CodeRabbit

  • New Features

    • Added an in-app version pill beside the flow title.
    • Added flow --version support for viewing the current version.
    • Standardized the centered title across hero and compact display modes.
  • Style

    • Updated status and latency indicators to use theme-consistent colors.
    • Removed the rainbow ASCII logo and footer interface-status dot while retaining interface details.
  • Documentation

    • Updated the changelog and feature documentation for version 0.2.4.

- Display the running version (v0.2.4) as a small accent pill next to the
  flow title, visible in hero and compact modes, plus the --version flag.
- Replace the large rainbow ASCII logo and tagline in hero mode with a
  single clean, truly-centered 'flow v0.2.4' title for a more refined,
  consistent layout.
- Make latency/interface status colors theme-consistent instead of
  hardcoded green/amber/red (accent highlights elevated latency or a
  down link).
- Remove the green interface-status dot from the footer for a cleaner
  look.
- Bump VERSION to 0.2.4; update CHANGELOG and README.
@sourcery-ai

sourcery-ai Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Reviewer's Guide

This release wires the CLI version into the UI as an accent badge, replaces the hero artwork with a consistent centered title, and simplifies status styling by using active-theme colors while removing the footer status dot; release documentation and version metadata are updated accordingly.

Sequence diagram for wiring the CLI version into the UI

sequenceDiagram
    participant CLI as flow CLI
    participant UI as internal/ui
    participant View as UI views

    CLI->>UI: SetVersion(version)
    CLI->>UI: New(...)
    View->>UI: TitleRow(pulse)
    UI-->>View: appVersion
    View-->>CLI: centered title with versionBadge()
Loading

Flow diagram for the updated dashboard title and status styling

flowchart TD
    Start[Render dashboard] --> Mode{Hero or compact mode?}
    Mode -->|Both| Title[Render centered TitleRow]
    Title --> Badge[Render versionBadge with active accent]
    Badge --> Stats[Render latency with theme.Soft or theme.Accent]
    Stats --> Link[Render interface state with theme.Soft or theme.Accent]
    Link --> Footer[Render interface name and state without status dot]
Loading

File-Level Changes

Change Details Files
Expose the running application version in the UI and update release metadata.
  • Bump the CLI version and VERSION file to 0.2.4.
  • Add UI version state initialized from main, with a default for local builds.
  • Render a normalized v0.2.4 accent badge in the title row.
  • Document the release and in-app version display.
VERSION
cmd/flow/main.go
internal/ui/model.go
internal/ui/views.go
CHANGELOG.md
README.md
Replace the hero presentation with a unified centered title layout.
  • Use the same title row for hero and compact modes.
  • Remove the large rainbow ASCII logo and tagline, including their theme helpers and supporting imports.
internal/ui/views.go
internal/theme/theme.go
Make status presentation follow the active theme and reduce footer clutter.
  • Use neutral theme styling for healthy latency/link states and the theme accent for elevated latency or down links.
  • Remove the footer interface-status dot while retaining the interface name and state text.
internal/ui/views.go
CHANGELOG.md

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

@coderabbitai

coderabbitai Bot commented Aug 27, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

Next included review available in 32 minutes.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 9c818f5e-54a1-4f18-a1be-766f8b79a994

📥 Commits

Reviewing files that changed from the base of the PR and between c9810c2 and f48e1fd.

⛔ Files ignored due to path filters (4)
  • assets/compact_mode.png is excluded by !**/*.png
  • assets/demo.gif is excluded by !**/*.gif
  • assets/mini_mode.png is excluded by !**/*.png
  • assets/normal_mode.png is excluded by !**/*.png
📒 Files selected for processing (6)
  • CHANGELOG.md
  • Makefile
  • README.md
  • demo.tape
  • internal/theme/theme.go
  • internal/ui/views.go

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 21354a38-4d65-467c-a629-894a799fda84

📥 Commits

Reviewing files that changed from the base of the PR and between 6c5502e and c9810c2.

📒 Files selected for processing (2)
  • internal/ui/model.go
  • internal/ui/views.go
💤 Files with no reviewable changes (1)
  • internal/ui/views.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • internal/ui/model.go

Included review availability: Your plan provides up to 2 included reviews per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The CLI version changes to 0.2.4 and is passed to the UI. The dashboard shows the version in the title row, uses theme-consistent indicator colors, removes the footer status dot, and replaces the hero logo rendering.

Changes

Versioned UI presentation

Layer / File(s) Summary
Version wiring and release metadata
VERSION, cmd/flow/main.go, README.md, CHANGELOG.md
The project version changes to 0.2.4. The CLI passes the version to the UI. Documentation records the in-app version display.
Dashboard title and indicator rendering
internal/ui/model.go, internal/ui/views.go
The UI stores and renders an accent version badge in hero and compact modes. Latency and interface indicators use theme colors. The footer status dot is removed.
Legacy logo removal
internal/theme/theme.go
Unused logo rendering functions and the related import are removed. DirArrow remains available.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to c9810

This PR updates the displayed version and refines the interface styling and layout without any identified merge-blocking risk; it is merge-ready after normal checks and review.

Sequence Diagram(s)

sequenceDiagram
  participant FlowCLI
  participant UIModel
  participant Dashboard
  participant TitleRow
  FlowCLI->>UIModel: SetVersion("0.2.4")
  UIModel->>Dashboard: Provide appVersion
  Dashboard->>TitleRow: Render title row
  TitleRow-->>Dashboard: Show accent version badge
Loading
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 22.22% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 9 functions across 3 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main changes: showing the application version in the UI and polishing the UI for version 0.2.4.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/0.2.4-in-app-version-premium-ui

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hey - I've found 2 issues

Prompt for AI Agents
Please address the comments from this code review:

## Individual Comments

### Comment 1
<location path="internal/ui/model.go" line_range="36-37" />
<code_context>
 	err    error
 }

+// appVersion is set from the main package via SetVersion so the UI can
+// surface it in the title and footer. Defaults to "dev" for local builds.
+var appVersion = "dev"
+
+// SetVersion records the build version for display inside the UI.
</code_context>
<issue_to_address>
**nitpick:** The comment says `appVersion` is surfaced in both the title and footer, but the version is rendered only by `TitleRow`; the footer continues to render only the interface name and state. The comment therefore falsely describes the UI behavior.

**Suggested fix:** Change the comment to say the version is surfaced in the title, or add the version to the footer if that is intended.

```suggestion
// appVersion is set from the main package via SetVersion so the UI can
// surface it in the title. Defaults to "dev" for local builds.
```
</issue_to_address>

### Comment 2
<location path="internal/ui/views.go" line_range="135-136" />
<code_context>
 	return strings.Count(strings.Join(lines, "\n"), "\n") + 1
 }

+// versionBadge is no longer needed as a separate helper.
+// versionBadge renders the running version as a small accent-colored pill.
+func versionBadge() string {
+	return lipgloss.NewStyle().
+		Foreground(lipgloss.Color("#ffffff")).
</code_context>
<issue_to_address>
**nitpick:** The comment says `versionBadge` is no longer needed as a separate helper, but the helper is still defined and called by `TitleRow`. This contradicts the implementation and obscures the helper's actual purpose.

**Suggested fix:** Remove the obsolete first comment line and retain a description of what `versionBadge` renders.

```suggestion
// versionBadge renders the running version as a small accent-colored pill.
```
</issue_to_address>

Sourcery assessment

Approved.


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.

Comment thread internal/ui/model.go Outdated
Comment thread internal/ui/views.go Outdated
programmersd21 and others added 4 commits August 27, 2026 21:23
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
- Restore the rainbow ASCII 'flow' logo and 'Calm your network. See it
  breathe.' tagline in hero mode, merged with a centered version pill
  (removed redundant '● flow' title line from hero).
- Brighten the dim/muted text ramp across all built-in themes so every
  label stays clearly readable on black or transparent backgrounds.
- Vietnamese: make the activity dot glow in compact and mini modes.
- Fix Makefile demo target to reference demo.tape (was flow.tape).
- Update CHANGELOG and README; regenerate assets/demo.gif.
The figlet/block logo once rendered as broken tofu because the tape requested
'JetBrains Mono', which isn't installed — only the Nerd Font variants are.
Point the tape at 'JetBrainsMono Nerd Font Mono' so the box-drawing/block
glyphs render aligned, and re-render the demo GIF plus the mode screenshots.
@programmersd21
programmersd21 merged commit 609c5e0 into main Aug 27, 2026
9 checks passed
@programmersd21
programmersd21 deleted the feat/0.2.4-in-app-version-premium-ui branch August 27, 2026 16:20
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