<?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: Morse</title>
    <description>The latest articles on DEV Community by Morse (@dev365365).</description>
    <link>https://dev.to/dev365365</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4039040%2F1f6dd2c6-1340-4d94-b49b-f78c0c49fabc.png</url>
      <title>DEV Community: Morse</title>
      <link>https://dev.to/dev365365</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dev365365"/>
    <language>en</language>
    <item>
      <title>Generate Excel Files with a Specified Number of Rows (WASM + Web Worker Best Practice!)</title>
      <dc:creator>Morse</dc:creator>
      <pubDate>Tue, 21 Jul 2026 14:18:32 +0000</pubDate>
      <link>https://dev.to/dev365365/generate-excel-files-with-a-specified-number-of-rows-wasm-web-worker-best-practice-58nj</link>
      <guid>https://dev.to/dev365365/generate-excel-files-with-a-specified-number-of-rows-wasm-web-worker-best-practice-58nj</guid>
      <description>&lt;p&gt;If you've ever needed to create a large Excel file for testing, benchmarking, demos, or importing data, you probably know how slow browser-based generators can become.&lt;/p&gt;

&lt;p&gt;I built a free online tool that lets you generate Excel files with any number of rows directly in your browser:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://it365.janqi.com/generate-excel-file-with-specified-number-of-rows/en/" rel="noopener noreferrer"&gt;Generate Excel Files with a Specified Number of Rows&lt;/a&gt;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F83sglrfs13dnp03rx0li.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F83sglrfs13dnp03rx0li.png" alt=" " width="800" height="740"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No installation. No signup. Everything runs locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why build another Excel generator?
&lt;/h2&gt;

&lt;p&gt;Many online generators have limitations:&lt;/p&gt;

&lt;p&gt;Slow when generating large files&lt;br&gt;
UI freezes during generation&lt;br&gt;
Limited customization&lt;br&gt;
Data uploaded to servers&lt;/p&gt;

&lt;p&gt;I wanted something that could generate very large Excel files while keeping the browser responsive.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;p&gt;The tool supports:&lt;/p&gt;

&lt;p&gt;Generate Excel files with a specified number of rows&lt;br&gt;
Custom data generation rules&lt;br&gt;
Configure columns freely&lt;br&gt;
Generate files containing millions of rows&lt;br&gt;
Fast download after generation&lt;br&gt;
Completely free&lt;br&gt;
Runs entirely in your browser&lt;/p&gt;

&lt;p&gt;Whether you're testing import performance, stress testing an application, or creating sample datasets, it can save a lot of time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Behind the scenes: WebAssembly + Web Worker
&lt;/h2&gt;

&lt;p&gt;The interesting part isn't the UI—it's the architecture.&lt;/p&gt;

&lt;p&gt;WebAssembly for high-performance Excel generation&lt;/p&gt;

&lt;p&gt;Instead of using a pure JavaScript implementation, the Excel generation engine is built with Go + Excelize and compiled to WebAssembly (WASM).&lt;/p&gt;

&lt;p&gt;This provides several advantages:&lt;/p&gt;

&lt;p&gt;Near-native execution speed&lt;br&gt;
Better performance for large workbooks&lt;br&gt;
Lower memory overhead than many JS libraries&lt;br&gt;
Reuse of a mature Excel library&lt;/p&gt;

&lt;p&gt;Generating hundreds of thousands or even millions of rows becomes much more practical.&lt;/p&gt;

&lt;h2&gt;
  
  
  Web Worker keeps the UI responsive
&lt;/h2&gt;

&lt;p&gt;Heavy Excel generation shouldn't block the main thread.&lt;/p&gt;

&lt;p&gt;The WASM module runs inside a Web Worker, so users can continue interacting with the page while the workbook is being generated.&lt;/p&gt;

&lt;p&gt;Benefits include:&lt;/p&gt;

&lt;p&gt;No frozen UI&lt;br&gt;
Better user experience&lt;br&gt;
Progress reporting&lt;br&gt;
Suitable for long-running tasks&lt;/p&gt;

&lt;p&gt;This combination of WebAssembly + Web Worker is one of the best patterns for CPU-intensive browser applications.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why not generate Excel on the server?
&lt;/h2&gt;

&lt;p&gt;Generating files directly in the browser has several benefits:&lt;/p&gt;

&lt;p&gt;No file uploads&lt;br&gt;
Better privacy&lt;br&gt;
No server-side computing cost&lt;br&gt;
Works even for very large datasets&lt;br&gt;
Scales naturally because computation happens on the client&lt;/p&gt;

&lt;p&gt;Modern browsers are powerful enough to handle workloads that previously required backend services.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use cases
&lt;/h2&gt;

&lt;p&gt;This tool is useful for:&lt;/p&gt;

