<?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: Taylorjojo</title>
    <description>The latest articles on DEV Community by Taylorjojo (@taylorjojo).</description>
    <link>https://dev.to/taylorjojo</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%2F4104808%2F59ad5c1b-a45b-4388-9629-7988f7524d4d.png</url>
      <title>DEV Community: Taylorjojo</title>
      <link>https://dev.to/taylorjojo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/taylorjojo"/>
    <language>en</language>
    <item>
      <title>How to Create a Consistent AI-Generated Coloring Book</title>
      <dc:creator>Taylorjojo</dc:creator>
      <pubDate>Wed, 02 Sep 2026 15:30:53 +0000</pubDate>
      <link>https://dev.to/taylorjojo/how-to-create-a-consistent-ai-generated-coloring-book-2m55</link>
      <guid>https://dev.to/taylorjojo/how-to-create-a-consistent-ai-generated-coloring-book-2m55</guid>
      <description>&lt;p&gt;Creating one AI-generated illustration is easy. Creating an entire coloring book that feels like one coherent product is much harder.&lt;/p&gt;

&lt;p&gt;When every page is generated separately, the result often looks like a random collection of images. Line thickness changes, characters look different, backgrounds become too detailed, and the difficulty level varies from page to page.&lt;/p&gt;

&lt;p&gt;A better workflow begins with planning the book as a complete project rather than generating isolated images.&lt;/p&gt;

&lt;p&gt;In this guide, we will look at how to plan, generate, review, and export a consistent AI coloring book.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Define the Book Before Generating Images
&lt;/h2&gt;

&lt;p&gt;Start by writing a short creative brief.&lt;/p&gt;

&lt;p&gt;Your brief should answer five questions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Who is the book for?&lt;/li&gt;
&lt;li&gt;What is the main theme?&lt;/li&gt;
&lt;li&gt;How many pages will it contain?&lt;/li&gt;
&lt;li&gt;How detailed should the illustrations be?&lt;/li&gt;
&lt;li&gt;What visual rules should every page follow?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Here is a simple example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Title: Milo’s Space Adventure
Audience: Children ages 5–8
Length: 10 pages
Theme: A friendly cat exploring space
Difficulty: Easy
Style: Bold black outlines, large coloring spaces, simple backgrounds,
no shading, and no solid black areas
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This shared direction helps the generated pages feel like parts of the same book.&lt;/p&gt;

&lt;p&gt;Without it, an AI model may interpret every prompt differently.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Plan a Page Sequence
&lt;/h2&gt;

&lt;p&gt;A coloring book benefits from variety, but every page should still support the same theme.&lt;/p&gt;

&lt;p&gt;For a ten-page space-themed book, the page plan might look like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cover page with Milo and a small rocket&lt;/li&gt;
&lt;li&gt;Milo preparing for launch&lt;/li&gt;
&lt;li&gt;The rocket leaving Earth&lt;/li&gt;
&lt;li&gt;Milo floating inside the spacecraft&lt;/li&gt;
&lt;li&gt;Landing on the Moon&lt;/li&gt;
&lt;li&gt;Meeting a friendly alien&lt;/li&gt;
&lt;li&gt;Collecting unusual space rocks&lt;/li&gt;
&lt;li&gt;Driving a lunar rover&lt;/li&gt;
&lt;li&gt;Watching planets through a telescope&lt;/li&gt;
&lt;li&gt;Returning home&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This sequence gives the book a sense of progression while creating a different coloring activity on every page.&lt;/p&gt;

&lt;p&gt;Even when the book does not tell a traditional story, planning the sequence helps prevent repetitive scenes.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Create a Visual Style Guide
&lt;/h2&gt;

&lt;p&gt;AI image generators need repeated visual instructions.&lt;/p&gt;

