Skip to content

feat(plugin): Add JetBrains IDE plugin#117

Merged
tab merged 4 commits into
masterfrom
feature/goland-plugin
Apr 26, 2026
Merged

feat(plugin): Add JetBrains IDE plugin#117
tab merged 4 commits into
masterfrom
feature/goland-plugin

Conversation

@tab
Copy link
Copy Markdown
Owner

@tab tab commented Apr 26, 2026

  • Support service dashboard with tier grouping, timeline visualization, status indicators and real-time metrics
  • Add plugin build and upload steps
  • Add IDE plugins pages

@tab tab requested a review from Copilot April 26, 2026 15:34
@tab tab self-assigned this Apr 26, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a JetBrains IDE plugin for fuku (tool window + status bar widget + run configuration), along with build/release automation and documentation pages for plugin installation and usage.

Changes:

  • Introduce a JetBrains plugin implementation (services dashboard UI, log streaming, settings, status bar widget, run configuration).
  • Add Gradle-based plugin build/lint automation via Make targets and GitHub Actions (CI checks + release asset upload).
  • Add docs site “Plugins” section and JetBrains plugin documentation page.

Reviewed changes

Copilot reviewed 31 out of 33 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
plugins/jetbrains/src/main/resources/icons/fuku_dark.svg Adds dark theme plugin icon asset.
plugins/jetbrains/src/main/resources/icons/fuku.svg Adds light theme plugin icon asset.
plugins/jetbrains/src/main/resources/META-INF/plugin.xml Declares plugin metadata, services, tool window, widget, run config, notifications.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ToolWindowFactory.kt Creates tool window tabs (services + logs) and binds log search shortcut.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ServiceToolWindow.kt Implements services dashboard UI, actions, keyboard shortcuts, filtering, notifications.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ServiceTableModel.kt Provides table model with tier grouping, filtering, and timeline sampling.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ServiceTable.kt Custom table renderers (status dot, timeline blocks, metrics formatting).
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/LogStreamClient.kt Streams logs from Unix domain socket and prints into IDE console view.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/statusbar/StatusBarWidget.kt Adds status bar widget reflecting fuku phase and service readiness.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/settings/SettingsConfigurable.kt Adds IDE settings UI for API connection, polling, and binary path + test connection.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/settings/Settings.kt Persists plugin settings via IntelliJ PersistentStateComponent.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/run/RunConfiguration.kt Adds “fuku” run configuration type to run fuku with selected profile.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/run/ProcessHandler.kt Manages a project-scoped fuku process + reads profiles from fuku YAML.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/api/Models.kt Defines API models and enums for fuku REST responses.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/api/ApiClient.kt Implements REST API client for status/services/actions with token support.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/PluginService.kt Central app service polling fuku API and notifying listeners with PluginState.
plugins/jetbrains/src/main/kotlin/com/fuku/plugin/Icons.kt Centralizes icon loading for tool window and actions.
plugins/jetbrains/settings.gradle.kts Sets up Gradle plugin management and project name for the plugin build.
plugins/jetbrains/gradlew.bat Adds Gradle wrapper script for Windows builds.
plugins/jetbrains/gradlew Adds Gradle wrapper script for POSIX builds.
plugins/jetbrains/gradle/wrapper/gradle-wrapper.properties Pins Gradle distribution for wrapper.
plugins/jetbrains/gradle.properties Defines plugin/platform version properties.
plugins/jetbrains/build.gradle.kts Configures Kotlin/IntelliJ platform plugin build + serialization + ktlint.
plugins/jetbrains/.gitignore Ignores Gradle/IntelliJ build outputs for the plugin subproject.
docs/src/pages/plugins/jetbrains.astro Adds JetBrains plugin documentation page (install, config, features).
docs/src/pages/plugins/index.astro Adds Plugins landing page linking to JetBrains plugin.
docs/src/layouts/DocsLayout.astro Extends section union type to include “plugins”.
docs/src/data/nav.ts Adds plugins nav data generator.
docs/src/components/Header.astro Adds “Plugins” to the main site header nav and updates section type.
README.md Adds README link to JetBrains plugin docs page.
Makefile Adds plugin build/lint/clean targets for local development.
.github/workflows/release.yaml Adds plugin build + upload to GitHub release assets.
.github/workflows/checks.yaml Adds plugin lint/build job to CI checks workflow.

Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ServiceToolWindow.kt Outdated
Comment thread docs/src/pages/plugins/jetbrains.astro Outdated
Comment thread .github/workflows/release.yaml Outdated
Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/run/ProcessHandler.kt Outdated
Comment thread plugins/jetbrains/gradlew Outdated
@tab tab force-pushed the feature/goland-plugin branch from 6bc232f to f5b8b14 Compare April 26, 2026 16:48
@tab tab requested a review from Copilot April 26, 2026 16:48
@sentry
Copy link
Copy Markdown

sentry Bot commented Apr 26, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.23%. Comparing base (da9b1bc) to head (42cabfb).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #117   +/-   ##
=======================================
  Coverage   89.23%   89.23%           
=======================================
  Files          60       60           
  Lines        5650     5650           
=======================================
  Hits         5042     5042           
+ Misses        481      480    -1     
- Partials      127      128    +1     

see 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 31 out of 34 changed files in this pull request and generated 10 comments.

Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/toolwindow/ServiceToolWindow.kt Outdated
Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/run/RunConfiguration.kt Outdated
Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/PluginService.kt
Comment thread plugins/jetbrains/src/main/kotlin/com/fuku/plugin/statusbar/StatusBarWidget.kt Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 31 out of 34 changed files in this pull request and generated 6 comments.

Comment thread plugins/jetbrains/src/main/resources/META-INF/plugin.xml
Comment thread .github/workflows/release.yaml
Comment thread plugins/jetbrains/src/main/resources/META-INF/plugin.xml
tab added 4 commits April 26, 2026 20:30
Support service dashboard with tier grouping, timeline visualization, status indicators and real-time metrics
@tab tab force-pushed the feature/goland-plugin branch from d2c751a to 42cabfb Compare April 26, 2026 17:30
@tab tab merged commit 7ae66c9 into master Apr 26, 2026
10 checks passed
@tab tab deleted the feature/goland-plugin branch April 26, 2026 17:33
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