You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Remove self-deprecating language ("lazy maintainer") that hurts trust
- Remove version numbers that will get outdated (ts-morph v27, TS 5.7)
- Update blog URL to 2025-12
- Make README opening punchier: "One keystroke. One click. Hundreds of files organized."
- Simplify narrative to "picked it up and modernized"
Copy file name to clipboardExpand all lines: README.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,11 +4,11 @@
4
4
5
5
# Mini TypeScript Hero – Small hero. Big cleanup!
6
6
7
-
**Sorts and organizes TypeScript/JavaScript imports** — A lightweight, modern VSCode extension that automatically manages your import statements.
7
+
**One keystroke. One click. Hundreds of files organized.** — A lightweight, modern VSCode extension that sorts and organizes your TypeScript/JavaScript imports.
8
8
9
-
This extension is a modernized extraction of the "Organize Imports" feature from the original [TypeScript Hero](https://github.com/buehler/typescript-hero)extension, rebuilt with modern best practices.
9
+
[TypeScript Hero](https://github.com/buehler/typescript-hero)was well-known for its import organizer, but it went unmaintained. We picked it up, modernized everything, and added new features.
10
10
11
-
**Read the full story:**[TypeScript Hero is dead (is yet another VS Code extension gone forever?)](https://angular.schule/blog/2025-10-mini-typescript-hero)
11
+
**Read the full story:**[TypeScript Hero is dead (is yet another VS Code extension gone forever?)](https://angular.schule/blog/2025-12-mini-typescript-hero)
12
12
13
13
## Features
14
14
@@ -252,7 +252,7 @@ New users get `legacyMode: false` by default. You can toggle this setting anytim
252
252
253
253
## Credits
254
254
255
-
This extension is based on the "Organize Imports" feature from [TypeScript Hero](https://github.com/buehler/typescript-hero) by Christoph Bühler. The original TypeScript Hero is no longer maintained, so we've extracted and modernized this valuable feature.
255
+
This extension continues [TypeScript Hero](https://github.com/buehler/typescript-hero) by Christoph Bühler. The original went unmaintained, so we picked it up and modernized it.
Copy file name to clipboardExpand all lines: blog-post.md
+26-10Lines changed: 26 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,11 +45,28 @@ Angular libraries grouped together and automatically merged into one import. RxJ
45
45
[Christoph Bühler](https://me.cbue.ch/), the original author of TypeScript Hero, no longer had time to maintain the extension. He's moved on from TypeScript work, which is totally fair. We all have our seasons with different technologies.
46
46
47
47
But I needed this feature. Every. Single. Day.
48
-
So I reached out to Christoph with a simple question: Could I rescue the import organizer and release it as a new extension?
48
+
So I reached out to Christoph with a simple question: Could I pick up TypeScript Hero and release it as a new extension?
49
49
His response was incredibly kind and supportive. He gave me his blessing, shared what code he still had, and even said he'd be excited to see the work continue.
50
50
51
51
**My mission was simple**: Preserve this feature for myself. And hopefully, other people will like it too.
52
52
53
+
## Cool New Features
54
+
55
+
While modernizing, we added some features that the original never had:
56
+
57
+
**🗂️ Organize entire folders or your whole workspace at once!**
58
+
59
+
Right-click any folder in the Explorer → "Organize imports in folder". Or run "Organize imports in workspace" from the Command Palette. Perfect for:
60
+
- Cleaning up after major refactorings
61
+
- Onboarding legacy projects to your team's import style
62
+
- Enforcing consistent imports across hundreds of files
63
+
64
+
The extension intelligently skips `node_modules`, `dist`, `build`, and other artifacts. You can also configure custom exclude patterns for auto-generated files your team shouldn't touch.
65
+
66
+
**⚠️ Conflict detection**
67
+
68
+
Using Prettier or ESLint plugins that also sort imports? Run "Check for configuration conflicts" to detect if multiple tools are fighting over your imports.
69
+
53
70
## Wait, Doesn't VS Code Already Have This?
54
71
55
72
**Yes, but no.** VS Code has a built-in "Organize Imports" feature that removes unused imports, sorts alphabetically, and merges duplicate imports. Since TypeScript 4.7+, it preserves blank lines you manually add between import groups. The fundamental difference is **how groups are created**: you manually type blank lines (VS Code preserves them), versus automatic grouping (Mini TypeScript Hero creates them).
@@ -78,16 +95,15 @@ For a tool I rely on daily, that was a ticking time bomb.
-**Smart blank line handling**: Choose how many blank lines you want after imports. The new default is 1 blank line (standard from ESLint), but you can configure it to 2 lines, preserve existing spacing, or use the old TypeScript Hero behavior. Honestly, I always felt that 1 line would be better than the old behavior where blank lines would sometimes "move" around unpredictably. Now everyone can decide what preference they have!
88
-
-**Configurable import merging**: The extension can combine multiple imports from the same module (like two `@angular/core` imports) into one clean statement. This is now a configurable option, and migrated users automatically get their original behavior preserved while new users benefit from modern best practices.
89
-
-**Workspace-wide organization**: Beyond the familiar single-file shortcut, you can now organize imports across your entire workspace or within specific folders via the context menu. Useful for cleaning up after major refactorings or onboarding new projects. The extension intelligently skips build artifacts and includes configurable exclude patterns for auto-generated files.
90
-
-**Modern TypeScript support**: Full support for TypeScript 3.8+ `import type` syntax and import attributes (`with { type: 'json' }`), preserving semantic import behavior for better type safety and tree-shaking. Legacy mode available for compatibility with older TypeScript versions.
103
+
**Other improvements:**
104
+
-**Smart blank line handling**: Choose how many blank lines you want after imports (1, 2, or preserve existing). The old behavior where blank lines would sometimes "move" unpredictably is now configurable.
105
+
-**Configurable import merging**: Combine multiple imports from the same module into one clean statement. Migrated users keep their original behavior; new users get modern best practices.
106
+
-**Modern TypeScript support**: Full support for `import type` syntax and import attributes (`with { type: 'json' }`).
91
107
92
108
The goal was simple: **Future-proof**. Make sure this tool keeps working for years to come, without depending on abandoned libraries.
93
109
@@ -108,7 +124,7 @@ This extension is **MIT licensed and free for everyone**.
108
124
109
125
I'm incredibly grateful to Christoph Bühler for creating TypeScript Hero in the first place, and for being so generous in allowing this work to continue. The original code, the design decisions, the thoughtful features: all of that came from Christoph.
110
126
111
-
I'm just keeping the lights on and making sure it stays maintained, though I'm known for being a lazy maintainer. Feel free to fork it when I ever abandon it.
127
+
I'm committed to keeping this tool maintained and working for the community.
112
128
113
129
## Install Mini TypeScript Hero Now
114
130
@@ -129,6 +145,6 @@ Ready to organize your imports with a single keystroke?
129
145
130
146
---
131
147
132
-
**TL;DR:** TypeScript Hero isn't dead. It's been rescued and modernized as Mini TypeScript Hero. VS Code has basic organize imports, but Mini TypeScript Hero gives you custom grouping patterns, formatting control, and import organization that can match your team's style guide.
148
+
**TL;DR:** TypeScript Hero isn't dead. We picked it up and modernized it as Mini TypeScript Hero. VS Code has basic organize imports, but Mini TypeScript Hero gives you custom grouping patterns, formatting control, and import organization that can match your team's style guide.
0 commit comments