&lt;p&gt;A simple style guide can include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Black-and-white line art&lt;/li&gt;
&lt;li&gt;White background&lt;/li&gt;
&lt;li&gt;Consistent line weight&lt;/li&gt;
&lt;li&gt;Large, closed coloring areas&lt;/li&gt;
&lt;li&gt;Minimal texture&lt;/li&gt;
&lt;li&gt;No grayscale or shadows&lt;/li&gt;
&lt;li&gt;No solid black backgrounds&lt;/li&gt;
&lt;li&gt;Portrait page composition&lt;/li&gt;
&lt;li&gt;Clear separation between foreground and background&lt;/li&gt;
&lt;li&gt;Age-appropriate detail&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Include these rules in every page prompt.&lt;/p&gt;

&lt;p&gt;For younger children, request thick outlines, simple shapes, and open spaces. For adults, the illustrations can include finer lines, patterns, and more complex backgrounds.&lt;/p&gt;

&lt;p&gt;Consistency does not mean every page must look identical. It means the pages should follow the same visual system.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Keep Recurring Characters Recognizable
&lt;/h2&gt;

&lt;p&gt;Recurring characters are one of the most difficult parts of an AI-generated book.&lt;/p&gt;

&lt;p&gt;Do not describe the main character only as “a cute cat.” Create a reusable character description instead:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Milo is a small, friendly cat with round ears, a striped tail,
a star-shaped badge, and a simple spacesuit.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Copy the essential description into every prompt in which Milo appears.&lt;/p&gt;

&lt;p&gt;Keep these details stable:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Species or character type&lt;/li&gt;
&lt;li&gt;Body shape&lt;/li&gt;
&lt;li&gt;Clothing&lt;/li&gt;
&lt;li&gt;Accessories&lt;/li&gt;
&lt;li&gt;Distinctive marks&lt;/li&gt;
&lt;li&gt;Relative size&lt;/li&gt;
&lt;li&gt;Facial style&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Avoid changing important character details from one page to another. Small prompt changes can produce a completely different character.&lt;/p&gt;

&lt;p&gt;It is also helpful to review the complete page plan before generating anything. Fixing inconsistencies at the planning stage is faster than regenerating finished artwork.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Write Prompts for Coloring, Not for Finished Artwork
&lt;/h2&gt;

&lt;p&gt;A prompt that produces a beautiful full-color illustration may not produce a good coloring page.&lt;/p&gt;

&lt;p&gt;Instead of requesting cinematic lighting, realistic textures, dramatic shadows, or complex scenery, describe the properties required for printing and coloring.&lt;/p&gt;

&lt;p&gt;For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;A printable black-and-white coloring book page of Milo, a small cat
with round ears, a striped tail, and a star-shaped badge, driving a
simple lunar rover on the Moon. Bold clean outlines, large closed
coloring spaces, simple crater background, no shading, no grayscale,
no text, no border, and no solid black areas.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The prompt defines four things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The recurring character&lt;/li&gt;
&lt;li&gt;The activity on this page&lt;/li&gt;
&lt;li&gt;The important background elements&lt;/li&gt;
&lt;li&gt;The shared coloring-book style&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That structure can be reused throughout the book.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Generate From a Coordinated Book Plan
&lt;/h2&gt;

&lt;p&gt;Managing dozens of prompts manually can become repetitive. A dedicated &lt;a href="https://coloringstore.com/ai-coloring-book-generator" rel="noopener noreferrer"&gt;AI coloring book generator&lt;/a&gt; can help organize the process as one project.&lt;/p&gt;

&lt;p&gt;ColoringStore lets creators define the title, theme, audience, difficulty, and page count before generating a coordinated page plan. The planned scenes can be reviewed and edited before image generation, which is useful for catching repetitive ideas or inconsistent character descriptions early.&lt;/p&gt;

&lt;p&gt;Instead of treating every image as a separate task, the workflow keeps the pages connected to the same book concept and visual direction.&lt;/p&gt;

&lt;p&gt;You can generate 5, 10, 20, or 30 pages, review the results, replace individual pages, reorder the approved pages, and export the final sequence as a printable PDF.&lt;/p&gt;