&lt;p&gt;Excel/xlsx file Import testing&lt;br&gt;
Performance benchmarking&lt;br&gt;
Database migration testing&lt;br&gt;
QA testing&lt;br&gt;
Sample dataset generation&lt;br&gt;
Demo data creation&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;If you're looking for a free online Excel generator that can create large workbooks quickly, give it a try:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://it365.janqi.com/generate-excel-file-with-specified-number-of-rows/en/" rel="noopener noreferrer"&gt;free online Excel generator that can create large workbooks quickly&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm also interested in hearing how others are using WebAssembly for high-performance web applications.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>productivity</category>
      <category>web</category>
      <category>vibecoding</category>
    </item>
    <item>
      <title>Quickly Remove Empty Rows in Excel? WebAssembly Is a Great Fit</title>
      <dc:creator>Morse</dc:creator>
      <pubDate>Tue, 21 Jul 2026 03:02:03 +0000</pubDate>
      <link>https://dev.to/dev365365/quickly-remove-empty-rows-in-excel-webassembly-is-a-great-fit-3da8</link>
      <guid>https://dev.to/dev365365/quickly-remove-empty-rows-in-excel-webassembly-is-a-great-fit-3da8</guid>
      <description>&lt;p&gt;One of the most common Excel cleanup tasks is surprisingly simple:&lt;/p&gt;

&lt;p&gt;Remove all blank rows at the bottom of a worksheet.&lt;/p&gt;

&lt;p&gt;It sounds trivial until you need to process dozens of large spreadsheets without uploading them to a server.&lt;/p&gt;

&lt;p&gt;I recently built an online tool for exactly this task, and it turned out to be a perfect use case for WebAssembly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://it365.janqi.com/remove-blank-rows-in-excel-at-the-bottom/en/" rel="noopener noreferrer"&gt;remove empty rows in Excel (online with WebAssembly)&lt;/a&gt;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F73px7lmskgd6w8syl2e9.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F73px7lmskgd6w8syl2e9.png" alt=" " width="800" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Instead of reimplementing Excel parsing in JavaScript, I reused the excellent excelize library written in Go.&lt;/p&gt;

&lt;p&gt;By compiling it to WebAssembly, I can run the same Excel processing engine directly inside the browser.&lt;/p&gt;

&lt;p&gt;The advantages are obvious:&lt;/p&gt;

&lt;p&gt;🚀 Native-like performance&lt;br&gt;
🔒 Files never leave the user's computer&lt;br&gt;
📦 Reuse a mature Go library instead of maintaining another implementation&lt;br&gt;
💻 Works on Windows, macOS and Linux without installation&lt;/p&gt;

&lt;h2&gt;
  
  
  Processing Real Excel Files
&lt;/h2&gt;

&lt;p&gt;The tool loads standard Excel workbooks (.xlsx) and removes unnecessary blank rows at the bottom while preserving the workbook structure.&lt;/p&gt;

&lt;p&gt;Because the processing happens locally, there is:&lt;/p&gt;

&lt;p&gt;No file upload&lt;br&gt;
No waiting for a server&lt;br&gt;
No privacy concerns&lt;/p&gt;

&lt;p&gt;For many users, that's much more important than shaving a few milliseconds off execution time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Is a 4 MB WASM File Too Large?
&lt;/h2&gt;

&lt;p&gt;This is a question I asked myself before building it.&lt;/p&gt;

&lt;p&gt;The compiled excelize WebAssembly module is around 4 MB after gzip compression.&lt;/p&gt;

&lt;p&gt;While that sounds large compared to typical JavaScript bundles, it's actually acceptable for an application that performs heavy document processing.&lt;/p&gt;

&lt;p&gt;The module is downloaded only once and then cached by the browser.&lt;/p&gt;

&lt;p&gt;Considering it replaces a backend service and processes Excel files entirely offline, the trade-off is well worth it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Go + excelize?
&lt;/h2&gt;

&lt;p&gt;There are several JavaScript libraries for reading Excel files.&lt;/p&gt;

&lt;p&gt;However, excelize has been battle-tested for years and supports a large portion of the XLSX specification.&lt;/p&gt;

&lt;p&gt;Instead of reinventing complex spreadsheet logic in JavaScript, compiling the existing Go implementation to WebAssembly lets me reuse reliable production code.&lt;/p&gt;

&lt;p&gt;It's one of those situations where WebAssembly really shines.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try It Yourself
&lt;/h2&gt;

&lt;p&gt;If you often receive Excel files with hundreds (or thousands) of unnecessary blank rows at the bottom, you can try the tool here:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://it365.janqi.com/remove-blank-rows-in-excel-at-the-bottom/en/" rel="noopener noreferrer"&gt;Remove Blank Rows in Excel (Online)&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No installation.&lt;/p&gt;

&lt;p&gt;No uploads.&lt;/p&gt;

&lt;p&gt;Everything runs directly in your browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;p&gt;Go&lt;br&gt;
excelize&lt;br&gt;
WebAssembly (WASM)&lt;br&gt;
Runs completely in the browser&lt;/p&gt;

</description>
      <category>webassembly</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>web</category>
    </item>
  </channel>
</rss>
