<?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: Mark EL-asfar</title>
    <description>The latest articles on DEV Community by Mark EL-asfar (@marklasfar).</description>
    <link>https://dev.to/marklasfar</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%2F1595723%2F8839c95c-70f9-487a-8d40-cf91c26ade98.jpeg</url>
      <title>DEV Community: Mark EL-asfar</title>
      <link>https://dev.to/marklasfar</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/marklasfar"/>
    <language>en</language>
    <item>
      <title>Building MGZon: Developer Portfolio + AI Bot + Social Network (9 min demo)</title>
      <dc:creator>Mark EL-asfar</dc:creator>
      <pubDate>Mon, 25 May 2026 00:34:06 +0000</pubDate>
      <link>https://dev.to/marklasfar/building-mgzon-developer-portfolio-ai-bot-social-network-9-min-demo-37p4</link>
      <guid>https://dev.to/marklasfar/building-mgzon-developer-portfolio-ai-bot-social-network-9-min-demo-37p4</guid>
      <description>&lt;p&gt;After 3 months of solo development, 15,000+ lines of code, and countless iterations, I'm excited to share &lt;strong&gt;MGZon&lt;/strong&gt; - a developer portfolio platform where every profile has its own AI bot.&lt;/p&gt;

&lt;h2&gt;
  
  
  📌 What makes MGZon different?
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;LinkedIn&lt;/th&gt;
&lt;th&gt;GitHub&lt;/th&gt;
&lt;th&gt;MGZon&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Profile-specific AI Bot&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visitors can ask the AI&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI answers from real profile data&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Voice Input (ask by speaking)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text-to-Speech (bot reads aloud)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Drag &amp;amp; drop section reordering&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Save/Load multiple layouts&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Full Arabic &amp;amp; English support&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🤖 The AI Bot Has 3 Modes
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Visitor Mode&lt;/strong&gt; - Talks in first person: "I am a developer with 5 years experience"&lt;/li&gt;
&lt;/ol&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%2Fv3ni9r78cftiyll6b0qw.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%2Fv3ni9r78cftiyll6b0qw.png" alt="AI Bot responding to a visitor asking about profile owner's skills" width="305" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Owner Mode&lt;/strong&gt; - Talks in second person: "You are a developer with..."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Command Mode&lt;/strong&gt; - Natural language commands: "Add skill GraphQL 75%"&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;&lt;strong&gt;AI Bot Capabilities:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Answers questions about you in 5 languages (Arabic, English, French, German, Spanish)&lt;/li&gt;
&lt;li&gt;Analyzes strengths &amp;amp; weaknesses&lt;/li&gt;
&lt;li&gt;Suggests improvements&lt;/li&gt;
&lt;li&gt;Natural language commands (add/update/delete skills)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Social Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Posts, comments, likes, shares, follows&lt;/li&gt;
&lt;li&gt;Job board with applications&lt;/li&gt;
&lt;li&gt;Real-time messaging&lt;/li&gt;
&lt;li&gt;Notifications&lt;/li&gt;
&lt;li&gt;Stories (24-hour)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Developer Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Smart Resume Import (upload PDF → auto-fill everything)&lt;/li&gt;
&lt;li&gt;GitHub Integration (import repos with README, commits, contributors)&lt;/li&gt;
&lt;li&gt;Voice Input &amp;amp; Text-to-Speech&lt;/li&gt;
&lt;li&gt;Drag &amp;amp; Drop layout customization&lt;/li&gt;
&lt;li&gt;Save/Load multiple layouts&lt;/li&gt;
&lt;li&gt;Customizable themes &amp;amp; dark mode&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🛠️ Tech Stack
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Backend:  Node.js + Express + MongoDB + Socket.IO
Frontend: HTML5 + TailwindCSS + Vanilla JS
AI:       HuggingFace Inference API (DeepSeek R1, Qwen 2.5)
Storage:  Cloudinary
Deployment: HuggingFace Spaces + Firebase
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  📊 Project Statistics
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🕒 &lt;strong&gt;3 months&lt;/strong&gt; of development&lt;/li&gt;
&lt;li&gt;📝 &lt;strong&gt;15,000+&lt;/strong&gt; lines of code&lt;/li&gt;
&lt;li&gt;📁 &lt;strong&gt;20+&lt;/strong&gt; MongoDB models&lt;/li&gt;
&lt;li&gt;🔗 &lt;strong&gt;50+&lt;/strong&gt; API endpoints&lt;/li&gt;
&lt;li&gt;🤖 &lt;strong&gt;3&lt;/strong&gt; AI behavior modes&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;9-minute full walkthrough:&lt;/strong&gt; &lt;a href="https://youtu.be/pumWUF9GNVs" rel="noopener noreferrer"&gt;https://youtu.be/pumWUF9GNVs&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Try it yourself:&lt;/strong&gt; &lt;a href="https://mark-elasfar.web.app/root" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/root&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sample Profiles:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://mark-elasfar.web.app/profile/amar" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/profile/amar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mark-elasfar.web.app/profile/mgzon0" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/profile/mgzon0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  💡 Want to Participate?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Sign up and create your profile&lt;/li&gt;
&lt;li&gt;Add your skills, experience, and projects&lt;/li&gt;
&lt;li&gt;Enable the AI Bot in settings&lt;/li&gt;
&lt;li&gt;Share your profile link with "Ask my AI bot about me"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I built this &lt;strong&gt;ALONE&lt;/strong&gt;. Every line of code, every feature, every bug fix.&lt;/p&gt;

