<?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: Rishabh Malhotra</title>
    <description>The latest articles on DEV Community by Rishabh Malhotra (@rishabhmalhotraa).</description>
    <link>https://dev.to/rishabhmalhotraa</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%2F351990%2Fd35529ef-c7f4-497a-b200-89f69ec8b9ee.jpeg</url>
      <title>DEV Community: Rishabh Malhotra</title>
      <link>https://dev.to/rishabhmalhotraa</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rishabhmalhotraa"/>
    <language>en</language>
    <item>
      <title>I made google docs clone but with a twist</title>
      <dc:creator>Rishabh Malhotra</dc:creator>
      <pubDate>Thu, 25 Mar 2021 04:56:47 +0000</pubDate>
      <link>https://dev.to/rishabhmalhotraa/i-made-google-docs-clone-but-with-a-twist-l04</link>
      <guid>https://dev.to/rishabhmalhotraa/i-made-google-docs-clone-but-with-a-twist-l04</guid>
      <description>&lt;p&gt;When I used to discuss data-structure and algorithm problems with a friend while in college (yea thank covid for closing all the colleges D:), it was a pain in the neck since both of us were coding on different computers and different code-editors, and more often than not resorted back to just using pen and paper.&lt;/p&gt;

&lt;p&gt;I attempted to solve this problem by creating a real-time collaborative editor in which once you enter a room you just need to share the URL with a friend and he can join your room and both of you can collaborate together.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technologies used:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React&lt;/strong&gt; for the front-end of caucus.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;NodeJS&lt;/strong&gt; for the back-end of caucus.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Postgresql&lt;/strong&gt; database for storing and retrieving leetcode questions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;socket.io&lt;/strong&gt; for real-time communication.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://convergencelabs.com/" rel="noopener noreferrer"&gt;convergence&lt;/a&gt; for handling real-time collaboration.&lt;/li&gt;
&lt;li&gt;Heroku🤮(I hate Heroku) for hosting the nodejs server and Azure 🥰 for hosting the docker container.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Real-time collaboration for practicing for coding interviews&lt;/li&gt;
&lt;li&gt;All free leetcode questions to practice.&lt;/li&gt;
&lt;li&gt;You can also load any question from codeforces or atcoder by pasting the problem URL&lt;/li&gt;
&lt;li&gt;Real-time messaging.&lt;/li&gt;
&lt;li&gt;Remote code execution in 5 different languages (C++, Java, Python, Javascript and GO.
Try it live: &lt;a href="https://caucus-app.herokuapp.com/" rel="noopener noreferrer"&gt;live demo&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This project is available at GitHub -&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Rishabh-malhotraa" rel="noopener noreferrer"&gt;
        Rishabh-malhotraa
      &lt;/a&gt; / &lt;a href="https://github.com/Rishabh-malhotraa/caucus" rel="noopener noreferrer"&gt;
        caucus
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Realtime Collaborate Editor with Embedded Compiler
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;p&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus/graphs/contributors" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/07546b7b659984018791f80e4dd97227379f838c872a774c679a770ebe45380e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6e7472696275746f72732f526973686162682d6d616c686f747261612f6361756375732e7376673f7374796c653d666f722d7468652d6261646765" alt="Contributors"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Rishabh-malhotraa/caucus/network/members" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/6e11736dd47894d142a3ccf33a93f8a04d5b440c3664ea5ae643291fa8a1f4b2/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f526973686162682d6d616c686f747261612f6361756375732e7376673f7374796c653d666f722d7468652d6261646765" alt="Forks"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Rishabh-malhotraa/caucus/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/8c4826a85ea81c10b8ce647108e057dec1688586c814225e6801deb83aa82cc9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f526973686162682d6d616c686f747261612f6361756375732e7376673f7374796c653d666f722d7468652d6261646765" alt="Stargazers"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Rishabh-malhotraa/caucus/issues" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/e0be8dbfa96dab5b23e39d3523bcf941dfc854c7b7ecad32c6af4953d56e2b73/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f526973686162682d6d616c686f747261612f6361756375732e7376673f7374796c653d666f722d7468652d6261646765" alt="Issues"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Rishabh-malhotraa/caucus/blob/main/LICENSE.txt" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/d67634ec63c132a2686e4286f538a3b7cf4db2b51aabaea6baa26371490f96ff/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f526973686162682d6d616c686f747261612f6361756375732e7376673f7374796c653d666f722d7468652d6261646765" alt="MIT License"&gt;&lt;/a&gt;
&lt;a href="https://www.linkedin.com/in/rishabh-malhotra-4536a418b" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/508a1d417191aaa61a029f83aab6426a956bf60585d1df5594ec5150f2118566/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f2d4c696e6b6564496e2d626c61636b2e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6c696e6b6564696e26636f6c6f72423d353535" alt="LinkedIn"&gt;&lt;/a&gt;
&lt;a href="https://github.com/Rishabh-malhotraa/caucus#contributors-" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/71de40453cacfdccb25ac17701a23a0ea9277a93bb62fb0035f9be319f42ab13/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f616c6c5f636f6e7472696275746f72732d382d6f72616e67652e7376673f7374796c653d666f722d7468652d6261646765" alt="All Contributors"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;
  &lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;
    &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRishabh-malhotraa%2Fcaucusimages%2Flogo.png" alt="Logo" width="256" height="256"&gt;
  &lt;/a&gt;
  &lt;strong&gt;
    &lt;/strong&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;&lt;strong&gt;caucus&lt;/strong&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;strong&gt;
  &lt;/strong&gt;
  &lt;p&gt;
    A Real Time Collaborative Editor with an embedded compiler
    &lt;br&gt;
    &lt;a href="https://github.com/Rishabh-malhotraa/caucus/tree/main/src" rel="noopener noreferrer"&gt;&lt;strong&gt;Explore the project »&lt;/strong&gt;&lt;/a&gt;
    &lt;br&gt;
    &lt;br&gt;
    &lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;View Demo&lt;/a&gt;
    ·
    &lt;a href="https://github.com/Rishabh-malhotraa/caucus/issues" rel="noopener noreferrer"&gt;Report Bug&lt;/a&gt;
    ·
    &lt;a href="https://github.com/Rishabh-malhotraa/caucus/issues" rel="noopener noreferrer"&gt;Request Feature&lt;/a&gt;
  &lt;/p&gt;

  Table of Contents
  &lt;ol&gt;
    &lt;li&gt;
      &lt;a href="https://github.com/Rishabh-malhotraa/caucus#about-the-project" rel="noopener noreferrer"&gt;About The Project&lt;/a&gt;
      &lt;ul&gt;
        &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#built-with" rel="noopener noreferrer"&gt;Built With&lt;/a&gt;&lt;/li&gt;
      &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;
      &lt;a href="https://github.com/Rishabh-malhotraa/caucus#getting-started" rel="noopener noreferrer"&gt;Getting Started&lt;/a&gt;
      &lt;ul&gt;
        &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#prerequisites" rel="noopener noreferrer"&gt;Prerequisites&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#installation" rel="noopener noreferrer"&gt;Installation&lt;/a&gt;&lt;/li&gt;
      &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#roadmap" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#contributing" rel="noopener noreferrer"&gt;Contributing&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#license" rel="noopener noreferrer"&gt;License&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#contact" rel="noopener noreferrer"&gt;Contact&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="https://github.com/Rishabh-malhotraa/caucus#acknowledgements" rel="noopener noreferrer"&gt;Acknowledgements&lt;/a&gt;&lt;/li&gt;
  &lt;/ol&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;📣 Latest Announcements&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;🆕 5-10-2021: We now have a discussions form, if you want any new feature to be implemented you can &lt;a href="https://github.com/Rishabh-malhotraa/caucus/discussions/50" rel="noopener noreferrer"&gt;discuss here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;🆕 28-09-2021: Caucus is participating in Hacktoberfest 2021 🥳&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;About The Project&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Demonstration&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRishabh-malhotraa%2Fcaucusimages%2Fcaucus-demonstation.gif" alt="Product Demonstation"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Collaborative Code Editor&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;&lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRishabh-malhotraa%2Fcaucusimages%2Fcode-editor.png" alt="Product Name Screen Shot"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Login Page&lt;/th&gt;
&lt;th&gt;Navigate Rooms Page&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRishabh-malhotraa%2Fcaucusimages%2Flogin-page.png" alt="Product Name Screen Shot"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="https://caucus-app.herokuapp.com/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2FRishabh-malhotraa%2Fcaucusimages%2Fnavigation-page.png" alt="Product Name Screen Shot"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;br&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Built With&lt;/h3&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://reactjs.org/docs/getting-started.html" rel="nofollow noopener noreferrer"&gt;React&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://material-ui.com/getting-started/installation/" rel="nofollow noopener noreferrer"&gt;Material UI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://yjs.dev/" rel="nofollow noopener noreferrer"&gt;yjs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Written in TypeScript ♥&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Getting Started&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;Follow the instructions to set up the project on your local machine.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Prerequisites&lt;/h3&gt;

&lt;/div&gt;
&lt;p&gt;This is an example of how to list things you need to use the software and how to install them.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;npm&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;npm install npm@latest -g&lt;/pre&gt;

&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Installation&lt;/h3&gt;

&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Fork the repo(required), a star is also appretiated but optional :P&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Clone the forked repo&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;…
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Rishabh-malhotraa/caucus" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;If you liked what the project, &lt;strong&gt;please consider leaving a star ⭐ on the &lt;a href="https://github.com/rishabh-malhotraa/caucus" rel="noopener noreferrer"&gt;GitHub repo&lt;/a&gt; it means a lot.&lt;/strong&gt;&lt;/p&gt;

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