<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Paul</title>
    <description>The latest articles on DEV Community by Paul (@jane_lee_ecafb4b88ef2eff0).</description>
    <link>https://dev.to/jane_lee_ecafb4b88ef2eff0</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3527049%2F7c15ef55-e4a2-4791-9354-60112535486c.png</url>
      <title>DEV Community: Paul</title>
      <link>https://dev.to/jane_lee_ecafb4b88ef2eff0</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jane_lee_ecafb4b88ef2eff0"/>
    <language>en</language>
    <item>
      <title>Cursor vs Trae vs Kiro vs GitHub Copilot: My Honest 2-Year Review of 4 AI IDEs</title>
      <dc:creator>Paul</dc:creator>
      <pubDate>Mon, 16 Mar 2026 01:51:20 +0000</pubDate>
      <link>https://dev.to/jane_lee_ecafb4b88ef2eff0/cursor-vs-trae-vs-kiro-vs-github-copilot-my-honest-2-year-review-of-4-ai-ides-29of</link>
      <guid>https://dev.to/jane_lee_ecafb4b88ef2eff0/cursor-vs-trae-vs-kiro-vs-github-copilot-my-honest-2-year-review-of-4-ai-ides-29of</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7h2wgq138m0c65ap7641.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7h2wgq138m0c65ap7641.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Two Years, Four Mainstream AI IDEs, and Honest Paid-Subscriber Feedback — Not an Ad, Just a Real-World Pitfall Guide
&lt;/h1&gt;

&lt;p&gt;This article is about my real experience with four tools: &lt;strong&gt;Cursor, Trae, Kiro, and GitHub Copilot&lt;/strong&gt;. I’ll walk through how I got into each one, what feels great in day-to-day use, and where each one breaks down. If you’re deciding which IDE to use next—or you’re already unhappy with your current setup—I hope this hard-earned experience helps.&lt;/p&gt;

&lt;p&gt;That said, tools are always personal. What works for me may not work for you. If your experience is different, or you think I missed a better setup, feel free to challenge me—discussion is exactly how we all get better.&lt;/p&gt;

&lt;h2&gt;
  
  
  I: My AI Coding Journey
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;GitHub Copilot: From “Old-School Typing” to “Tab-Driven Coding”&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;When people talk about AI coding, Copilot is hard to ignore. In 2023, when it moved from preview into mainstream use, I was an early adopter. It felt &lt;strong&gt;revolutionary&lt;/strong&gt; at the time: type a few characters and it can complete an entire line, paragraph, or function. I jumped from “manual typing” to “trust the Tab key” almost overnight.&lt;/p&gt;

&lt;p&gt;I’m a heavy JetBrains user, and VS Code never felt like home to me. Copilot’s strength is that it works across environments: not only VS Code, but also an &lt;strong&gt;official IntelliJ IDEA plugin&lt;/strong&gt;. That gave my existing workflow a smooth AI upgrade. In 2023–2024, “IDEA interaction + Copilot completion quality” was my productivity sweet spot. I paid for it for two straight years, and it became foundational to my workflow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Completion tip:&lt;/strong&gt; Copilot pushed me to write clearer comments. The clearer I described intent in natural language, the better its completions became. That also improved my code readability.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Cursor: Shifting from Manual to Automatic&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Cursor represented a new paradigm: not just completion, but conversation-driven development.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Talk to me,
Code for me.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When this capability first appeared, it was a shock to the industry. While Copilot was still optimizing Tab completion, Cursor was already handling higher-level reasoning and generating large code blocks from natural language prompts.&lt;/p&gt;

&lt;p&gt;I started using Cursor in 2024. At that time there was no IDEA plugin, so I had to work in VS Code, which took some adjustment. My prompting skills were also weak at the beginning, so it didn’t click immediately. But after adapting to the workflow, I hit a second major productivity jump.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Kiro: Following the Leader, with Growing Pains&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Because Cursor could be unstable in some network environments, I looked for a backup. That’s when I found &lt;strong&gt;Kiro&lt;/strong&gt;. It started as Amazon Q and later became a standalone AI IDE. As an early user, I had a long free period, and when Cursor failed, Kiro often saved me.&lt;/p&gt;

&lt;p&gt;Kiro is also VS Code-based, so onboarding was easy after using Cursor. The purple theme grew on me too. As an AWS product, it appears feature-complete: code completion, chat coding, diagnostics, and more.&lt;/p&gt;

