<?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: UnionForever</title>
    <description>The latest articles on DEV Community by UnionForever (@union_forever).</description>
    <link>https://dev.to/union_forever</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%2F2279399%2F531c36a0-7513-4544-a19d-dfd14a703440.png</url>
      <title>DEV Community: UnionForever</title>
      <link>https://dev.to/union_forever</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/union_forever"/>
    <language>en</language>
    <item>
      <title>AI-slop has flooded the template market</title>
      <dc:creator>UnionForever</dc:creator>
      <pubDate>Sun, 28 Dec 2025 05:03:11 +0000</pubDate>
      <link>https://dev.to/union_forever/ai-slop-has-flooded-the-template-market-f20</link>
      <guid>https://dev.to/union_forever/ai-slop-has-flooded-the-template-market-f20</guid>
      <description>&lt;p&gt;Recently, I was sourcing e-commerce templates for a client and ran into a frustrating reality:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Expensive, locked-down ecosystems like Shopify&lt;/strong&gt;, which make customization painful and tie you into their platform.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Broken AI-generated templates&lt;/strong&gt;, which promise a lot but fail on basic accessibility, performance, or even just working correctly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Frustrated with these limitations, I decided to build something better: Estrocom, an e-commerce template built with Astro, Tailwind, and TypeScript. My goal was simple: a template that’s fast, fully accessible, SEO-friendly, and mobile-first, while still being easy to customize and extend.&lt;/p&gt;

&lt;p&gt;You can check out the live demo here:&lt;br&gt;&lt;br&gt;
&lt;a href="https://estrocom.netlify.app" rel="noopener noreferrer"&gt;&lt;strong&gt;https://estrocom.netlify.app&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Or browse the source code on GitHub:&lt;br&gt;&lt;br&gt;
&lt;a href="https://github.com/VBproDev/estrocom" rel="noopener noreferrer"&gt;&lt;strong&gt;https://github.com/VBproDev/estrocom&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What Makes Estrocom Different
&lt;/h2&gt;

&lt;p&gt;Here’s why I think this template is worth checking out:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Accessibility:&lt;/strong&gt; Every page passes WCAG AA standards. I ran Axe and Lighthouse tests, and the template came out with 0 accessibility issues, maintaining AA color contrast and semantic HTML.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Performance:&lt;/strong&gt; Sub-1-second load times and strong Lighthouse scores across performance, best practices, and SEO metrics.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Mobile-First:&lt;/strong&gt; Designed from the ground up for mobile, it works smoothly on screens as small as 360px and scales seamlessly to large desktops.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Atomic Design:&lt;/strong&gt; Components follow the Atoms → Molecules → Organisms pattern, making it easy to scale, maintain, and reuse code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Full Shopping Flow:&lt;/strong&gt; Integrated cart functionality, product categories, and dynamic product pages out-of-the-box.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;SEO-Ready:&lt;/strong&gt; Includes JSON-LD schema for products and an automatically generated sitemap to help search engines index your site properly.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  How You Can Use It
&lt;/h2&gt;

&lt;p&gt;Estrocom is config-driven, so getting started is simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add your products by editing &lt;code&gt;src/utils/productData.js&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Replace placeholder images in &lt;code&gt;public/assets/&lt;/code&gt; with your own.&lt;/li&gt;
&lt;li&gt;Update categories and product pages by editing the frontmatter in &lt;code&gt;src/pages/category/&lt;/code&gt; and &lt;code&gt;src/pages/products/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Customize the homepage at &lt;code&gt;src/pages/index.astro&lt;/code&gt; to tell your brand story.&lt;/li&gt;
&lt;li&gt;Adjust theme colors and typography by updating &lt;code&gt;src/design-system/colors.js&lt;/code&gt;, &lt;code&gt;sizing.js&lt;/code&gt;, and &lt;code&gt;typography.js&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This makes it easy to get a fully functional, production-ready store without starting from scratch.&lt;/p&gt;




&lt;h2&gt;
  
  
  Lessons Learned
&lt;/h2&gt;

&lt;p&gt;Building Estrocom reinforced a few key lessons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Performance matters more than bells and whistles. A template that loads fast keeps users engaged and improves SEO.&lt;/li&gt;
&lt;li&gt;Accessibility isn’t optional. Testing with Axe and following WCAG guidelines ensures your store is usable for everyone.&lt;/li&gt;
&lt;li&gt;Atomic Design scales. Structuring components properly makes future updates painless.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;If you’re a developer, founder, or small business looking for a fast, accessible, and flexible e-commerce solution, Estrocom is a strong starting point.&lt;/p&gt;

