<?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: Rakesh Waghela</title>
    <description>The latest articles on DEV Community by Rakesh Waghela (@rakeshwaghela).</description>
    <link>https://dev.to/rakeshwaghela</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%2F4233003%2Fc435cb9e-a91e-4455-9da0-6a07e191a00f.png</url>
      <title>DEV Community: Rakesh Waghela</title>
      <link>https://dev.to/rakeshwaghela</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rakeshwaghela"/>
    <language>en</language>
    <item>
      <title>Server-rendering a page per stock from a daily snapshot</title>
      <dc:creator>Rakesh Waghela</dc:creator>
      <pubDate>Sun, 08 Nov 2026 03:25:03 +0000</pubDate>
      <link>https://dev.to/rakeshwaghela/server-rendering-a-page-per-stock-from-a-daily-snapshot-3a7n</link>
      <guid>https://dev.to/rakeshwaghela/server-rendering-a-page-per-stock-from-a-daily-snapshot-3a7n</guid>
      <description>&lt;p&gt;I built Ebitta, a free daily stock screener for NSE and BSE, and this is how its pages get served.&lt;/p&gt;

&lt;p&gt;Everything starts after each market close. A Python batch job runs inside a Cloudflare container and computes the day's screens: fresh and near breakouts on daily and weekly timeframes, new-listing breakouts, momentum leaders over one week to one year, 52-week highs, delivery-percentage accumulation, and Confluence, which lists stocks that appear in more than one screen.&lt;/p&gt;

&lt;p&gt;The batch writes one snapshot into R2 object storage. A Cloudflare Worker then server-renders every page from that snapshot: a page per stock, sector pages, and a page per screen.&lt;/p&gt;

&lt;p&gt;After each publish, the site pings IndexNow to notify search engines about the updated URLs.&lt;/p&gt;

&lt;p&gt;You can see the result here: &lt;a href="https://ebitta.com/confluence?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=launch" rel="noopener noreferrer"&gt;https://ebitta.com/confluence?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=launch&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Not investment advice; I'm not SEBI-registered.&lt;/p&gt;

</description>
      <category>python</category>
      <category>cloudflare</category>
      <category>webdev</category>
      <category>showdev</category>
    </item>
    <item>
      <title>How I built a free daily stock screener that publishes fresh pages after every market close</title>
      <dc:creator>Rakesh Waghela</dc:creator>
      <pubDate>Sun, 08 Nov 2026 02:09:43 +0000</pubDate>
      <link>https://dev.to/rakeshwaghela/how-i-built-a-free-daily-stock-screener-that-publishes-fresh-pages-after-every-market-close-3amd</link>
      <guid>https://dev.to/rakeshwaghela/how-i-built-a-free-daily-stock-screener-that-publishes-fresh-pages-after-every-market-close-3amd</guid>
      <description>&lt;p&gt;Disclosure: I built the tool this post describes, so judge accordingly.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem
&lt;/h2&gt;

&lt;p&gt;If you trade or invest in Indian stocks, a lot of screening work repeats every evening: after NSE and BSE close, you want to know which stocks broke out today, which are close to breaking out, and which sectors are gaining strength.&lt;/p&gt;

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

&lt;p&gt;Ebitta is a free daily stock screener for NSE and BSE, updated after each market close. It is an end-of-day tool: it does not scan live during market hours, it prepares the picture for the next session.&lt;/p&gt;

&lt;p&gt;It offers separate screens for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fresh and near breakouts (daily and weekly)&lt;/li&gt;
&lt;li&gt;new-listing breakouts&lt;/li&gt;
&lt;li&gt;momentum leaders over 1 week, 2 weeks, 1 month and 1 year&lt;/li&gt;
&lt;li&gt;52-week highs&lt;/li&gt;
&lt;li&gt;delivery-% accumulation&lt;/li&gt;
&lt;li&gt;Confluence: stocks that appear in more than one screen&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are sector and industry pages, a page per stock, and a watchlist. Browsing needs no login; an optional Google sign-in only keeps your watchlist. There is no paywall, no tips and no calls.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it is built
&lt;/h2&gt;

&lt;p&gt;The data changes once a day, so the pipeline is built around publishing rather than serving live queries:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;After each market close, a Python batch job runs in a Cloudflare container and computes the screens.&lt;/li&gt;
&lt;li&gt;The results are written as a snapshot to R2.&lt;/li&gt;
&lt;li&gt;A Cloudflare Worker server-renders a page for each stock, sector and screen from that snapshot.&lt;/li&gt;
&lt;li&gt;After each publish, IndexNow notifies search engines.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;Breakouts screen: &lt;a href="https://ebitta.com/breakouts?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=launch" rel="noopener noreferrer"&gt;https://ebitta.com/breakouts?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=launch&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you run evening scans today, I would genuinely like to know: what scan do you run that is missing here?&lt;/p&gt;

&lt;p&gt;Not investment advice; I'm not SEBI-registered.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>python</category>
    </item>
  </channel>
</rss>
