Skip to content

Conversation

@chirag-bruno
Copy link
Contributor

@chirag-bruno chirag-bruno commented Jan 14, 2026

Description

  • Added a function to build terminal themes from the app's current theme.
  • Updated terminal creation and rendering functions to accept and apply the dynamic theme.
  • Implemented a useEffect hook to update terminal themes when the app theme changes.

This PR addresses: #6702

Contribution Checklist:

  • I've used AI significantly to create this pull request
  • The pull request only addresses one issue or adds one feature.
  • The pull request does not introduce any breaking changes
  • I have added screenshots or gifs to help explain the change if applicable.
  • I have read the contribution guidelines.
  • Create an issue and link to the pull request.

Summary by CodeRabbit

  • New Features
    • Terminal component now applies dynamic theming based on the app's theme, automatically updating all open terminals when the theme changes.

✏️ Tip: You can customize this high-level summary in your review settings.

- Added a function to build terminal themes from the app's current theme.
- Updated terminal creation and rendering functions to accept and apply the dynamic theme.
- Implemented a useEffect hook to update terminal themes when the app theme changes.
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 14, 2026

Walkthrough

This PR adds dynamic theming support to the terminal component by introducing a theme computation helper and extending terminal initialization functions to accept and apply terminal-specific theme parameters based on the active app theme.

Changes

Cohort / File(s) Summary
Terminal Theme Integration
packages/bruno-app/src/components/Devtools/Console/TerminalTab/index.js
Added useTheme hook import and getTerminalTheme helper function to translate app theme into xterm.js theme keys. Extended createTerminalForSession and openTerminalIntoContainer methods with terminalTheme parameter. Implemented logic to apply theme to terminal instances on creation and rebind theme on app theme changes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • Inbuilt Terminal #6066 — Introduces the inbuilt terminal feature; this PR extends the same TerminalTab component with dynamic theming capabilities
  • feat: improved dark mode color #6616 — Modifies the app theme data structure and palette; this PR depends on the theme properties exposed by that change

Suggested reviewers

  • helloanoop
  • lohit-bruno
  • naman-bruno
  • bijin-bruno

Poem

🎨 Terminal gets dressed in dynamic hues,
Theme flows through xterm's vibrant views,
Light and dark dance in harmony,
Console shines with consistency,
No more static, now it's free! 🖥️✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: implementing dynamic terminal theming based on the app theme, which aligns with the core objective and file modifications.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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 and usage tips.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant