<?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: Farhad Bagheri</title>
    <description>The latest articles on Forem by Farhad Bagheri (@cfarhad).</description>
    <link>https://forem.com/cfarhad</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%2F667185%2F9f923fc3-a4a5-4f33-be22-175f10860b34.jpg</url>
      <title>Forem: Farhad Bagheri</title>
      <link>https://forem.com/cfarhad</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/cfarhad"/>
    <language>en</language>
    <item>
      <title>React Elementor</title>
      <dc:creator>Farhad Bagheri</dc:creator>
      <pubDate>Tue, 25 Mar 2025 14:48:45 +0000</pubDate>
      <link>https://forem.com/cfarhad/react-elementor-115m</link>
      <guid>https://forem.com/cfarhad/react-elementor-115m</guid>
      <description>&lt;h2&gt;
  
  
  Build Websites Like a Pro with &lt;strong&gt;React Elementor&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Hey Dev.to community!&lt;/p&gt;

&lt;p&gt;I’m excited to share my latest project: &lt;strong&gt;React Elementor&lt;/strong&gt; – a drag-and-drop website builder inspired by Elementor, but built entirely with &lt;strong&gt;React&lt;/strong&gt;. It's perfect for developers and non-developers alike who want to quickly create stunning web pages.&lt;/p&gt;

&lt;h3&gt;
  
  
  🌟 &lt;strong&gt;What is React Elementor?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;React Elementor is a flexible, easy-to-use page builder where users can drag and drop widgets to design web pages visually. No coding required!&lt;/p&gt;

&lt;h3&gt;
  
  
  🔧 &lt;strong&gt;Core Features:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Drag &amp;amp; Drop Interface:&lt;/strong&gt; Effortlessly build layouts with a simple user interface.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom Widgets:&lt;/strong&gt; Basic widgets like Heading, Image, Text Editor, Video, Button, and more.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real-time Preview:&lt;/strong&gt; See changes instantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open Source:&lt;/strong&gt; Free to use and customize.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🔍 &lt;strong&gt;Widgets Available&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Here are some of the basic widgets available in React Elementor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Heading&lt;/strong&gt; 📊&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Image&lt;/strong&gt; 📷&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Text Editor&lt;/strong&gt; 📝&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Video&lt;/strong&gt; 🎥&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Button&lt;/strong&gt; 🛠️&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Divider&lt;/strong&gt; ➖&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Spacer&lt;/strong&gt; ✅&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Icon&lt;/strong&gt; 📸&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML&lt;/strong&gt; 👨‍💻&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alert&lt;/strong&gt; ⚠️&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rating&lt;/strong&gt; 🌟&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Progress Bar&lt;/strong&gt; 🎉&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Icon List&lt;/strong&gt; 🗂️&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🚀 &lt;strong&gt;Tech Stack and Libraries&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I chose some of the best libraries in the ecosystem to build this project. Here are the highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React 19&lt;/strong&gt; - Core framework for UI development.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@craftjs/core&lt;/strong&gt; - Provides the drag-and-drop builder foundation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@hello-pangea/dnd&lt;/strong&gt; - Lightweight drag-and-drop support.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@mantine/core&lt;/strong&gt; and &lt;strong&gt;@mantine/hooks&lt;/strong&gt; - UI components and hooks for seamless UI creation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@reduxjs/toolkit&lt;/strong&gt; - Efficient state management.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;@tiptap/react&lt;/strong&gt; - Rich text editor for the Text Editor widget.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;react-window&lt;/strong&gt; and &lt;strong&gt;react-virtualized-auto-sizer&lt;/strong&gt; - For smooth virtualized rendering of large data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;tailwindcss&lt;/strong&gt; - For clean, modern, responsive design.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  💰 &lt;strong&gt;Get Involved&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;This project is open-source and I’d love to see your contributions! Feel free to fork it, submit pull requests, or suggest new widgets and features.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/CFarhad/react-elementor" rel="noopener noreferrer"&gt;React Elementor - GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know your thoughts! If you have any questions or ideas, drop them in the comments below.&lt;/p&gt;

&lt;p&gt;Happy coding! 🚀&lt;/p&gt;

</description>
      <category>react</category>
      <category>opensource</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Install nodejs on linux</title>
      <dc:creator>Farhad Bagheri</dc:creator>
      <pubDate>Fri, 07 Oct 2022 22:52:11 +0000</pubDate>
      <link>https://forem.com/cfarhad/install-nodejs-on-linux-b18</link>
      <guid>https://forem.com/cfarhad/install-nodejs-on-linux-b18</guid>
      <description>&lt;p&gt;every javascript developer need to use nodejs and npm. if you are using debian distribution, this post can make you happy for installation node js.&lt;/p&gt;

&lt;p&gt;i see these example on google but everytime it doesnt work for me. with this way you can install every nodejs version even it doesnt exist on ubutu package manager.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;h3&gt;
  
  
  Step 2:
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;xz-utils
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;h3&gt;
  
  
  Step 3:
&lt;/h3&gt;

&lt;p&gt;Download your nodejs&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%2Fye7m1rge20267yfu2ooi.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%2Fye7m1rge20267yfu2ooi.png" alt="Image description" width="577" height="184"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: (Extract file from .tar.xz)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo tar&lt;/span&gt; &lt;span class="nt"&gt;-xvf&lt;/span&gt; name_of_file
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;h3&gt;
  
  
  Step 5: (copy extracted folder files to computer root folder)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo cp&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt; directory_name/&lt;span class="o"&gt;{&lt;/span&gt;bin,include,lib,share&lt;span class="o"&gt;}&lt;/span&gt; /usr/

&lt;span class="c"&gt;#NOTE: Dont replace anything instead of {bin,include,...}&lt;/span&gt;
&lt;span class="c"&gt;#NOTE: dicrectory_name is your nodejs extracted folder &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>linux</category>
      <category>node</category>
      <category>ubuntu</category>
    </item>
  </channel>
</rss>