&lt;p&gt;Now I'm sharing it with you.&lt;/p&gt;

&lt;p&gt;I'd love to hear your feedback, criticism, and suggestions!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Try it out:&lt;/strong&gt; &lt;a href="https://mark-elasfar.web.app/root" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/root&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  MGZon #AI #FullStack #NodeJS #MongoDB #WebDevelopment
&lt;/h1&gt;

</description>
      <category>mgzon</category>
      <category>ai</category>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Building MGZon: Developer Portfolio + AI Bot + Social Network (9 min demo)</title>
      <dc:creator>Mark EL-asfar</dc:creator>
      <pubDate>Mon, 25 May 2026 00:19:59 +0000</pubDate>
      <link>https://dev.to/marklasfar/building-mgzon-developer-portfolio-ai-bot-social-network-9-min-demo-3oe5</link>
      <guid>https://dev.to/marklasfar/building-mgzon-developer-portfolio-ai-bot-social-network-9-min-demo-3oe5</guid>
      <description>&lt;p&gt;After 3 months of solo development, 15,000+ lines of code, and countless iterations, I'm excited to share &lt;strong&gt;MGZon&lt;/strong&gt; - a developer portfolio platform where every profile has its own AI bot.&lt;/p&gt;

&lt;h2&gt;
  
  
  📌 What makes MGZon different?
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;LinkedIn&lt;/th&gt;
&lt;th&gt;GitHub&lt;/th&gt;
&lt;th&gt;MGZon&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Profile-specific AI Bot&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visitors can ask the AI&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI answers from real profile data&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Voice Input (ask by speaking)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Text-to-Speech (bot reads aloud)&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Drag &amp;amp; drop section reordering&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Save/Load multiple layouts&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Full Arabic &amp;amp; English support&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🤖 The AI Bot Has 3 Modes
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Visitor Mode&lt;/strong&gt; - Talks in first person: "I am a developer with 5 years experience"&lt;/li&gt;
&lt;/ol&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%2Fv3ni9r78cftiyll6b0qw.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%2Fv3ni9r78cftiyll6b0qw.png" alt="AI Bot responding to a visitor asking about profile owner's skills" width="305" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Owner Mode&lt;/strong&gt; - Talks in second person: "You are a developer with..."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Command Mode&lt;/strong&gt; - Natural language commands: "Add skill GraphQL 75%"&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;&lt;strong&gt;AI Bot Capabilities:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Answers questions about you in 5 languages (Arabic, English, French, German, Spanish)&lt;/li&gt;
&lt;li&gt;Analyzes strengths &amp;amp; weaknesses&lt;/li&gt;
&lt;li&gt;Suggests improvements&lt;/li&gt;
&lt;li&gt;Natural language commands (add/update/delete skills)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Social Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Posts, comments, likes, shares, follows&lt;/li&gt;
&lt;li&gt;Job board with applications&lt;/li&gt;
&lt;li&gt;Real-time messaging&lt;/li&gt;
&lt;li&gt;Notifications&lt;/li&gt;
&lt;li&gt;Stories (24-hour)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Developer Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Smart Resume Import (upload PDF → auto-fill everything)&lt;/li&gt;
&lt;li&gt;GitHub Integration (import repos with README, commits, contributors)&lt;/li&gt;
&lt;li&gt;Voice Input &amp;amp; Text-to-Speech&lt;/li&gt;
&lt;li&gt;Drag &amp;amp; Drop layout customization&lt;/li&gt;
&lt;li&gt;Save/Load multiple layouts&lt;/li&gt;
&lt;li&gt;Customizable themes &amp;amp; dark mode&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🛠️ Tech Stack
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Backend:  Node.js + Express + MongoDB + Socket.IO
Frontend: HTML5 + TailwindCSS + Vanilla JS
AI:       HuggingFace Inference API (DeepSeek R1, Qwen 2.5)
Storage:  Cloudinary
Deployment: HuggingFace Spaces + Firebase
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  📊 Project Statistics
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🕒 &lt;strong&gt;3 months&lt;/strong&gt; of development&lt;/li&gt;
&lt;li&gt;📝 &lt;strong&gt;15,000+&lt;/strong&gt; lines of code&lt;/li&gt;
&lt;li&gt;📁 &lt;strong&gt;20+&lt;/strong&gt; MongoDB models&lt;/li&gt;
&lt;li&gt;🔗 &lt;strong&gt;50+&lt;/strong&gt; API endpoints&lt;/li&gt;
&lt;li&gt;🤖 &lt;strong&gt;3&lt;/strong&gt; AI behavior modes&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;9-minute full walkthrough:&lt;/strong&gt; &lt;a href="https://youtu.be/pumWUF9GNVs" rel="noopener noreferrer"&gt;https://youtu.be/pumWUF9GNVs&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Try it yourself:&lt;/strong&gt; &lt;a href="https://mark-elasfar.web.app/root" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/root&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sample Profiles:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://mark-elasfar.web.app/profile/amar" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/profile/amar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mark-elasfar.web.app/profile/mgzon0" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/profile/mgzon0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  💡 Want to Participate?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Sign up and create your profile&lt;/li&gt;
&lt;li&gt;Add your skills, experience, and projects&lt;/li&gt;
&lt;li&gt;Enable the AI Bot in settings&lt;/li&gt;
&lt;li&gt;Share your profile link with "Ask my AI bot about me"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I built this &lt;strong&gt;ALONE&lt;/strong&gt;. Every line of code, every feature, every bug fix.&lt;/p&gt;