&lt;p&gt;This is especially helpful when one page needs revision. You can correct that page without rebuilding the entire book.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. Review Every Page as Part of the Book
&lt;/h2&gt;

&lt;p&gt;Do not evaluate pages only as individual images.&lt;/p&gt;

&lt;p&gt;After generation, view them together and check:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Does the main character remain recognizable?&lt;/li&gt;
&lt;li&gt;Is the line weight reasonably consistent?&lt;/li&gt;
&lt;li&gt;Are any pages much more detailed than the others?&lt;/li&gt;
&lt;li&gt;Are there repeated compositions?&lt;/li&gt;
&lt;li&gt;Is every scene clearly connected to the theme?&lt;/li&gt;
&lt;li&gt;Are important shapes closed and easy to color?&lt;/li&gt;
&lt;li&gt;Are there unwanted words, signatures, or artifacts?&lt;/li&gt;
&lt;li&gt;Does the sequence feel balanced?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A visually attractive page may still need to be replaced if it does not fit the rest of the book.&lt;/p&gt;

&lt;p&gt;Reviewing thumbnails side by side is one of the fastest ways to spot inconsistencies.&lt;/p&gt;

&lt;h2&gt;
  
  
  8. Prepare the Book for Printing
&lt;/h2&gt;

&lt;p&gt;Before exporting, decide on a final page size.&lt;/p&gt;

&lt;p&gt;Two common options are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A4 for home, school, and international printing&lt;/li&gt;
&lt;li&gt;US Letter for North American printing and many printable products&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Keep important artwork away from page edges and check whether your printer or publishing platform requires margins or bleed.&lt;/p&gt;

&lt;p&gt;For coloring pages, single-sided printing is often preferable because markers may bleed through the paper.&lt;/p&gt;

&lt;p&gt;Exporting the pages as one ordered PDF makes the book easier to review, share, and print. Before publishing commercially, check image originality, usage rights, page margins, cover requirements, and the current rules of the platform you plan to use.&lt;/p&gt;

&lt;h2&gt;
  
  
  9. Start With a Small Test Book
&lt;/h2&gt;

&lt;p&gt;Do not begin with a 50-page project.&lt;/p&gt;

&lt;p&gt;A five- or ten-page book is enough to test:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prompt structure&lt;/li&gt;
&lt;li&gt;Character consistency&lt;/li&gt;
&lt;li&gt;Illustration complexity&lt;/li&gt;
&lt;li&gt;Print quality&lt;/li&gt;
&lt;li&gt;Audience response&lt;/li&gt;
&lt;li&gt;PDF layout&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Print several pages yourself. Lines that look clear on a large monitor may become too thin or crowded on paper.&lt;/p&gt;

&lt;p&gt;Once the visual rules work reliably, expand the idea into a longer book or a themed series.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;The quality of an AI-generated coloring book depends less on generating a perfect first image and more on managing the complete workflow.&lt;/p&gt;

&lt;p&gt;Define the audience, plan the page sequence, create reusable character descriptions, establish visual rules, and review every illustration in context.&lt;/p&gt;

&lt;p&gt;AI can accelerate image creation, but planning is what turns a folder of unrelated pictures into a coherent, printable coloring book.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>tutorial</category>
      <category>design</category>
      <category>productivity</category>
    </item>
    <item>
      <title>I Built a Browser-Based Tool That Turns Photos Into Cross-Stitch Patterns</title>
      <dc:creator>Taylorjojo</dc:creator>
      <pubDate>Tue, 01 Sep 2026 17:11:41 +0000</pubDate>
      <link>https://dev.to/taylorjojo/i-built-a-browser-based-tool-that-turns-photos-into-cross-stitch-patterns-el</link>
      <guid>https://dev.to/taylorjojo/i-built-a-browser-based-tool-that-turns-photos-into-cross-stitch-patterns-el</guid>
      <description>&lt;p&gt;Turning a photo into a usable cross-stitch pattern sounds simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Resize the image&lt;/li&gt;
