<?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: Vien Dinh</title>
    <description>The latest articles on DEV Community by Vien Dinh (@maxvien).</description>
    <link>https://dev.to/maxvien</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%2F568913%2F4856b5b8-f85d-4f2a-b01f-df1f5827901d.jpeg</url>
      <title>DEV Community: Vien Dinh</title>
      <link>https://dev.to/maxvien</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/maxvien"/>
    <language>en</language>
    <item>
      <title>ESMate: An Anti-Fatigue Toolkit for JavaScript/TypeScript Development</title>
      <dc:creator>Vien Dinh</dc:creator>
      <pubDate>Tue, 23 Dec 2025 14:37:00 +0000</pubDate>
      <link>https://dev.to/maxvien/esmate-an-anti-fatigue-toolkit-for-javascripttypescript-development-5c7c</link>
      <guid>https://dev.to/maxvien/esmate-an-anti-fatigue-toolkit-for-javascripttypescript-development-5c7c</guid>
      <description>&lt;p&gt;Starting a new JavaScript or TypeScript project often feels like a battle against configuration. Before you write a single line of business logic, you're usually stuck setting up ESLint, Prettier, TypeScript, Tailwind CSS, and testing tools. It's a repetitive, draining ritual.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/VienDinhCom/esmate" rel="noopener noreferrer"&gt;ESMate&lt;/a&gt;&lt;/strong&gt; answers a simple question: &lt;em&gt;"How do we make modern JavaScript development smooth and easy, even in the Node.js world?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Inspired by the developer experience of Deno, ESMate provides a suite of tools and packages designed to simplify the modern web development workflow. It’s not a new runtime, but a helper layer that makes living in the Node.js ecosystem much more pleasant.&lt;/p&gt;

&lt;p&gt;Here is a tour of the ESMate ecosystem and how it can supercharge your development.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Core Tools
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. esmate (CLI)
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;esmate&lt;/code&gt; CLI is the heart of the toolkit. It unifies common tasks into a single, cohesive interface.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Lint &amp;amp; Format&lt;/strong&gt;: Wraps ESLint and Prettier with zero-config defaults.

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;esmate lint&lt;/code&gt; / &lt;code&gt;esmate fmt&lt;/code&gt;: Check and auto-fix your code.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Task Runner&lt;/strong&gt;: A powerful task runner compatible with &lt;code&gt;npm&lt;/code&gt; scripts but enhanced. Supports both sequential and parallel execution defined right in your &lt;code&gt;package.json&lt;/code&gt;.
&lt;/li&gt;

&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-D&lt;/span&gt; esmate
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. create-esmate
&lt;/h3&gt;

&lt;p&gt;Forget copying and pasting old config files. &lt;code&gt;create-esmate&lt;/code&gt; is a scaffolding tool that sets up modern apps instantly. It supports React, Vue, Solid, Svelte, Astro, and Next.js out of the box.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm create esmate@latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can also choose from robust templates like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;react-spa&lt;/strong&gt;: React + TanStack Router&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;react-astro&lt;/strong&gt;: React + Astro + TanStack&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;react-next&lt;/strong&gt;: React + Next.js + Drizzle + Stripe&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Packages
&lt;/h2&gt;

&lt;p&gt;ESMate also provides a collection of packages that you can use individually or together.&lt;/p&gt;

&lt;h3&gt;
  
  
  @esmate/utils
&lt;/h3&gt;

&lt;p&gt;A comprehensive utility belt. It re-exports and unifies:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;es-toolkit&lt;/strong&gt;: Modern, high-performance LODASH replacement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;math.js&lt;/strong&gt;: For complex math operations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;String tools&lt;/strong&gt;: Advanced string manipulation (title casing, typo fixing).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  @esmate/react
&lt;/h3&gt;