&lt;p&gt;But “has features” and “feels good to use” are very different things. Kiro has had more &lt;strong&gt;basic product bugs&lt;/strong&gt; than any AI IDE I’ve used. I’m not talking about model hallucinations; I mean UI and interaction bugs in the product itself. That’s especially frustrating when expectations are high for a company known for infrastructure reliability.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Trae: A Late Entrant with Strong Engineering Discipline&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I had seen Trae ads for a long time, but only started using it deeply in &lt;strong&gt;early 2026&lt;/strong&gt;. I use the international version and subscribed with a local Visa card. By then, I was fully comfortable with VS Code-like IDEs.&lt;/p&gt;

&lt;p&gt;My first impression: Trae is extremely polished in fundamentals. The UI is clean, response is fast, and localization is excellent. There are reports that the team rewrote major VS Code internals in Rust. True or not, large projects feel very smooth. After months of use, I can say this: touching so much low-level architecture while staying this stable is genuinely impressive. (Yes, this is also a subtle shot at Kiro 😏)&lt;/p&gt;

&lt;p&gt;Of course, I’ve used Trae for less time than the others, so my view may evolve.&lt;/p&gt;

&lt;h1&gt;
  
  
  Chapter II: Deep Comparison — The Devil Is in the Details
&lt;/h1&gt;

&lt;p&gt;Enough background. Here’s a direct breakdown of strengths and weaknesses from daily, high-intensity use.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;GitHub Copilot: The Best Tab Experience&lt;/strong&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Positioning &amp;amp; price:&lt;/strong&gt; &lt;strong&gt;$10/month&lt;/strong&gt;. Its biggest advantage is ecosystem reach. You can use it in VS Code, the IntelliJ suite, Vim, and Neovim.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Subscribe once, tab everywhere
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Core strengths:&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Completion quality:&lt;/strong&gt; Years of iteration still make its line/block completion speed and accuracy top-tier.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ecosystem fit:&lt;/strong&gt; Deep GitHub integration gives it strong context awareness for repos, style, and team habits. In JetBrains, it still feels best-in-class.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core weakness (Agent mode):&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Slow/inaccurate context retrieval:&lt;/strong&gt; It often misses the right files unless you repeatedly guide it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Whole-file rewrite behavior:&lt;/strong&gt; This is my biggest pain point. Instead of focused edits, it tends to regenerate full files, which causes:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Unwanted formatting/style churn:&lt;/strong&gt; comments, spelling, and style get changed even when not requested.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Higher breakage risk:&lt;/strong&gt; full-file rewrites raise the chance of introducing regressions.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ol&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Bottom line:&lt;/strong&gt; Copilot is an elite “Tab accelerator.” But if you want an autonomous project-aware partner for complex tasks, it can feel behind newer AI IDE workflows.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Kiro: Backed by a Giant&lt;/strong&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Positioning &amp;amp; price:&lt;/strong&gt; &lt;strong&gt;$20/month (1000 points)&lt;/strong&gt; at entry level. No free fallback model after points run out, so AI functions stop hard.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core strengths:&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Claude-based intelligence:&lt;/strong&gt; Good reasoning and instruction following for most engineering tasks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Spec-driven mindset:&lt;/strong&gt; Useful for teams that prioritize strict, document-first workflows.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core weaknesses (frustrating details):&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Visible product bugs:&lt;/strong&gt; From completion edge cases to UI glitches.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Painful file reference UX:&lt;/strong&gt; In chat, you often have to manually type file names. In large projects with similar names, this is a productivity killer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fragile image handling:&lt;/strong&gt; The model may not support images, but the IDE allows image content. Accidentally pasting rich text with images can break the session.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Long-context slowdown:&lt;/strong&gt; It starts strong, then degrades into very slow “one-line edit, one-step think” behavior in late-stage refinements.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Expensive token economy:&lt;/strong&gt; $20/1000 points can disappear quickly on long-context tasks. Several full-time users around me report ~$40/month as the practical minimum.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What Kiro taught me:&lt;/strong&gt; Control context aggressively. Split weakly related tasks into separate sessions. Precisely scope files with @ references instead of relying on broad retrieval.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Trae: An Elegant Swiss-Army Knife&lt;/strong&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Positioning &amp;amp; price:&lt;/strong&gt; &lt;strong&gt;$10/month&lt;/strong&gt; entry plan with excellent value.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core strengths:&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Excellent fundamentals:&lt;/strong&gt; UI, performance, stability, and localization are consistently strong.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Efficient workflow design:&lt;/strong&gt; Its agent tends to follow:
&lt;code&gt;Find rules -&amp;gt; Retrieve code -&amp;gt; Read context -&amp;gt; Think -&amp;gt; Edit -&amp;gt; Check -&amp;gt; Fix -&amp;gt; Summarize&lt;/code&gt;
It uses retrieval and proactive context compression, which helps reduce token waste.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strong Chinese/local adaptation:&lt;/strong&gt; Especially useful for Chinese-language workflows and local ecosystems.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core weaknesses (trade-offs of its philosophy):&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Overkill for tiny tasks:&lt;/strong&gt; The full process can feel heavy for simple edits or translations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Code-first bias:&lt;/strong&gt; Outside coding tasks, it may ask for project structure before proceeding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Session concurrency limits:&lt;/strong&gt; Compared with some competitors, parallel multi-chat workflows feel more constrained.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;“Prepare first” tendency:&lt;/strong&gt; Even with precise instructions and file targeting, it may still perform extra retrieval before acting.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;My take on Trae:&lt;/strong&gt; Polished, powerful, and methodical. Great for substantial tasks; less ideal for lots of micro-edits.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Cursor: The Gold-Standard All-Rounder&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Positioning &amp;amp; price:&lt;/strong&gt; &lt;strong&gt;$20/month&lt;/strong&gt; (with more flexible plans now).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it still feels best overall:&lt;/strong&gt; Most pain points from other tools are either absent or better handled.

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Project-level understanding:&lt;/strong&gt; Strong repository awareness without constant manual file tagging.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fast and focused edits:&lt;/strong&gt; Usually edits targeted blocks instead of rewriting full files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reliable baseline experience:&lt;/strong&gt; Fewer product-level bugs in day-to-day use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexible model fallback:&lt;/strong&gt; Auto mode can bridge gaps when premium quotas are exhausted.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smooth interaction model:&lt;/strong&gt; Chat, edit, and file operations feel tightly integrated.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Biggest drawback:&lt;/strong&gt; In mainland China, reliable access to top overseas models (like Claude) usually requires a stable proxy/VPN setup.&lt;/li&gt;