&lt;li&gt;Reduce the number of colors&lt;/li&gt;
&lt;li&gt;Draw a grid&lt;/li&gt;
&lt;li&gt;Export the result&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;But I quickly discovered that a visually recognizable image is not necessarily a practical pattern.&lt;/p&gt;

&lt;p&gt;A usable cross-stitch chart also needs a manageable color palette, readable symbols, material estimates, sensible dimensions, and as few isolated “confetti” stitches as possible.&lt;/p&gt;

&lt;p&gt;That challenge led me to build &lt;strong&gt;PhotoToPattern&lt;/strong&gt;, a free browser-based tool that converts photos into printable cross-stitch patterns.&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://phototopattern.com/designer?utm_source=devto&amp;amp;utm_medium=post&amp;amp;utm_campaign=showdev" rel="noopener noreferrer"&gt;Try PhotoToPattern&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What the tool does
&lt;/h2&gt;

&lt;p&gt;Users can upload a JPG, PNG, or WebP image and adjust:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stitch-grid width&lt;/li&gt;
&lt;li&gt;Maximum number of colors&lt;/li&gt;
&lt;li&gt;Fabric count&lt;/li&gt;
&lt;li&gt;Number of thread strands&lt;/li&gt;
&lt;li&gt;Brightness, contrast, and saturation&lt;/li&gt;
&lt;li&gt;Image crop&lt;/li&gt;
&lt;li&gt;Background removal&lt;/li&gt;
&lt;li&gt;Speckle-cleanup strength&lt;/li&gt;
&lt;li&gt;Included or excluded DMC colors&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The generated result includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A color preview&lt;/li&gt;
&lt;li&gt;A printable symbol chart&lt;/li&gt;
&lt;li&gt;DMC floss codes&lt;/li&gt;
&lt;li&gt;Stitch counts&lt;/li&gt;
&lt;li&gt;Estimated skein quantities&lt;/li&gt;
&lt;li&gt;Finished-size estimates&lt;/li&gt;
&lt;li&gt;Pattern difficulty and estimated stitching time&lt;/li&gt;
&lt;li&gt;PDF, PNG, and CSV exports&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No account is required.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keeping image processing in the browser
&lt;/h2&gt;

&lt;p&gt;One of my main design decisions was to process uploaded images locally.&lt;/p&gt;

&lt;p&gt;Photos can be personal, so uploading every image to a server felt unnecessary. The browser already provides the APIs needed to decode, resize, sample, and render images.&lt;/p&gt;

&lt;p&gt;The basic pipeline looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Uploaded image
      ↓
Crop and image adjustments
      ↓
Canvas-based pixel sampling
      ↓
Perceptual color reduction
      ↓
DMC palette matching
      ↓
Speckle cleanup
      ↓
Symbol and material generation
      ↓
PNG / PDF / CSV export
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Because the conversion happens locally, the original image does not need to leave the user’s device.&lt;/p&gt;

&lt;p&gt;It also reduces server-side storage and processing requirements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Matching pixels to real thread colors
&lt;/h2&gt;

&lt;p&gt;A cross-stitch pattern cannot use arbitrary RGB values. Each color needs to correspond to thread that someone can actually buy.&lt;/p&gt;

&lt;p&gt;The tool therefore maps sampled image colors to a DMC floss palette.&lt;/p&gt;

&lt;p&gt;Simple RGB distance produced some noticeably incorrect matches, especially around muted colors and similar shades. I switched to perceptual color comparison using LAB color space and CIEDE2000.&lt;/p&gt;

&lt;p&gt;In simplified form:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;matchedColor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;findNearestPaletteColor&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
  &lt;span class="nx"&gt;sourceColor&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;palette&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;dmcColors&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;algorithm&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;ciede2000&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is more computationally expensive than basic RGB distance, but it generally produces matches that are closer to how people perceive color differences.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reducing colors without losing the subject
&lt;/h2&gt;

&lt;p&gt;Using too many colors makes a photo pattern expensive and difficult to stitch. Using too few can remove important details.&lt;/p&gt;

