<?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: Vishal Shetty</title>
    <description>The latest articles on DEV Community by Vishal Shetty (@vishalshetty).</description>
    <link>https://dev.to/vishalshetty</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%2F3863126%2F4bfec23e-3f4a-4c89-8c53-5aca1139d048.png</url>
      <title>DEV Community: Vishal Shetty</title>
      <link>https://dev.to/vishalshetty</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vishalshetty"/>
    <language>en</language>
    <item>
      <title>🎬 CineVerse — A Movie Discovery Platform for Indian Users</title>
      <dc:creator>Vishal Shetty</dc:creator>
      <pubDate>Tue, 07 Apr 2026 04:09:30 +0000</pubDate>
      <link>https://dev.to/vishalshetty/cineverse-a-movie-discovery-platform-for-indian-users-18hn</link>
      <guid>https://dev.to/vishalshetty/cineverse-a-movie-discovery-platform-for-indian-users-18hn</guid>
      <description>&lt;p&gt;Choosing what to watch shouldn’t take longer than the movie itself.&lt;/p&gt;

&lt;p&gt;With the rise of multiple OTT platforms, users often spend more time deciding than actually watching. I faced this problem myself — and that’s how &lt;strong&gt;CineVerse&lt;/strong&gt; was built.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎥 Demo Video
&lt;/h2&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/Kq9m3qyST9c"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 Live Demo
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://cineversetv.vercel.app/" rel="noopener noreferrer"&gt;https://cineversetv.vercel.app/&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 The Idea
&lt;/h2&gt;

&lt;p&gt;CineVerse is designed as a &lt;strong&gt;centralized platform&lt;/strong&gt; where users can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discover movies&lt;/li&gt;
&lt;li&gt;Share reviews and ratings&lt;/li&gt;
&lt;li&gt;Get quick insights using AI summaries&lt;/li&gt;
&lt;li&gt;Interact with other users&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of jumping between multiple apps, everything is available in one place — making movie discovery faster and more engaging.&lt;/p&gt;




&lt;h2&gt;
  
  
  ✨ Key Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🎥 Movie Discovery
&lt;/h3&gt;

&lt;p&gt;Browse movies through a clean and intuitive interface.&lt;br&gt;
(Currently focused on a curated set of Indian content.)&lt;/p&gt;




&lt;h3&gt;
  
  
  ⭐ Reviews &amp;amp; Ratings
&lt;/h3&gt;

&lt;p&gt;Users can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Write reviews&lt;/li&gt;
&lt;li&gt;Rate movies&lt;/li&gt;
&lt;li&gt;Like other users’ reviews&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  🤖 AI-Based Review Summarization
&lt;/h3&gt;

&lt;p&gt;When multiple reviews are available, CineVerse generates a short summary to help users quickly understand overall feedback.&lt;/p&gt;




&lt;h3&gt;
  
  
  📌 Watchlist
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Add movies to a personalized watchlist&lt;/li&gt;
&lt;li&gt;Track what you plan to watch&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  🔄 User Recommendations
&lt;/h3&gt;

&lt;p&gt;Supports two types:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Normal Recommendation&lt;/strong&gt; → Suggest a movie with a reason&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Comparative Recommendation&lt;/strong&gt; → “If you liked X, you’ll like Y”&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  💬 Real-Time Discussions
&lt;/h3&gt;

&lt;p&gt;Each movie includes a discussion section where users can interact and share opinions.&lt;/p&gt;




&lt;h3&gt;
  
  
  🛠 Admin Dashboard
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Add and manage movies&lt;/li&gt;
&lt;li&gt;Monitor platform activity&lt;/li&gt;
&lt;li&gt;Control content&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧱 Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React.js&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Supabase (Authentication, Database, Storage)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; PostgreSQL&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment:&lt;/strong&gt; Vercel&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧠 What I Learned
&lt;/h2&gt;

&lt;p&gt;Building CineVerse helped me understand:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full-stack application development&lt;/li&gt;
&lt;li&gt;Real-time data handling&lt;/li&gt;
&lt;li&gt;Database design and relationships&lt;/li&gt;
&lt;li&gt;Secure authentication&lt;/li&gt;
&lt;li&gt;UI/UX improvements for better user experience&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ⚠️ Current Limitations
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Not all movies are included (curated dataset)&lt;/li&gt;
&lt;li&gt;No mobile application yet&lt;/li&gt;
&lt;li&gt;Recommendation system is currently logic-based&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔮 Future Improvements
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Expand movie database&lt;/li&gt;
&lt;li&gt;OTT API integration&lt;/li&gt;
&lt;li&gt;Mobile app development&lt;/li&gt;
&lt;li&gt;Advanced recommendation system&lt;/li&gt;
&lt;li&gt;Real-time push notifications&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;CineVerse is an attempt to simplify how we discover and decide what to watch — especially in an OTT-heavy environment focused on Indian audiences.&lt;/p&gt;

