<?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>Forem: Vishwas Batra</title>
    <description>The latest articles on Forem by Vishwas Batra (@vishwas-batra).</description>
    <link>https://forem.com/vishwas-batra</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%2F3670006%2F39d5aca0-995f-4dd3-83d1-faee1afa1d75.png</url>
      <title>Forem: Vishwas Batra</title>
      <link>https://forem.com/vishwas-batra</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/vishwas-batra"/>
    <language>en</language>
    <item>
      <title>The End of ScrapeForge</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Thu, 25 Dec 2025 03:00:29 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/the-end-of-scrapeforge-4a4i</link>
      <guid>https://forem.com/vishwas-batra/the-end-of-scrapeforge-4a4i</guid>
      <description>&lt;p&gt;This post was supposed to be:&lt;br&gt;
Day 6 of building ScrapeForge 🛠️&lt;/p&gt;

&lt;p&gt;But unfortunately I have to stop here.&lt;/p&gt;

&lt;p&gt;I am genuinely sorry to everyone who followed this journey and supported the project. I can no longer continue building ScrapeForge at this time.&lt;/p&gt;

&lt;p&gt;Why I am stopping?&lt;br&gt;
The reason is simple and honest. Lack of funds.&lt;/p&gt;

&lt;p&gt;I know this sounds like a common excuse but it is the truth.&lt;/p&gt;

&lt;p&gt;Quick recap:&lt;br&gt;
Yesterday I completed around 80% of Instagram profile scraper. After that I started researching deployment options.&lt;/p&gt;

&lt;p&gt;Until now I had only deployed static or frontend focused apps and had no real experience deploying a production grade backend.&lt;/p&gt;

&lt;p&gt;During this research I realized I missed an important detail during the planning phase on Day 2.&lt;/p&gt;

&lt;p&gt;ScrapeForge is a complex backend. It is long running stateful and resource intensive.&lt;/p&gt;

&lt;p&gt;This kind of system cannot run reliably on platforms like Netlify or Vercel. It needs proper cloud infrastructure.&lt;/p&gt;

&lt;p&gt;After estimating the costs I realized running ScrapeForge on cloud infrastructure would cost around $150 to $220 per month. With a current budget of $0 this is simply not possible.&lt;/p&gt;

&lt;p&gt;At this point I could ask for preorders or investments to fund the project. But that does not feel right to me.&lt;/p&gt;

&lt;p&gt;So I have decided to pause ScrapeForge entirely. There will be no further dev logs after this one.&lt;/p&gt;

&lt;p&gt;What is next?&lt;br&gt;
For now I am focusing on freelancing to collect funds.&lt;/p&gt;

&lt;p&gt;I will be building websites and projects and using the skills I gained while building ScrapeForge such as web scraping reverse engineering APIs and building crawlers.&lt;/p&gt;

&lt;p&gt;Once I have enough funds I will return to ScrapeForge and continue full time.&lt;/p&gt;

&lt;p&gt;If you want ScrapeForge to come back sooner please share this post with anyone who needs a developer or wants data scraped from websites. This would genuinely help me move faster.&lt;/p&gt;

&lt;p&gt;Thank you to everyone who followed supported and believed in this journey.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>Day 5 of building ScrapeForge 🛠️</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Wed, 24 Dec 2025 01:37:32 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/day-5-of-building-scrapeforge-3nef</link>
      <guid>https://forem.com/vishwas-batra/day-5-of-building-scrapeforge-3nef</guid>
      <description>&lt;p&gt;Day 5 was a big learning milestone.&lt;/p&gt;

&lt;p&gt;While working on ScrapeForge, I explored backend APIs and learned how data can be accessed before it is rendered on the frontend. This made scraping significantly more straightforward at a technical level.&lt;/p&gt;

&lt;p&gt;What surprised me was how many applications expose backend APIs without strong safeguards or request monitoring.&lt;/p&gt;

&lt;p&gt;Key takeaway from today:&lt;br&gt;
APIs must be treated as first class security surfaces and monitored continuously.&lt;/p&gt;

&lt;p&gt;Day 6 will build on this.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Day 4 of building ScrapeForge 🛠️</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Tue, 23 Dec 2025 04:39:11 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/day-4-of-building-scrapeforge-2591</link>
      <guid>https://forem.com/vishwas-batra/day-4-of-building-scrapeforge-2591</guid>
      <description>&lt;p&gt;Day 4 was slow but informative.&lt;/p&gt;

&lt;p&gt;I completed the remaining SERP scraping logic and then moved on to implementing proxy rotation. To understand the real cost of free solutions, I decided to test free proxies.&lt;/p&gt;

&lt;p&gt;I manually collected around 2000 proxies and wrote a script to validate them. After nearly two hours of testing, only 139 were usable.&lt;/p&gt;

&lt;p&gt;This exercise clearly showed why most production systems rely on paid proxy providers.&lt;br&gt;
Lesson learned: free solutions often shift the cost from money to time.&lt;/p&gt;

&lt;p&gt;Day 5 will continue from here.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>buildinpublic</category>
      <category>saas</category>
    </item>
    <item>
      <title>Day 3 of building ScrapeForge 🛠️</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Mon, 22 Dec 2025 07:24:05 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/day-3-of-building-scrapeforge-5g5g</link>
      <guid>https://forem.com/vishwas-batra/day-3-of-building-scrapeforge-5g5g</guid>
      <description>&lt;p&gt;Day 3 was challenging but insightful.&lt;/p&gt;