&lt;p&gt;Instead of treating every pixel color equally, the palette reduction needs to preserve colors that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cover significant areas&lt;/li&gt;
&lt;li&gt;Help separate the subject from the background&lt;/li&gt;
&lt;li&gt;Represent visually distinct regions&lt;/li&gt;
&lt;li&gt;Are important to the overall composition&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The user can choose a maximum palette size and exclude specific DMC colors before rebuilding the chart.&lt;/p&gt;

&lt;p&gt;This makes the result editable instead of presenting the first generated output as the final answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  The confetti-stitch problem
&lt;/h2&gt;

&lt;p&gt;Photo conversions often create isolated pixels surrounded by unrelated colors. Stitchers commonly call these “confetti stitches.”&lt;/p&gt;

&lt;p&gt;They may improve pixel-level similarity, but they make a physical project much more frustrating.&lt;/p&gt;

&lt;p&gt;PhotoToPattern includes adjustable cleanup that replaces small isolated regions with suitable neighboring colors.&lt;/p&gt;

&lt;p&gt;The interesting lesson here was that optimizing for image accuracy and optimizing for usability are not the same thing.&lt;/p&gt;

&lt;p&gt;A slightly less accurate preview can produce a much better pattern.&lt;/p&gt;

&lt;h2&gt;
  
  
  Rendering readable charts
&lt;/h2&gt;

&lt;p&gt;A complete pattern may contain thousands of cells, so rendering it as regular React elements would create a large DOM.&lt;/p&gt;

&lt;p&gt;Canvas is a better fit for the grid and preview:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It handles dense cell rendering efficiently&lt;/li&gt;
&lt;li&gt;Zooming and panning do not require thousands of elements&lt;/li&gt;
&lt;li&gt;The same rendering logic can support previews and exports&lt;/li&gt;
&lt;li&gt;Large charts can be divided into readable tiles&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each DMC color is also assigned a symbol, so the printed chart does not depend on color alone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exporting something people can actually use
&lt;/h2&gt;

&lt;p&gt;Generating an attractive preview is only half of the product.&lt;/p&gt;

&lt;p&gt;The PDF export includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pattern dimensions&lt;/li&gt;
&lt;li&gt;Fabric and strand settings&lt;/li&gt;
&lt;li&gt;Finished-size estimates&lt;/li&gt;
&lt;li&gt;Color preview&lt;/li&gt;
&lt;li&gt;DMC material list&lt;/li&gt;
&lt;li&gt;Full-chart reference&lt;/li&gt;
&lt;li&gt;Tiled symbol-chart pages&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Users can also download individual PNG files or a CSV material list.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I learned
&lt;/h2&gt;

&lt;p&gt;The biggest lesson was that converting an image into a craft pattern is a constraint problem, not just an image-filter problem.&lt;/p&gt;

&lt;p&gt;The output has to balance:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Visual similarity&lt;/li&gt;
&lt;li&gt;Number of colors&lt;/li&gt;
&lt;li&gt;Physical material availability&lt;/li&gt;
&lt;li&gt;Chart readability&lt;/li&gt;
&lt;li&gt;Stitching difficulty&lt;/li&gt;
&lt;li&gt;Export quality&lt;/li&gt;
&lt;li&gt;User privacy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There is still plenty I want to improve, particularly around palette optimization, background separation, and making complex photos easier for beginners.&lt;/p&gt;

&lt;p&gt;You can try the current version here:&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://phototopattern.com/?utm_source=devto&amp;amp;utm_medium=post&amp;amp;utm_campaign=showdev" rel="noopener noreferrer"&gt;PhotoToPattern — Free Photo to Cross-Stitch Pattern Maker&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I would especially appreciate feedback on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Whether the generated charts are easy to read&lt;/li&gt;
&lt;li&gt;Which editing controls are missing&lt;/li&gt;
&lt;li&gt;Whether the DMC color matches feel accurate&lt;/li&gt;
&lt;li&gt;What other craft-pattern formats would be useful&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for taking a look!&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>react</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