&lt;/ul&gt;

&lt;h1&gt;
  
  
  III: Summary &amp;amp; Selection Guide — Find Your Coding Partner
&lt;/h1&gt;

&lt;p&gt;So which one should you choose?&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;GitHub Copilot: Your Tab Booster&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; Developers who want AI enhancement inside their existing IDE workflow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One-liner:&lt;/strong&gt; If you want stronger coding flow without changing your toolchain, Copilot’s cross-IDE plugin ecosystem is hard to beat.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cursor: Your General-Purpose AI Coding Partner&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; Developers ready to embrace conversation-first coding and able to handle connectivity requirements.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Kiro: Your Process-Heavy Contractor&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; Teams that are deeply tied to AWS and strongly prefer spec-driven, documentation-first delivery.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Trae: Your Automated Workshop Lead&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best for:&lt;/strong&gt; China-based developers, especially those on local stacks, who care about cost-efficiency and structured automation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One-liner:&lt;/strong&gt; Excellent fundamentals, strong localization, and highly automated flow.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I welcome discussion—and disagreement.&lt;/p&gt;

&lt;h1&gt;
  
  
  Extra Notes (Detailed Comparison)
&lt;/h1&gt;

&lt;p&gt;Here’s the short practical version from real usage:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Copilot&lt;/strong&gt; is still the best pure Tab completion experience, especially if you use multiple IDEs.&lt;/li&gt;
&lt;li&gt;Its Agent mode is weaker: context lookup can miss, and full-file rewrites often create noisy diffs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kiro&lt;/strong&gt; can solve real tasks with Claude-class reasoning, but UX issues and point-based billing can make long sessions expensive.&lt;/li&gt;
&lt;li&gt;Kiro taught me to aggressively manage context and explicitly scope files to save tokens.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Trae&lt;/strong&gt; is very strong on product quality and token efficiency, but can feel heavy for tiny, non-coding tasks.&lt;/li&gt;
&lt;li&gt;For larger tasks, Trae’s structured flow is reliable and cost-effective.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cursor</category>
      <category>kiro</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>How to visualize dependencies in Golang</title>
      <dc:creator>Paul</dc:creator>
      <pubDate>Wed, 24 Sep 2025 14:06:10 +0000</pubDate>
      <link>https://dev.to/jane_lee_ecafb4b88ef2eff0/how-to-visualize-dependencies-in-golang-3205</link>
      <guid>https://dev.to/jane_lee_ecafb4b88ef2eff0/how-to-visualize-dependencies-in-golang-3205</guid>
      <description>&lt;h1&gt;
  
  
  Background
&lt;/h1&gt;

&lt;p&gt;I encountered an issue while building a &lt;code&gt;golang&lt;/code&gt; project recently. Even though I specified the version of a dependency package, the version number was automatically upgraded during the build process. I didn't understand why at the time. Later, I learned about the &lt;code&gt;go mod graph&lt;/code&gt; command, which lists all dependencies. I tried it, but it wasn't intuitive at all; I still had to copy the output into a text editor to search for information.&lt;/p&gt;

