<?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: Othman</title>
    <description>The latest articles on DEV Community by Othman (@othman2001).</description>
    <link>https://dev.to/othman2001</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%2F456685%2F750e11c7-7130-47a0-be0d-81eff83d19c8.jpeg</url>
      <title>DEV Community: Othman</title>
      <link>https://dev.to/othman2001</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/othman2001"/>
    <language>en</language>
    <item>
      <title>The Journey of building Print-On-Demand Editor</title>
      <dc:creator>Othman</dc:creator>
      <pubDate>Mon, 08 Aug 2022 17:40:00 +0000</pubDate>
      <link>https://dev.to/othman2001/the-journey-of-building-print-on-demand-editor-51jl</link>
      <guid>https://dev.to/othman2001/the-journey-of-building-print-on-demand-editor-51jl</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;This is not a technical article it is just will be an introduction to a list of technical articles about canvas and print-on-demand coding&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
Print-On-Demand, ...MMM nice topic and you can't find good posts about it, or even you will not find the post, and btw this post won't be the best post I will write in Print-On-Demand because I am intending to write more and more. This article is about a journey I started, and I am still on this journey, but I decided to share some of it with you. when talking about print-on-demand, you must be aware that you will use HTML 5 Canvas, well it is a little difficult but it is so fun to work with, you can learn the basics of canvas from &lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API"&gt;here&lt;/a&gt;.&lt;br&gt;
Let's break this article into subparts:&lt;/p&gt;

&lt;p&gt;&lt;u&gt;1. &lt;strong&gt;What is Print-on-demand-editor&lt;/strong&gt;&lt;/u&gt;&lt;br&gt;
print-on-demand is a platform where users can edit and customize their products (T-shirts - hoodies - mugs...etc.) I think the best example to know more about print-on-demand is &lt;a href="https://www.zazzle.com/"&gt;zazzle&lt;/a&gt; I think that Zazzle is offering the most advanced Print-on-demand editor. So To Build a product Editor, you need to think about some stuff: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;the products you are targeting&lt;/strong&gt; is your platform going to offer only clothes, so you will have to build a simple editor only. if you are targeting many complex products as Mugs then wow you will have to build a much more complex editor. 
&lt;u&gt;2. *&lt;em&gt;What are the best tools to use *&lt;/em&gt;&lt;/u&gt;
when I started this project, I had many tools that can help, for example:&lt;/li&gt;
&lt;li&gt;Fabric js &lt;a href="http://fabricjs.com/"&gt;docs&lt;/a&gt;: well, the fabric is the most famous canvas lib and it is a very good tool &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  2. Konva Js &lt;a href="https://konvajs.org/docs/index.html"&gt;docs&lt;/a&gt;: for the most. far after I have used many canvas libs this one is the best canvas tool I have ever used it has many out-of-box features
&lt;/h2&gt;

&lt;p&gt;so I had these two tools I can use one of them but then started to search for a ready design editor to integrate it with our tool, and I found &lt;a href="https://salgum1114.github.io/react-design-editor/"&gt;React-design-editor &lt;/a&gt;: React-design-editor is design editor and open source and I can easily change it to product editor (or that what I thought at first ). &lt;br&gt;
I cloned this tool and started working, and I faced some issues:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;the used React version is very old, and it has many detracted tools &lt;/li&gt;
&lt;li&gt;the documentation for this tool wasn't good at all
But that didn't stop me, I started to play around and converted the react-design-editor to a really basic editor for clothes: you can see this &lt;a href="https://drive.google.com/file/d/17OZVxv9v9yPVCkFML6Z8LWKjIGK09DLP/view?usp=sharing"&gt;video&lt;/a&gt;. was pretty good, and I was still improving it until I found a nice tool.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;3.&lt;strong&gt;&lt;em&gt;&lt;u&gt;the nice i tool i found was Poltono&lt;/u&gt;&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
Poltono Means Canvas in Russian you can view its docs from &lt;a href="https://polotno.com/"&gt;here&lt;/a&gt;. Poltono is built with canvas it offers SDK and studio editor(like react-design-editor) but is easy to integrate and customize. So I moved from React-design-editor and Fabric JS to Konva JS and Poltono and I moved poltono to this you can see the video from &lt;a href="https://drive.google.com/file/d/1TVGS-PgKSduAZYPedUdxjzMbbRjYSMaJ/view?usp=sharing"&gt;here&lt;/a&gt;and btw you can see poltono editor from here: &lt;br&gt;
&lt;a href="https://studio.polotno.com/"&gt;https://studio.polotno.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;i still have much to do to make this editor fully functional so wish me good luck&lt;/p&gt;

</description>
      <category>react</category>
      <category>javascript</category>
      <category>html</category>
    </item>
  </channel>
</rss>
