<?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: IndieDevr</title>
    <description>The latest articles on DEV Community by IndieDevr (@zaneryan).</description>
    <link>https://dev.to/zaneryan</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%2F1937087%2Fc0393cd6-e3fc-4b2e-84b6-465dec23c37d.jpeg</url>
      <title>DEV Community: IndieDevr</title>
      <link>https://dev.to/zaneryan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zaneryan"/>
    <language>en</language>
    <item>
      <title>Z-Image.vip – I Built a Free AI Image Generator in 24 Hours</title>
      <dc:creator>IndieDevr</dc:creator>
      <pubDate>Mon, 01 Dec 2025 15:12:57 +0000</pubDate>
      <link>https://dev.to/zaneryan/z-imagevip-i-built-a-free-ai-image-generator-in-24-hours-2f23</link>
      <guid>https://dev.to/zaneryan/z-imagevip-i-built-a-free-ai-image-generator-in-24-hours-2f23</guid>
      <description>&lt;p&gt;It was 2 AM. &lt;/p&gt;

&lt;p&gt;I couldn't sleep.I'd been watching Z-Image-Turbo blow up on Reddit — a new 6B parameter model from Alibaba that generates images in just 8 inference steps with accurate bilingual text rendering.I tried the Hugging Face Space. Queue was always packed.&lt;/p&gt;

&lt;p&gt;So I made a public bet on Reddit:&lt;br&gt;
"I'm building a free website for this in 48 hours. Livestream the whole thing. Roast me forever if I fail."&lt;/p&gt;

&lt;p&gt;24 hours later, it shipped.Here's exactly how I built it.&lt;br&gt;
The Tech StackFrontend:       &lt;/p&gt;

&lt;p&gt;Next.js (deployed on Vercel)&lt;br&gt;
Domain:         Cloudflare&lt;br&gt;
Storage:        Cloudflare R2&lt;br&gt;
Auth:           Google Auth + Email Auth&lt;br&gt;
Database:       PostgreSQL (Neon)&lt;br&gt;
ORM:            Prisma&lt;br&gt;
Realtime:       Upstash&lt;br&gt;
GPU Server:     RunPod + FastAPI + ComfyUI&lt;/p&gt;

&lt;p&gt;Nothing fancy. Just tools that work and ship fast.&lt;/p&gt;

&lt;p&gt;Hour by Hour Breakdown&lt;/p&gt;

&lt;p&gt;T+0: &lt;br&gt;
Get the Model RunningFirst priority — make sure the model actually works.Spun up a GPU server on RunPod, installed ComfyUI, loaded Z-Image-Turbo. Not optimized, but functional.&lt;/p&gt;

&lt;p&gt;T+1.5h:&lt;/p&gt;

&lt;p&gt;DomainBought z-image.vip on Cloudflare. $10.Don't overthink domain names. Just pick something and move.&lt;/p&gt;

&lt;p&gt;T+2h: Scaffold the ProjectDeployed a Next.js project to Vercel. We had templates ready, so this was quick.But honestly, with Claude Code or Cursor, anyone can do this now. The barrier to shipping has never been lower.&lt;/p&gt;

&lt;p&gt;T+4h: StylingGrabbed a theme from tweakcn.com — Tailwind CSS + shadcn/ui.Went with the Claude color scheme. Copy the CSS, paste into globals.css. Done.&lt;/p&gt;

&lt;p&gt;T+5h: Logo &amp;amp; CursorGenerated a logo with Seadream 4.0.Then I got distracted making custom cursor SVGs for light/dark mode. Small detail, but makes the site feel different.&lt;/p&gt;

&lt;p&gt;T+8h: Landing PageBuilt the full landing page:&lt;/p&gt;

&lt;p&gt;Navbar&lt;br&gt;
Hero section&lt;br&gt;
Features&lt;br&gt;
Pricing&lt;br&gt;
Testimonials&lt;br&gt;
CTA&lt;br&gt;
Footer&lt;/p&gt;

&lt;p&gt;Still using placeholder images at this point.&lt;/p&gt;

&lt;p&gt;T+9h: First DeploySite is live. Bugs everywhere. Main feature not working.But I was falling asleep at my keyboard. Took a nap.&lt;/p&gt;

&lt;p&gt;T+11h: The Hard PartThe complete image generation flow:User submits prompt&lt;br&gt;
    ↓&lt;br&gt;
Next.js API receives request&lt;br&gt;
    ↓&lt;br&gt;
Task queued to RunPod GPU&lt;br&gt;
    ↓&lt;br&gt;
ComfyUI generates image&lt;br&gt;
    ↓&lt;br&gt;
Callback to backend&lt;br&gt;
    ↓&lt;br&gt;
Upstash realtime pushes result to frontend&lt;br&gt;
    ↓&lt;br&gt;
User sees imageThis loop is where the magic happens. Getting all the pieces to talk to each other took the most time.&lt;/p&gt;