&lt;p&gt;This started as an MCA mini project, but it turned into a valuable learning experience in building scalable and interactive applications.&lt;/p&gt;




&lt;h2&gt;
  
  
  👨‍💻 About Me
&lt;/h2&gt;

&lt;p&gt;Built by &lt;strong&gt;Vishal Shetty&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you found this interesting, feel free to connect or share your feedback!&lt;/p&gt;




</description>
      <category>react</category>
      <category>javascript</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>I built a restaurant bill splitting app — here’s how it works (SplitMalple)</title>
      <dc:creator>Vishal Shetty</dc:creator>
      <pubDate>Mon, 06 Apr 2026 05:42:06 +0000</pubDate>
      <link>https://dev.to/vishalshetty/i-built-a-restaurant-bill-splitting-app-heres-how-it-works-splitmalple-k5e</link>
      <guid>https://dev.to/vishalshetty/i-built-a-restaurant-bill-splitting-app-heres-how-it-works-splitmalple-k5e</guid>
      <description>&lt;p&gt;Splitting a restaurant bill sounds simple… until it isn’t.&lt;/p&gt;

&lt;p&gt;You’ve probably been there:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Someone pays more than they should&lt;/li&gt;
&lt;li&gt;Others underpay&lt;/li&gt;
&lt;li&gt;And it ends with confusion or awkward conversations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’ve faced this multiple times — and that’s what led me to build &lt;strong&gt;SplitMalple&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 How the idea started
&lt;/h2&gt;

&lt;p&gt;The idea came up during a restaurant outing.&lt;/p&gt;

&lt;p&gt;A friend casually said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Why don’t you build an app for this?”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That one line stuck with me.&lt;/p&gt;

&lt;p&gt;Also, the name &lt;strong&gt;SplitMalple&lt;/strong&gt; comes from my native language &lt;em&gt;Tulu&lt;/em&gt;, where &lt;em&gt;“Malple” means “to do”&lt;/em&gt; — making it simple, personal, and action-focused.&lt;/p&gt;




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

&lt;p&gt;Splitting bills in groups is rarely fair:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;People order different items&lt;/li&gt;
&lt;li&gt;Some dishes are shared&lt;/li&gt;
&lt;li&gt;Equal splitting doesn’t make sense&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So what do we usually do?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open a calculator 📱&lt;/li&gt;
&lt;li&gt;Do manual math 🧾&lt;/li&gt;
&lt;li&gt;Or just “adjust later” 😅&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these are ideal.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 The solution — SplitMalple
&lt;/h2&gt;

&lt;p&gt;SplitMalple makes bill splitting simple, fair, and stress-free.&lt;/p&gt;

&lt;p&gt;Instead of guessing, it lets you split based on &lt;strong&gt;actual consumption&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔥 What it does
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Add food items with price and quantity&lt;/li&gt;
&lt;li&gt;Assign items to specific people&lt;/li&gt;
&lt;li&gt;Handle shared items easily&lt;/li&gt;
&lt;li&gt;Automatically calculate who owes what&lt;/li&gt;
&lt;li&gt;Generate a clean summary&lt;/li&gt;
&lt;li&gt;Share the final split instantly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It also enhances the experience by fetching food images dynamically using APIs.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎥 Demo
&lt;/h2&gt;

&lt;p&gt;Instead of explaining, here’s a quick look at how it works in real time:&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/sXPXNwsUSfE"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 What I learned while building this
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Real-world problems are messy
&lt;/h3&gt;

&lt;p&gt;Handling shared items, edge cases, and fairness is more complex than it seems.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. UX matters more than logic
&lt;/h3&gt;

&lt;p&gt;Even if calculations are correct, the app must feel effortless.&lt;/p&gt;




&lt;h3&gt;
  
  
  3. Small features can make big differences
&lt;/h3&gt;

&lt;p&gt;A simple share feature significantly improved usability.&lt;/p&gt;




&lt;h3&gt;
  
  
  4. Building in public helps
&lt;/h3&gt;

&lt;p&gt;Sharing progress keeps you accountable and helps you improve faster.&lt;/p&gt;




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

&lt;p&gt;👉 &lt;a href="https://splitmalple.vercel.app" rel="noopener noreferrer"&gt;https://splitmalple.vercel.app&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  💭 Final thought
&lt;/h2&gt;

&lt;p&gt;Great meals bring people together.&lt;br&gt;
Fair bills keep them that way.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;Pay only for what you actually ate.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>buildinpublic</category>
    </item>
  </channel>
</rss>