&lt;p&gt;Now I'm sharing it with you.&lt;/p&gt;

&lt;p&gt;I'd love to hear your feedback, criticism, and suggestions!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Try it out:&lt;/strong&gt; &lt;a href="https://mark-elasfar.web.app/root" rel="noopener noreferrer"&gt;https://mark-elasfar.web.app/root&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  MGZon #AI #FullStack #NodeJS #MongoDB #WebDevelopment
&lt;/h1&gt;

</description>
      <category>mgzon</category>
      <category>ai</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Passport MGZon</title>
      <dc:creator>Mark EL-asfar</dc:creator>
      <pubDate>Sat, 23 Aug 2025 15:04:29 +0000</pubDate>
      <link>https://dev.to/marklasfar/passport-mgzon-3mk0</link>
      <guid>https://dev.to/marklasfar/passport-mgzon-3mk0</guid>
      <description>&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%2Fj78yxkqfxqzhx8kpscwa.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%2Fj78yxkqfxqzhx8kpscwa.png" alt=" " width="800" height="492"&gt;&lt;/a&gt;**Passport strategy for MGZon OAuth 2.0 authentication with icon support. is an OAuth 2.0 strategy for use with the Passport library, allowing authentication with MGZon.&lt;/p&gt;

&lt;p&gt;This project simplifies the process of integrating MGZon authentication into your application using OAuth 2.0, enabling developers to authenticate users via their MGZon accounts.**&lt;/p&gt;

&lt;p&gt;More Information&lt;/p&gt;

&lt;p&gt;Check out the &lt;a href="https://gist.github.com/Mark-Lasfar/525924912c80d84baf5aaab72b5b3e80" rel="noopener noreferrer"&gt;Gist&lt;/a&gt; for a quick start guide.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Passport-MGZon&lt;/strong&gt; is an &lt;strong&gt;OAuth&lt;/strong&gt; 2.0 strategy for use with the &lt;a href="https://www.npmjs.com/package/passport-mgzon" rel="noopener noreferrer"&gt;Passport&lt;/a&gt; library, allowing authentication with MGZon.&lt;/p&gt;

&lt;p&gt;This project simplifies the process of integrating &lt;strong&gt;MGZon&lt;/strong&gt; authentication into your application using &lt;strong&gt;OAuth 2.0&lt;/strong&gt;, enabling developers to authenticate users via their &lt;strong&gt;MGZon&lt;/strong&gt; accounts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Demo Icon&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://raw.githubusercontent.com/Mark-Lasfar/MGZon/978bf51a14ac24a66d614fd5d78f22971261a498/public/icons/mg.svg" rel="noopener noreferrer"&gt;MGZon Logo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to Usage&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Authentication&lt;/em&gt;&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const passport = require('passport');
const MGZonStrategy = require('passport-mgzon');

passport.use(new MGZonStrategy({
  clientID: process.env.MGZON_CLIENT_ID,
  clientSecret: process.env.MGZON_CLIENT_SECRET,
  callbackURL: 'http://your-app/auth/mgz/callback',
  scope: ['profile:read', 'profile:write']
}, async (accessToken, refreshToken, profile, done) =&amp;gt; {
  // Your user handling logic here
  return done(null, profile);
}));
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;**_&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Routes
_**
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;app.get('/auth/mgz', passport.authenticate('mgzon'));

app.get('/auth/mgz/callback', passport.authenticate('mgzon', { session: false }), (req, res) =&amp;gt; {
  res.redirect('/profile');
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;How to Use MGZon Icon&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This package includes the MGZon icon font. To use it:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Include the CSS:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Include the CSS&lt;/strong&gt;:
Add the following line to your HTML or import it in your CSS/JS:
&lt;strong&gt;html&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   &amp;lt;link rel="stylesheet" href="/icons/css/style.css"&amp;gt;
   &amp;lt;link rel="stylesheet" href="node_modules/passport-mgzon/icons/css/style.css"&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Use the Icon&lt;/strong&gt;:
&lt;em&gt;&lt;strong&gt;Use the MGZon icon in your HTML&lt;/strong&gt;&lt;/em&gt;:
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;i class="icon-mgzon"&amp;gt;&amp;lt;/i&amp;gt; Sign in with MGZon
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;How to Installation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Install required packages:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install passport-mgzon


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>npm</category>
      <category>mgzon</category>
      <category>authentication</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