&lt;p&gt;React development made easier.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hooks&lt;/strong&gt;: Includes the full power of &lt;a href="https://ahooks.js.org/" rel="noopener noreferrer"&gt;ahooks&lt;/a&gt; (&lt;code&gt;useRequest&lt;/code&gt;, &lt;code&gt;usePagination&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom Hooks&lt;/strong&gt;: specialized hooks like &lt;code&gt;useImmutableState&lt;/code&gt; (powered by Immer) and &lt;code&gt;useSearchParams&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  @esmate/shadcn
&lt;/h3&gt;

&lt;p&gt;If you use shadcn/ui, you'll love this. It bundles shadcn components, hooks, and styles into a single installable package.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Zero Config&lt;/strong&gt;: Works with Tailwind automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pre-built UI&lt;/strong&gt;: Import components like &lt;code&gt;import { Button } from "@esmate/shadcn/components/ui/button"&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bundled Deps&lt;/strong&gt;: No need to manually install &lt;code&gt;zod&lt;/code&gt;, &lt;code&gt;react-hook-form&lt;/code&gt;, or &lt;code&gt;radix-ui&lt;/code&gt; primitives—they are all re-exported.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  @esmate/eslint &amp;amp; @esmate/prettier
&lt;/h3&gt;

&lt;p&gt;Opinionated but configurable setups "for humans".&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;@esmate/eslint&lt;/strong&gt;: A wrapper around &lt;code&gt;@antfu/eslint-config&lt;/code&gt; tuned for React, Vue, Astro, and Svelte.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@esmate/prettier&lt;/strong&gt;: Includes the Tailwind CSS plugin and sensible defaults.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why Switch?
&lt;/h2&gt;

&lt;p&gt;We believe developers should spend their time &lt;strong&gt;building&lt;/strong&gt;, not configuring. ESMate lets you skip the boilerplate ritual and get straight to the work that matters.&lt;/p&gt;

&lt;p&gt;Give it a try today: &lt;a href="https://github.com/VienDinhCom/esmate" rel="noopener noreferrer"&gt;https://github.com/VienDinhCom/esmate&lt;/a&gt;&lt;/p&gt;

</description>
      <category>eslint</category>
      <category>prettier</category>
      <category>node</category>
      <category>react</category>
    </item>
    <item>
      <title>Enhance Your English Listening Skills with Hocify: The Game-Changing Transcription Tool!</title>
      <dc:creator>Vien Dinh</dc:creator>
      <pubDate>Sun, 22 Oct 2023 10:32:35 +0000</pubDate>
      <link>https://dev.to/maxvien/enhance-your-english-listening-skills-with-hocify-the-game-changing-transcription-tool-3p2m</link>
      <guid>https://dev.to/maxvien/enhance-your-english-listening-skills-with-hocify-the-game-changing-transcription-tool-3p2m</guid>
      <description>&lt;p&gt;Hey there! Are you trying to get better at understanding English when people talk? Well, I have something super cool for you. It's called &lt;strong&gt;Hocify&lt;/strong&gt;! With &lt;strong&gt;Hocify&lt;/strong&gt;, you can practice your listening skills by transcribing what you hear. Sounds fun, right?&lt;/p&gt;

&lt;p&gt;Here's how it works. First, you open up &lt;strong&gt;Microsoft Edge&lt;/strong&gt;, a type of internet program. If you have a newer &lt;strong&gt;Windows&lt;/strong&gt;, you probably already have it. If you use a &lt;strong&gt;Mac&lt;/strong&gt; or &lt;strong&gt;Linux&lt;/strong&gt;, you can download it for free from this link: &lt;a href="https://www.microsoft.com/vi-vn/edge/download"&gt;https://www.microsoft.com/vi-vn/edge/download&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, you click on this link: &lt;a href="https://www.hocify.com/transcribe"&gt;https://www.hocify.com/transcribe&lt;/a&gt;. You can find a story or something you like in English and copy and paste it into the &lt;strong&gt;Hocify&lt;/strong&gt; box to start practicing. If you want to hear the part you're typing again, just press the &lt;strong&gt;Play&lt;/strong&gt; button. If you don't understand a word, no worries! Just click on the &lt;strong&gt;Hint&lt;/strong&gt; button, and Hocify will help you out.&lt;/p&gt;

&lt;p&gt;Now, you might be wondering, "Why use &lt;strong&gt;Hocify&lt;/strong&gt;?" Well, imagine when you were young and learning how to spell in your own language. It's kind of like that, but for English! By transcribing what you hear, you not only train your ears to catch difficult words, but you also learn how to write those words correctly.&lt;/p&gt;

&lt;p&gt;You might be thinking, "Transcribing English is hard and takes so much time!" I get it. Normally, you'd have to download audio, use a special program to listen and replay, and then check if you wrote everything correctly. It can be exhausting! But with &lt;strong&gt;Hocify&lt;/strong&gt;, you don't need any fancy stuff. Just find a text you like, copy, and paste it. &lt;strong&gt;Hocify&lt;/strong&gt; will help you transcribe with a standard American accent right away.&lt;/p&gt;

&lt;p&gt;Oh, and one more thing! Make sure to use &lt;strong&gt;Hocify&lt;/strong&gt; with &lt;strong&gt;Microsoft Edge&lt;/strong&gt; on &lt;strong&gt;Windows&lt;/strong&gt;, &lt;strong&gt;Mac&lt;/strong&gt;, or &lt;strong&gt;Linux&lt;/strong&gt; for the best experience.&lt;/p&gt;

&lt;p&gt;Using &lt;strong&gt;Hocify&lt;/strong&gt; to transcribe doesn't just improve your listening, but it also helps with your pronunciation. It's like hitting two birds with one stone! You'll become a pro in understanding and speaking English in no time. Unlike passive listening methods, active listening through transcribing helps you truly understand how a word is pronounced and spelled.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hocify&lt;/strong&gt; makes the whole learning process smooth and enjoyable, just like playing a game without any pressure. Give &lt;strong&gt;Hocify&lt;/strong&gt; a try! You won't regret it. Have fun learning and improving your listening skills with &lt;strong&gt;Hocify&lt;/strong&gt;!&lt;/p&gt;

&lt;p&gt;Click here to start transcribing in English with &lt;strong&gt;Hocify&lt;/strong&gt;: &lt;a href="https://www.hocify.com/transcribe"&gt;https://www.hocify.com/transcribe&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