&lt;p&gt;After my usual routine of posting updates and solving one LeetCode problem, I started building the SERP scraper using Playwright.&lt;/p&gt;

&lt;p&gt;Things worked at first, but I quickly encountered captchas, IP blacklisting, device fingerprinting, and multiple anti-bot layers.&lt;/p&gt;

&lt;p&gt;I spent the rest of the day modifying the scripts to better mimic real users. This included adding delays, reusing browser contexts, and adjusting execution patterns.&lt;/p&gt;

&lt;p&gt;I did not finish the scraper by the end of the day, but the learning was significant. It became very clear that web scraping is far more complex than it appears from the outside.&lt;/p&gt;

&lt;p&gt;Full respect to anyone working in this space.&lt;br&gt;
Day 4 will continue from here.&lt;/p&gt;

</description>
      <category>devjournal</category>
      <category>webdev</category>
      <category>showdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Day 2 building ScrapeForge 🛠️</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Sun, 21 Dec 2025 01:58:10 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/day-2-building-scrapeforge-2dia</link>
      <guid>https://forem.com/vishwas-batra/day-2-building-scrapeforge-2dia</guid>
      <description>&lt;p&gt;Building ScrapeForge in Public: Day 2&lt;/p&gt;

&lt;p&gt;With the project brief done, Day 2 was about legality and foundations.&lt;/p&gt;

&lt;p&gt;I spent the day researching the legal implications of this type of SaaS. The key conclusion was the need for a clear Terms of Service, to be drafted after backend development once features are fully defined.&lt;/p&gt;

&lt;p&gt;After locking this decision, I initialized the repository and completed the standard project setup.&lt;/p&gt;

&lt;p&gt;Key takeaway:&lt;br&gt;
Before scaling code, make sure the legal boundaries are clearly defined.&lt;/p&gt;

&lt;p&gt;Day 3 will focus on deeper execution.&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%2Fjj1oi6wafufmje3e4n0u.jpg" 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%2Fjj1oi6wafufmje3e4n0u.jpg" alt="Scrape Forge initial logo" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>buildinpublic</category>
      <category>ai</category>
    </item>
    <item>
      <title>Day 1 of building ScrapeForge in public</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Sat, 20 Dec 2025 02:18:27 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/day-1-of-building-scrapeforge-in-public-3bf2</link>
      <guid>https://forem.com/vishwas-batra/day-1-of-building-scrapeforge-in-public-3bf2</guid>
      <description>&lt;p&gt;Before writing any production code, I wanted clarity.&lt;/p&gt;

&lt;p&gt;Day 1 was spent on three things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sharing the build in public intro&lt;/li&gt;
&lt;li&gt;Solving one LeetCode problem to stay consistent with DSA&lt;/li&gt;
&lt;li&gt;Creating a detailed project brief&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The project brief helps me avoid missing important features, reduces the risk of rewrites, and keeps scope creep under control.&lt;/p&gt;

&lt;p&gt;There is a quote I strongly believe in:&lt;br&gt;
“Scope creep kills more projects than bad code ever will.”&lt;/p&gt;

&lt;p&gt;By the end of the day, I had a complete plan covering build, launch, and marketing.&lt;/p&gt;

&lt;p&gt;I am sharing the project brief template for other developers as well.&lt;br&gt;
&lt;a href="https://1drv.ms/w/c/7d1d62d19aca61de/IQAiVNKlZ0I-QoeZA-AX9EYTAYCEMD_VbCkn6OkHEN9wI-Q?e=RGG7aQ" rel="noopener noreferrer"&gt;https://1drv.ms/w/c/7d1d62d19aca61de/IQAiVNKlZ0I-QoeZA-AX9EYTAYCEMD_VbCkn6OkHEN9wI-Q?e=RGG7aQ&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On to Day 2. 🚀&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%2Fcoxqzj7pfj5i3dcu5y5a.jpg" 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%2Fcoxqzj7pfj5i3dcu5y5a.jpg" alt="ScrapeForge initial logo" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>programming</category>
      <category>webdev</category>
      <category>ai</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>Building ScrapeForge in public starting tomorrow 🚀</title>
      <dc:creator>Vishwas Batra</dc:creator>
      <pubDate>Fri, 19 Dec 2025 06:13:53 +0000</pubDate>
      <link>https://forem.com/vishwas-batra/building-scrapeforge-in-public-starting-tomorrow-29ki</link>
      <guid>https://forem.com/vishwas-batra/building-scrapeforge-in-public-starting-tomorrow-29ki</guid>
      <description>&lt;p&gt;Hi everyone 👋&lt;br&gt;
I’m starting to build ScrapeForge in public tomorrow 🚀&lt;/p&gt;

&lt;p&gt;ScrapeForge is an industrial-grade data scraping and analysis platform focused on reliable extraction, smart filtering, and AI-assisted insights.&lt;/p&gt;

&lt;p&gt;I’ll be sharing progress updates, learnings, and behind-the-scenes decisions as the product takes shape.&lt;/p&gt;

&lt;p&gt;Day 1 starts tomorrow. Looking forward to sharing the journey.&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%2Fk762fuqilqo9jwylxgj8.jpg" 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%2Fk762fuqilqo9jwylxgj8.jpg" alt="ScrapeForge initial logo" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>buildinpublic</category>
      <category>marketing</category>
    </item>
  </channel>
</rss>