&lt;p&gt;T+12h: Bug Fixes&lt;br&gt;
Fixed mobile layout (waterfall wasn't scrolling)&lt;br&gt;
Added anonymous login (someone in comments asked for it)&lt;br&gt;
Wired up realtime status updates&lt;/p&gt;

&lt;p&gt;T+24h: DoneSite is live: &lt;a href="https://z-image.vip" rel="noopener noreferrer"&gt;https://z-image.vip&lt;/a&gt;&lt;br&gt;
Running on a single 4090. If traffic picks up, I'll add more machines.What I Learned1. Public accountability works.When you tell the internet you might fail publicly, you ship faster.2. AI coding tools are insane.I was running multiple projects simultaneously. Without Claude Code, I'd be cooked.3. Ship before it's perfect.The site had bugs. Images were placeholders. But it worked. That's what matters.4. Pick boring tech.Next.js, PostgreSQL, Cloudflare. Nothing experimental. When you're racing the clock, use what you know.&lt;/p&gt;

&lt;p&gt;What's Next&lt;br&gt;
More LoRA support&lt;br&gt;
Community gallery&lt;br&gt;
Open-sourcing the project&lt;/p&gt;

&lt;p&gt;Try ItSite: &lt;a href="https://z-image.vip" rel="noopener noreferrer"&gt;https://z-image.vip&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Original Reddit thread: &lt;a href="https://www.reddit.com/user/ShineficY/" rel="noopener noreferrer"&gt;reddit&lt;/a&gt;&lt;br&gt;
No login required for basic use.Built on caffeine and public accountability.&lt;br&gt;
If you're building something in public, I'd love to hear about it in the comments.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>nextjs</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>ai background remover online ,free and on signup</title>
      <dc:creator>IndieDevr</dc:creator>
      <pubDate>Thu, 23 Oct 2025 15:01:44 +0000</pubDate>
      <link>https://dev.to/zaneryan/ai-background-remover-online-free-and-on-signup-2mhd</link>
      <guid>https://dev.to/zaneryan/ai-background-remover-online-free-and-on-signup-2mhd</guid>
      <description>&lt;p&gt;It took me about a day to make ai-background-remover&lt;/p&gt;

&lt;p&gt;I’ve recently fallen in love with making gadgets, and it’s really fun&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sora2.to/ai-background-remover" rel="noopener noreferrer"&gt;https://sora2.to/ai-background-remover&lt;/a&gt; &lt;/p&gt;

</description>
    </item>
    <item>
      <title>xcards v0.0.3 injection card to your X</title>
      <dc:creator>IndieDevr</dc:creator>
      <pubDate>Wed, 21 Aug 2024 07:35:35 +0000</pubDate>
      <link>https://dev.to/zaneryan/xcards-v003-injection-card-to-your-x-3jdi</link>
      <guid>https://dev.to/zaneryan/xcards-v003-injection-card-to-your-x-3jdi</guid>
      <description>&lt;p&gt;&lt;a href="https://x-cards.net" rel="noopener noreferrer"&gt;https://x-cards.net&lt;/a&gt;&lt;br&gt;
The code was updated this week, mainly doing the following things.&lt;/p&gt;

&lt;p&gt;The library for generating images has been modified from dom-to-image to modern-screenshot. Modify image generation in web worker,&lt;/p&gt;

&lt;p&gt;Updated features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Added more control options&lt;/li&gt;
&lt;li&gt;Support adjusting image padding&lt;/li&gt;
&lt;li&gt;Supports adjusting the quality of generated images&lt;/li&gt;
&lt;li&gt;Supports adjusting font size&lt;/li&gt;
&lt;li&gt;Support control options, logo, header, footer display/hide&lt;/li&gt;
&lt;li&gt;Support md export&lt;/li&gt;
&lt;li&gt;Optimize the stuck issue when scrolling Twitter caused by plug-in.xcards v0.0.3&lt;/li&gt;
&lt;li&gt;The code was updated this week, mainly doing the following things.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>X Cards: Power Up Your Tweet Marketing on X.com</title>
      <dc:creator>IndieDevr</dc:creator>
      <pubDate>Fri, 16 Aug 2024 09:15:34 +0000</pubDate>
      <link>https://dev.to/zaneryan/x-cards-power-up-your-tweet-marketing-on-xcom-29j7</link>
      <guid>https://dev.to/zaneryan/x-cards-power-up-your-tweet-marketing-on-xcom-29j7</guid>
      <description>&lt;ul&gt;
&lt;li&gt;github:&lt;a href="https://github.com/hzeyuan/x-cards" rel="noopener noreferrer"&gt;https://github.com/hzeyuan/x-cards&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;website: &lt;a href="https://x-cards.net/" rel="noopener noreferrer"&gt;https://x-cards.net/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;x: &lt;a href="https://x.com/IndieDevr" rel="noopener noreferrer"&gt;https://x.com/IndieDevr&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  one year free
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://xcards.gumroad.com/l/x-cards/89pqsx8" rel="noopener noreferrer"&gt;https://xcards.gumroad.com/l/x-cards/89pqsx8&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  showtime
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://youtu.be/okCIZrFrTCE" rel="noopener noreferrer"&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%2Fzbbzdv9a25kmrsj39frd.jpg" alt="x-cards intro" width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;X Cards&lt;/h1&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%2Fr44rgnko0w314e1zyoeb.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%2Fr44rgnko0w314e1zyoeb.png" alt=" " width="624" height="791"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;easy to use x-cards in x.com&lt;/p&gt;

&lt;p&gt;⚡ &lt;strong&gt;X Cards&lt;/strong&gt; Share Tweet anywhere ,any format,&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Background
&lt;/h2&gt;

&lt;p&gt;X is a source of information for many platforms，So this project came into being&lt;/p&gt;

&lt;h2&gt;
  
  
  features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Added real-time preview feature, now a toast in the upper right corner allows you to observe the generated card.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Introduced customization for card background color.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Customizable card width.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Improved: Now clicking defaults to copying the image, rather than downloading the image.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fixed the issue of unable to fetch cover image for videos.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Added support for fetching continuous posts.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Enabled dynamic addition, deletion, dragging, and management of posts.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;



&lt;h2&gt;
  
  
  How to Use
&lt;/h2&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%2Fc4ilcx5kefm6fxdn58ow.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%2Fc4ilcx5kefm6fxdn58ow.png" alt=" " width="546" height="550"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>extensions</category>
      <category>node</category>
    </item>
  </channel>
</rss>
