Fetching latest headlinesโ€ฆ
A small Vite plugin for moving heavy JSX attributes into comments
NORTH AMERICA
๐Ÿ‡บ๐Ÿ‡ธ United Statesโ€ขMay 10, 2026

A small Vite plugin for moving heavy JSX attributes into comments

1 views0 likes0 comments
Originally published byDev.to

Hi everybody,
I'm a software engineer for as long as I can remember.

When working with web application frameworks, I often get tired when having to scan long JSX, mostly because of long class names.

I had an idea of writing a Vite plugin that move the classname attributes into comments above element.
For example:

  • Before
<h1 class="rounded-lg bg-blue-500 px-4 py-2 text-white">Hello Mom</h1>
  • After
{/* @class rounded-lg bg-blue-500 */}
{/* @class px-4 py-2 text-white */}
<h1>Hello Mom</h1>;

Beside making JSX shorter and easier to scan, this also let you try new attribute values during development while keeping the original JSX unchanged.
For example:

{/* @class rounded-lg bg-blue-500 */}
<h1 class="title">Hello Mom</h1>;

You can try them online:

Please switch between App.before.tsx and App.after.tsx to compare the syntax

Iโ€™d love feedback from JSX users:

  • Is this syntax useful?
  • Would you use this in real projects?
  • What directives should be supported by default?

This is the plugin repo

Issues, ideas, and pull requests are welcome.

Thank you for taking a look!

Comments (0)

Sign in to join the discussion

Be the first to comment!