&lt;p&gt;Check it out, fork it, or contribute:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://estrocom.netlify.app" rel="noopener noreferrer"&gt;&lt;strong&gt;Live demo&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/VBproDev/estrocom" rel="noopener noreferrer"&gt;&lt;strong&gt;Source code&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>astro</category>
      <category>lowcode</category>
      <category>a11y</category>
    </item>
    <item>
      <title>I think this is a good replacement to rough.js</title>
      <dc:creator>UnionForever</dc:creator>
      <pubDate>Tue, 10 Dec 2024 10:55:52 +0000</pubDate>
      <link>https://dev.to/union_forever/i-think-this-is-a-good-replacement-to-roughjs-58jf</link>
      <guid>https://dev.to/union_forever/i-think-this-is-a-good-replacement-to-roughjs-58jf</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/union_forever" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F2279399%2F531c36a0-7513-4544-a19d-dfd14a703440.png" alt="union_forever"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/union_forever/never-code-lines-on-the-html-canvas-again-4hbe" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Never code lines on the HTML canvas again&lt;/h2&gt;
      &lt;h3&gt;UnionForever ・ Dec 10 '24&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#html&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#gamedev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#javascript&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#powerfuldevs&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Never code lines on the HTML canvas again</title>
      <dc:creator>UnionForever</dc:creator>
      <pubDate>Tue, 10 Dec 2024 10:46:13 +0000</pubDate>
      <link>https://dev.to/union_forever/never-code-lines-on-the-html-canvas-again-4hbe</link>
      <guid>https://dev.to/union_forever/never-code-lines-on-the-html-canvas-again-4hbe</guid>
      <description>&lt;p&gt;Would you like to spend your morning, afternoon and evening coding this with Rough.js, or worse, writing this with the canvas API?&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%2Fs47idgpqut6fce7xsaz3.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%2Fs47idgpqut6fce7xsaz3.png" alt="A map of the US drawn roughly" width="800" height="458"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;or would you like to draw this in… &lt;strong&gt;30 minutes&lt;/strong&gt; without writing code?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/VBproDev/Canvascript" rel="noopener noreferrer"&gt;Canvascript&lt;/a&gt; is an open source no code tool to make sure that you do not waste your time on writing code and tracking coordinates for doing something as creative as creating graphics for the canvas.&lt;/p&gt;

&lt;p&gt;Simply draw your graphics, then click on the generate code button to get the code that renders your graphic on the HTML canvas&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%2Fyl50ppefqmj8qy1bzm92.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%2Fyl50ppefqmj8qy1bzm92.png" alt="Why did I need to draw whatever this is?" width="800" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can draw straight lines, curved lines and even freehand.&lt;/p&gt;

&lt;p&gt;You can control the color and width of your brush.&lt;/p&gt;

&lt;p&gt;You can redo, undo and save your drawings.&lt;/p&gt;

&lt;p&gt;You can test your graphics on multiple resolutions.&lt;/p&gt;

&lt;p&gt;You can even import and export drawings if you want to edit someone else’s graphic&lt;/p&gt;

&lt;p&gt;Hell, with some modifications to the source code, you can even make 3D drawings that render on the HTML canvas&lt;/p&gt;

&lt;p&gt;All without writing a single line of code&lt;/p&gt;

&lt;p&gt;Why the HTML canvas? because that’s the only standard on the web that’s performant and mobile friendly enough for web game devs. That makes it a tool for web game devs, in fact the repository’s main page makes that quite clear, but it can be useful to anyone making graphics that render fast and on mobile&lt;/p&gt;

&lt;p&gt;You don’t have to install or download anything, you can open CS right by going to their &lt;a href="https://github.com/VBproDev/Canvascript" rel="noopener noreferrer"&gt;repository on Github&lt;/a&gt; and clicking on their app’s link&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;                                    ***
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;This is my first blog on writing about such amazing and underated open source projects for web game and frontend devs.&lt;/p&gt;

&lt;p&gt;An underated project is a project is one which has &amp;lt; 50 stars and &amp;lt; 10 forks&lt;/p&gt;

&lt;p&gt;Do you have any thoughts about this story? do you know or own any hidden gems? Let me know below&lt;/p&gt;

&lt;p&gt;﻿&lt;/p&gt;

</description>
      <category>html</category>
      <category>gamedev</category>
      <category>javascript</category>
      <category>powerfuldevs</category>
    </item>
    <item>
      <title>Draw on the HTML canvas without code</title>
      <dc:creator>UnionForever</dc:creator>
      <pubDate>Sun, 27 Oct 2024 07:08:58 +0000</pubDate>
      <link>https://dev.to/union_forever/draw-on-the-html-canvas-without-code-1e9o</link>
      <guid>https://dev.to/union_forever/draw-on-the-html-canvas-without-code-1e9o</guid>
      <description>&lt;p&gt;I was recently creating a web game. Now, while creating graphics for this game (characters, map etc), I saw that under the &lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API" rel="noopener noreferrer"&gt;HTML canvas API&lt;/a&gt;, drawing even a single line took 4 lines of code-&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ctx.beginPath();
ctx.moveTo(100, 150);
ctx.lineTo(100, 200);
ctx.stroke();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I knew that things like mapping out coordinates and rewriting repeated methods can easily be done by a no-code tool. This led to the creation of     &lt;a href="https://github.com/VBproDev/Canvascript/" rel="noopener noreferrer"&gt;Canvascript&lt;/a&gt;. It's a open source tool whose purpose is to speed up the time it takes to create web game graphics.&lt;/p&gt;

&lt;p&gt;Using it is simple, draw on the canvas, then click on the generate button to get the code to render the design on the actual HTML canvas. You can use the tool &lt;a href="https://github.com/VBproDev/Canvascript/" rel="noopener noreferrer"&gt;here&lt;/a&gt;. We also have a &lt;a href="https://discord.gg/ZXMEkzfZXx" rel="noopener noreferrer"&gt;Discord&lt;/a&gt; server btw. &lt;/p&gt;

&lt;p&gt;What do you think about this? any feedback or suggestions?&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>powerfuldevs</category>
      <category>html</category>
      <category>design</category>
    </item>
  </channel>
</rss>
