Quarkus TDD
affaan-m/ECC
Test-driven development for Quarkus 3.x LTS using JUnit 5, Mockito, REST Assured, Camel testing, and JaCoCo.
A skill your agent uses when modifying EasyPostman Swing forms, tool-window panels, localized English/Chinese text layouts, or FlatLaf/MigLayout layouts, especially when refactors introduce clipped…
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principles --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .claude/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .claude/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principlesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principles --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .agents/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .agents/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principles --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .cursor/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .cursor/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/lakernote/easy-postman.git --path .codex/skills/swing-flatlaf-miglayout-principles--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principles --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .gemini/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .gemini/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principlesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .github/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .github/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .github/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install lakernote/easy-postman swing-flatlaf-miglayout-principles --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lakernote/easy-postman.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.codex/skills/swing-flatlaf-miglayout-principles .opencode/skills/swing-flatlaf-miglayout-principles && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "swing-flatlaf-miglayout-principles" agent skill from https://github.com/lakernote/easy-postman/tree/master/.codex/skills/swing-flatlaf-miglayout-principles into .opencode/skills/swing-flatlaf-miglayout-principles/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "swing-flatlaf-miglayout-principles", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
swing-flatlaf-miglayout-principlesA skill your agent uses when modifying EasyPostman Swing forms, tool-window panels, localized English/Chinese text layouts, or FlatLaf/MigLayout layouts, especially when refactors introduce clipped…
Swing Flatlaf Miglayout Principles is an agent skill from lakernote/easy-postman. Use when modifying EasyPostman Swing forms, tool-window panels, localized English/Chinese text layouts, or FlatLaf/MigLayout layouts, especially when refactors introduce clipped focus rings, truncated text, clipped status badges, dense spacing, border conflicts, rounded-card corner leaks, or inconsistent form structure.
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Testing & QA, covering Refactoring and API testing. The repository describes itself as: An open-source API debugging and stress testing tool inspired by Postman and a simplified JMeter, optimized for developers with a clean UI and powerful features. The licence is Apache-2.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3d6ccbc. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
mvnFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Swing Flatlaf Miglayout Principles loads about 3.7k tokens when it runs. Until then it costs about 89 tokens; SKILL.md has 1,939 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from lakernote/easy-postman at commit 3d6ccbc, republished under its Apache-2.0 licence (© lakernote). 1,939 words, ~3,664 tokens.
.claude/skills/swing-flatlaf-miglayout-principles/SKILL.md (or your agent's skills folder).Use this skill when editing Swing form layouts in this repo. The goal is not just fixing one bug, but following stable layout principles that work well with FlatLaf and MigLayout.
JTextField, JPasswordField, or JComboBox looks fine until focusedPreserve focus visibility first. In this repo, form controls must keep the full FlatLaf focus ring visible on all sides.
Prefer layout fixes over padding hacks. If the issue appears only on focus, suspect layout constraints or border interaction before adding more empty space.
Avoid decorative borders around dense input areas.
Dense forms usually behave better with separators, spacing, and simple line borders than with TitledBorder.
Keep form hierarchy shallow. Extra wrapper panels often make focus rendering and spacing harder to reason about.
Follow existing repo form patterns. Reuse the simpler top-bar/form-row patterns already used in other toolbox panels where possible.
Treat localized text as variable-width UI. English status strings and Chinese labels can have very different widths. Do not rely on one locale fitting a fixed row.
Check whether the affected container uses MigLayout.
If yes, evaluate whether visualPadding is the real cause.
Add novisualpadding to the relevant MigLayout containers first.
Apply it to the form layout and the immediate child panels that place focusable controls.
If clipping remains, simplify borders around the focused components. Prefer:
EmptyBorderLineBorderOnly then tune insets/gaps. Padding should refine the layout, not compensate for the wrong layout model.
If a refactor introduced titles inside borders, remove the titles first. If grouping is still needed, use borderless sections plus separators, or a plain line border without title text.
For truncated text or badges in list renderers, inspect row/column constraints before changing fonts.
Long labels in [pref!], shrink 0, or same-row title/status layouts can force clipping inside fixed-width sidebars.
span 2, growx, wmin 0, wrappref columnwmin 0 on labels that may need to shrink or ellipsize. Without it, MigLayout can preserve the label's preferred width and push siblings out.shrink 0 only for controls or badges whose displayed text is intentionally short. Never apply it to long localized status strings.FontsUtil only to preserve hierarchy after the layout constraints are correct.growx, wmin 0, column constraints, dynamic preferred sizes, or custom FontMetrics measurement before considering typography.FontsUtil font and allocate label/value areas dynamically. Avoid fixed label widths chosen from one locale.RoundedToolWindowPanel owns the rounded card shape; child panels should not be treated as the outer card chrome.JSplitPane, JScrollPane, JTable, and large content panels can repaint independently and fill a rectangular area unless repaint is routed through the rounded parent or the child is kept away from the edge.ToolWindowChrome / AppToolWindowChrome wrappers (wrapToolWindow, wrapInsetToolWindow, createHorizontalCardSplitPane, createVerticalCardSplitPane) instead of manually applying applyCard to the root panel.createInsetContent, wrapInsetToolWindow, or the side-specific wrapper) when controls or opaque scroll/split/table surfaces would otherwise touch the rounded corners.applyCard panels at the outer edge just to get the same background. Use transparent section panels or inner split panes where the parent card should remain visually continuous.MatteBorder with ModernColors.getTabSeparatorColor(). Avoid getDividerBorderColor() for these header separators unless a deliberately stronger boundary is needed.JSplitPane dividers, keep the divider's hit area wide enough for dragging, but paint the visible separator as a centered 1px line:ModernColors.getTabSeparatorColor()splitPane.getOrientation()TABBED_PANE_HAS_FULL_BORDER=false and TABBED_PANE_SHOW_CONTENT_SEPARATOR=true with TabbedPane.contentSeparatorHeight=1; do not add an extra hand-drawn border on top of FlatLaf's content separator.ToolWindowChrome/AppToolWindowChrome stacked-card APIs so the top/bottom gap matches the left/right tool-window gap.JTabbedPane component identity stable. Prefer a small stable host component that owns the real content and swaps only its internal layout; do not repeatedly replace tab components with temporary JSplitPane wrappers.VERTICAL_SCROLLBAR_AS_NEEDED unless always-visible scrollbars are a functional requirement.MatteBorder color/insetsBufferedImage and assert only the centered pixel line uses the separator colordocs/ARCHITECTURE_MODULES_zh.md and keep reusable Swing components, colors, fonts, icons, notifications, and editor theme helpers in easy-postman-ui.easy-postman-plugins/plugin-kafka/src/main/java/com/laker/postman/plugin/kafka/connection/ui/KafkaConnectionPanel.javanovisualpaddingJSpinner/EasyJSpinner can make MigLayout's baseline calculation inflate a row even when the spinner preferred height was manually compacted. If a row mixes text fields, combo boxes, buttons, and spinners, constrain the row height explicitly, for example [" + ConnectionToolbarUi.FORM_CONTROL_HEIGHT + "!], then verify with the real FlatLaf theme and saved UI font size.port/DB label widths, to generic connectionFieldColumns(...) on the second row; labels like username/password will visibly drift.When the task is about light/dark theme colors instead of layout, start from these files instead of scattering hard-coded colors in panel code:
easy-postman-ui/src/main/java/com/laker/postman/common/constants/ModernColors.javaeasy-postman-app/src/main/resources/com/laker/postman/common/themes/EasyLightLaf.propertieseasy-postman-app/src/main/resources/com/laker/postman/common/themes/EasyDarkLaf.propertieseasy-postman-app/src/main/resources/themes/easypostman-light.xmleasy-postman-app/src/main/resources/themes/easypostman-dark.xmlUse the files with this intent:
ModernColors.java
Use for shared semantic brand colors such as primary blue, hover blue, status colors, and colors referenced directly by custom Swing painting or custom components.EasyLightLaf.properties / EasyDarkLaf.properties
Use for FlatLaf UI defaults such as Component.accentColor, Table.selectionBackground, Tree.selectionBackground, TabbedPane.*, borders, backgrounds, and hover states.easypostman-light.xml / easypostman-dark.xml
Use only for editor syntax colors inside RSyntaxTextArea. These files are loaded by EditorThemeUtil, not by FlatLaf itself.Preferred order when adjusting theme:
ModernColors.java.EasyLightLaf.properties or EasyDarkLaf.properties.easypostman-*.xml files.EmptyBorder repeatedly without changing MigLayout behaviorTitledBorder on dense editable forms after focus clipping appearsAfter the fix, verify all of the following:
mvn -q -DskipTests compile.© lakernote, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .codex/skills/swing-flatlaf-miglayout-principles of lakernote/easy-postman.
Open the folder on GitHubat commit 3d6ccbc
Swing Flatlaf Miglayout Principles next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Swing Flatlaf Miglayout Principles this skilllakernote/easy-postman | 723 | — | ~3.7k | Automated safety check: Pass | Apache-2.0 | |
| Quarkus TDDaffaan-m/ECC | 277k | 1 repos | ~6.4k | Automated safety check: Pass | MIT | |
| Triage Sonarqubenetdata/netdata | 81k | — | ~2.8k | Automated safety check: Notes | GPL-3.0 | |
| Studio Mock API Testssupabase/supabase | 111k | — | ~3k | Automated safety check: Pass | Apache-2.0 | |
| Test Guidelinesgetsentry/sentry-dart | 873 | — | ~3.1k | Automated safety check: Pass | MIT | |
| Sonarqube Analysishbmartin/graphviz2drawio | 275 | — | ~508 | Automated safety check: Notes | GPL-3.0 |
affaan-m/ECC
Test-driven development for Quarkus 3.x LTS using JUnit 5, Mockito, REST Assured, Camel testing, and JaCoCo.
netdata/netdata
Inspect, review, or apply authorized triage decisions to SonarCloud issues and security hotspots; also review the Sonar helpers.
supabase/supabase
Component tests for Supabase Studio that mock API requests at the network layer with MSW.
getsentry/sentry-dart
Enforce Sentry Dart/Flutter SDK test conventions for naming, structure, and fixtures.
hbmartin/graphviz2drawio
Inspect SonarQube Cloud/SonarCloud findings for this repository using local .env credentials.
tellahq/opensession
Write idiomatic Effect v4 TypeScript verified against the pinned effect@4.0.0-rc.112 source.
lakernote/easy-postman
A skill your agent uses when adding or refactoring EasyPostman modules, shared code, plugin contracts, UI utilities, i18n, settings, theme/font handling, or deciding where a class belongs.
lakernote/easy-postman
A skill your agent uses when modifying EasyPostman Swing dialogs, popups, wizards, or modal flows to better match IntelliJ IDEA or FlatLaf settings-style visual hierarchy, especially when read-only…
lakernote/easy-postman
A skill your agent uses when modifying EasyPostman Swing UI fonts, especially when dialogs, labels, tables, tabs, or renderers look too large or too small, or when a change needs to stay consistent…
lakernote/easy-postman
A skill your agent uses when adding or updating EasyPostman Swing/TestNG UI tests that may run in headless CI or no-display Linux environments.
Categories
A skill your agent uses when modifying EasyPostman Swing forms, tool-window panels, localized English/Chinese text layouts, or FlatLaf/MigLayout layouts, especially when refactors introduce clipped…. Swing Flatlaf Miglayout Principles is an agent skill from lakernote/easy-postman. Use when modifying EasyPostman Swing forms, tool-window panels, localized English/Chinese text layouts, or FlatLaf/MigLayout layouts, especially when refactors introduce clipped focus rings, truncated text, clipped status badges, dense spacing, border conflicts, rounded-card corner leaks, or inconsistent form structure.
Swing Flatlaf Miglayout Principles fits situations like: modifying EasyPostman Swing forms; tool-window panels; localized English/Chinese text layouts; flatLaf/MigLayout layouts.
Run `npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a claude-code`. Or copy the skill folder (.codex/skills/swing-flatlaf-miglayout-principles in lakernote/easy-postman) into .claude/skills/swing-flatlaf-miglayout-principles in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a codex`. Or copy the skill folder (.codex/skills/swing-flatlaf-miglayout-principles in lakernote/easy-postman) into .agents/skills/swing-flatlaf-miglayout-principles in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add lakernote/easy-postman --skill swing-flatlaf-miglayout-principles -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/swing-flatlaf-miglayout-principles, .gemini/skills/swing-flatlaf-miglayout-principles, .github/skills/swing-flatlaf-miglayout-principles and .opencode/skills/swing-flatlaf-miglayout-principles in your project.
Going by SKILL.md and its folder, Swing Flatlaf Miglayout Principles needs the command-line tools its instructions call (mvn).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Swing Flatlaf Miglayout Principles is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Swing Flatlaf Miglayout Principles: Quarkus TDD (affaan-m/ECC, 277k stars), Triage Sonarqube (netdata/netdata, 81k stars), Studio Mock API Tests (supabase/supabase, 111k stars) and Test Guidelines (getsentry/sentry-dart, 873 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
lakernote (a GitHub user) maintains it in lakernote/easy-postman, which has 723 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 10, 2026.
Source: lakernote/easy-postman on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.