&lt;p&gt;So, I searched online for related tools.&lt;/p&gt;

&lt;h1&gt;
  
  
  Other Tools
&lt;/h1&gt;

&lt;p&gt;Search terms: Go Module dependency visualization&lt;/p&gt;

&lt;p&gt;There are many tools available online. Most solutions use &lt;code&gt;graphviz&lt;/code&gt;, &lt;code&gt;echarts&lt;/code&gt;, or generate images. I tried a few.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;graphviz&lt;/code&gt; is a powerful tool, but it requires separate installation. The generated SVG files aren't very readable either, especially when there are many dependent packages. For example, look at this one:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3whwftd9rqf9wl1d86h.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw3whwftd9rqf9wl1d86h.webp" alt=" " width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, I turned to echarts.&lt;/p&gt;

&lt;p&gt;Wow, it looks quite nice! The mouse hover feedback is good, and the color scheme is vibrant.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxu8rqqff212k8jecezog.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxu8rqqff212k8jecezog.gif" alt=" " width="600" height="529"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The echarts solution is beautiful, but not practical. With SVG I could at least search for package names; with this echart version, the package names aren't displayed.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  My Solution
&lt;/h1&gt;

&lt;p&gt;Alright, enough complaining. The problem still needs solving. Today, I'm introducing a visualization tool for &lt;code&gt;go mod graph&lt;/code&gt; — &lt;a href="https://github.com/PaulXu-cn/go-mod-graph-chart" rel="noopener noreferrer"&gt;gmchart&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  gmchart
&lt;/h1&gt;

&lt;p&gt;github: &lt;a href="https://github.com/PaulXu-cn/go-mod-graph-chart" rel="noopener noreferrer"&gt;https://github.com/PaulXu-cn/go-mod-graph-chart&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Installation
&lt;/h1&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;go get &lt;span class="nt"&gt;-u&lt;/span&gt; github.com/PaulXu-cn/go-mod-graph-chart/gmchart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check if the installation was successful like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;gmchart &lt;span class="nt"&gt;--help&lt;/span&gt;

Usage of ~&lt;span class="se"&gt;\g&lt;/span&gt;o&lt;span class="se"&gt;\b&lt;/span&gt;&lt;span class="k"&gt;in&lt;/span&gt;&lt;span class="se"&gt;\g&lt;/span&gt;mchart:
  &lt;span class="nt"&gt;-debug&lt;/span&gt; int
        is debug model
  &lt;span class="nt"&gt;-keep&lt;/span&gt; int
        start http server not &lt;span class="nb"&gt;exit&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Usage
&lt;/h2&gt;

&lt;p&gt;Navigate to your Golang project directory and run the command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;go mod graph | gmchart
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;This should automatically open your browser. If it doesn't, open it manually.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Visit &lt;a href="http://127.0.0.1:60306" rel="noopener noreferrer"&gt;http://127.0.0.1:60306&lt;/a&gt; to see the result.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh27r9rcvi0joqt6d9uaf.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh27r9rcvi0joqt6d9uaf.gif" alt=" " width="720" height="392"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you can see, it renders the dependencies into a dependency tree. You can see which layer a particular package is introduced in, which is very intuitive. The webpage contains an SVG, making it easy to find a specific package—just use &lt;code&gt;Ctrl+F&lt;/code&gt; to search.&lt;/p&gt;

&lt;h1&gt;
  
  
  Summary
&lt;/h1&gt;

&lt;p&gt;After searching for so long, why wasn't there a suitable tool?&lt;/p&gt;

&lt;p&gt;I thought about it. &lt;strong&gt;Visualization&lt;/strong&gt; is a front-end specialty. Front-end developers don't typically use &lt;code&gt;Golang&lt;/code&gt;. Those who do are rare, and among those, even fewer are interested in the &lt;code&gt;go mod graph&lt;/code&gt; functionality. So, it fell to us back-end developers to create this tool.&lt;/p&gt;

&lt;p&gt;Sigh~&lt;/p&gt;

&lt;h2&gt;
  
  
  Alternative Solutions
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/poloxue/modv" rel="noopener noreferrer"&gt;https://github.com/poloxue/modv&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/ofabry/go-callvis" rel="noopener noreferrer"&gt;https://github.com/ofabry/go-callvis&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/ios122/graph-go" rel="noopener noreferrer"&gt;https://github.com/ios122/graph-go&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>go</category>
    </item>
  </channel>
</rss>
