<?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: Juanse Mastrangelo</title>
    <description>The latest articles on DEV Community by Juanse Mastrangelo (@juansemastrangelo).</description>
    <link>https://dev.to/juansemastrangelo</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%2F237243%2F9f59430c-8a05-4f4f-8f8f-3b970ae3136a.jpg</url>
      <title>DEV Community: Juanse Mastrangelo</title>
      <link>https://dev.to/juansemastrangelo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juansemastrangelo"/>
    <language>en</language>
    <item>
      <title>Si eres desarrollador de Javascript debes conocer esta extensión de VS Code</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Fri, 11 Mar 2022 18:53:01 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/si-eres-desarrollador-de-javascript-debes-conocer-esta-extension-de-vs-45ph</link>
      <guid>https://dev.to/juansemastrangelo/si-eres-desarrollador-de-javascript-debes-conocer-esta-extension-de-vs-45ph</guid>
      <description>&lt;p&gt;Me enamoré de esta extensión de vsCode y en este post te mostraré por qué.&lt;br&gt;
La extensión es &lt;a href="https://marketplace.visualstudio.com/items?itemName=donjayamanne.typescript-notebook"&gt;Node.js Notebooks (REPL)&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Si quieres:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Probar la salida de tu código javascript.&lt;/li&gt;
&lt;li&gt;Conocer el tiempo de ejecución de la compilación (ms)&lt;/li&gt;
&lt;li&gt;Previsualizar las librerías&lt;/li&gt;
&lt;li&gt;Ejecutar parte del código&lt;/li&gt;
&lt;li&gt;Ver el rendimiento de tu código&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Esta extensión vscode es para ti!.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XFCGjOHS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--kNjYfNY1--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/REPL.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XFCGjOHS--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--kNjYfNY1--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/REPL.gif" alt="Node.js Notebooks (REPL)" width="880" height="672"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--P79k67He--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--77sCZVXU--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/demo.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--P79k67He--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://res.cloudinary.com/practicaldev/image/fetch/s--77sCZVXU--/c_limit%252Cf_auto%252Cfl_progressive%252Cq_66%252Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/demo.gif" alt="Node.js Notebooks (REPL)" width="880" height="510"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Gracias por leer mi artículo, he escrito otros artículos y puedes verlos en la barra de la derecha .&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>productivity</category>
      <category>node</category>
    </item>
    <item>
      <title>If you are Javascript developer you must know this VS Code extension</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Fri, 11 Mar 2022 15:57:47 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/if-you-are-javascript-developer-you-have-to-know-about-this-vs-extension-331h</link>
      <guid>https://dev.to/juansemastrangelo/if-you-are-javascript-developer-you-have-to-know-about-this-vs-extension-331h</guid>
      <description>&lt;p&gt;I fell in love with this vsCode extension and in this post I'll show you why.&lt;br&gt;
The extension is &lt;a href="https://marketplace.visualstudio.com/items?itemName=donjayamanne.typescript-notebook"&gt;Node.js Notebooks (REPL)&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you want to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Test the output of your javascript code.&lt;/li&gt;
&lt;li&gt;Know the compilation runtime (ms)&lt;/li&gt;
&lt;li&gt;Preview the libraries&lt;/li&gt;
&lt;li&gt;Execute part of the code&lt;/li&gt;
&lt;li&gt;See the performance of your code&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This crazy vscode extension is for you!.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kNjYfNY1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/REPL.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kNjYfNY1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/REPL.gif" alt="Node.js Notebooks" width="880" height="672"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--77sCZVXU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/demo.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--77sCZVXU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/demo.gif" alt="Node.js Notebooks" width="880" height="510"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thank you for reading my article, I have written other articles and you can see them on the right bar .&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>programming</category>
      <category>productivity</category>
      <category>node</category>
    </item>
    <item>
      <title>Extremely useful Chrome extensions for developers 2022</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Thu, 03 Mar 2022 14:14:22 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/extremely-useful-chrome-extensions-for-developers-2022-gbf</link>
      <guid>https://dev.to/juansemastrangelo/extremely-useful-chrome-extensions-for-developers-2022-gbf</guid>
      <description>&lt;p&gt;Hi, in this new post i'll show you extremely useful chrome extensions 2022.&lt;/p&gt;

&lt;p&gt;Remember to read my latest article about &lt;a href="https://dev.to/juansemastrangelo/extensions-recommended-by-seniors-vscode-2022-l7j"&gt;Extensions recommended by seniors (VScode) 2022&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/project-naptha/molncoemjfmpgdkbdlbjmhlcgniigdnf?hl=en-US"&gt;Project Naptha&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Highlight, copy, edit, and translate text from any image on the web. 4/5 🌟&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FGlzsczT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tbvrlnojz12eugrunntt.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FGlzsczT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tbvrlnojz12eugrunntt.gif" alt="Project Naptha" width="500" height="782"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/blackbox-select-copy-past/mcgbeeipkmelnpldkobichboakdfaeon"&gt;BlackBox&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Fastest Way to Copy Text from Videos &amp;amp; Images. 5/5 🌟&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9t-WjaP3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lm0y4624co5r3r8u5ym0.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9t-WjaP3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lm0y4624co5r3r8u5ym0.gif" alt="BlackBox" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/gofullpage-full-page-scre/fdpohaocaechififmbbbbbknoalclacl"&gt;GoFullPage - Full Page Screen Capture&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The simplest way to take a full page screenshot of your current browser window. 5/5 🌟&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--daYVcjRH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57344mts5iqooaiwqwg2.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--daYVcjRH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/57344mts5iqooaiwqwg2.jpg" alt="GoFullPage - Full Page Screen Capture" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://chrome.google.com/webstore/detail/fake-filler/bnjjngeaknajbdcgpfkgnonkmififhfo"&gt;Fake Filler&lt;/a&gt;
A form filler that fills all inputs on a page with fake/dummy data.
Fake Filler is THE form filler to fill all input fields on a page with randomly generated fake data. This productivity boosting extension is a must for developers and testers who work with forms as it eliminates the need for manually entering values in fields. 5/5 🌟&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FGv-hRbu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8xmyc5vrvjnqr454foxb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FGv-hRbu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8xmyc5vrvjnqr454foxb.jpg" alt="Fake Filler" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/pic-in-pic-for-chrome-bro/obfdmhekhgnjollgnhjhedapplpmbpka"&gt;Pic-in-pic for Chrome browser&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Picture-in-picture button for web videos. Watch videos in picture in picture mode!. 5/5 🌟&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Z3cima5x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/le3a867o7gzmpt1kigvn.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Z3cima5x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/le3a867o7gzmpt1kigvn.jpg" alt="Pic-in-pic for Chrome browser" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/screen-recorder/hniebljpgcogalllopnjokppmgbhaden"&gt;Screen Recorder&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Chrome extension to record a video from the camera or capture it from the screen (desktop, specific application window or Chrome tab). 5/5 🌟&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sgCuGRBq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1zi7442z6wykvfc6tugx.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sgCuGRBq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1zi7442z6wykvfc6tugx.jpg" alt="Screen Recorder" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/colorpick-eyedropper/ohcpnigalekghcmgcdcenkpelffpdolg"&gt;ColorPick Eyedropper&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A zoomed eyedropper &amp;amp; color chooser tool that allows you to select color values from webpages and more. 5/5 🌟&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--i9vNrel---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r9doyrxs4t0u33tfubxp.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i9vNrel---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r9doyrxs4t0u33tfubxp.jpg" alt="ColorPick Eyedropper" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/lighthouse/blipmdconlkpinefehnmjammfjpmpbjk"&gt;Lighthouse&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Lighthouse is an open-source, automated tool for improving the performance, quality, and correctness of your web apps. &lt;br&gt;
When auditing a page, Lighthouse runs a barrage of tests against the page, and then generates a report on how well the page did. From here you can use the failing tests as indicators on what you can do to improve your app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lljG0m5Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q9yynryadd9732gbcdfi.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lljG0m5Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q9yynryadd9732gbcdfi.jpg" alt="LightHouse" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://chrome.google.com/webstore/detail/wappalyzer-technology-pro/gppongmhjkpfnbhagpmjfkannfbllamg?hl=en-US"&gt;Wappalyzer - Technology profiler&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Wappalyzer is a technology profiler that shows you what websites are built with. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FXvHhMgz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iiwcaekgaq2q9zznh3pf.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FXvHhMgz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iiwcaekgaq2q9zznh3pf.jpg" alt="Wappalyzer" width="640" height="400"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Extras
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/volume-master/jghecgabfgfdldnmbfkhmffcabddioke"&gt;Volume Master&lt;/a&gt;: Up to 600% volume increase. The simplest and most reliable volume amplifier.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/svg-grabber-get-all-the-s/ndakggdliegnegeclmfgodmgemdokdmg"&gt;svg-grabber - get all the svg's from a site&lt;/a&gt;: A tool to quickly preview and get all the svg assets from a website.&lt;br&gt;
Quickly preview and copy or download all the SVG assets from a website.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/dark-reader/eimadpbcbfnmbkopoojfekhnkhdbieeh?hl=en-US"&gt;Dark Reader&lt;/a&gt;: Dark mode for every website. Take care of your eyes, use dark theme for night and daily browsing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/detailed-seo-extension/pfjdepjjfjjahkjfpkcgfmfhmnakjfba"&gt;Detailed SEO Extension&lt;/a&gt;: Get SEO insights at the click of a button to any website you're currently on. Built by full-time SEO's for daily analysis.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://chrome.google.com/webstore/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd"&gt;Redux DevTools&lt;/a&gt;: The extension provides power-ups for your Redux development workflow. Apart from Redux, it can be used with any other architectures which handle the state.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>extension</category>
      <category>chrome</category>
      <category>productivity</category>
      <category>performance</category>
    </item>
    <item>
      <title>Extensions recommended by seniors (VScode) 2022</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Tue, 15 Feb 2022 13:43:03 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/extensions-recommended-by-seniors-vscode-2022-l7j</link>
      <guid>https://dev.to/juansemastrangelo/extensions-recommended-by-seniors-vscode-2022-l7j</guid>
      <description>&lt;p&gt;Hi devs, I'm &lt;a href="https://github.com/JuanseMastrangelo" rel="noopener noreferrer"&gt;Juanse&lt;/a&gt; and this is my list of extensions I find helpful for day to day coding:&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme" rel="noopener noreferrer"&gt;Material Icon Theme&lt;/a&gt;
Material Design Icons for Visual Studio Code. 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Ftfku77ekoj2i6oellth3.jpg" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftfku77ekoj2i6oellth3.jpg" alt="Material Design Icons"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=mhutchie.git-graph" rel="noopener noreferrer"&gt;Git Graph&lt;/a&gt; and &lt;a href="https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens" rel="noopener noreferrer"&gt;Git Lens&lt;/a&gt; 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fzbxkjfjfwe1fmd8471ut.gif" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzbxkjfjfwe1fmd8471ut.gif" alt="Git Graph"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=juansemastrangelo.cardenas" rel="noopener noreferrer"&gt;Cardenas&lt;/a&gt;
Search and save algorithms easily with this open source extension. 4/5 ⭐ (Beta)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fzi4ogw5kakc4nqzjqcae.jpg" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzi4ogw5kakc4nqzjqcae.jpg" alt="Cardenas vscode extension"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare" rel="noopener noreferrer"&gt;Live Share&lt;/a&gt;
Real-time collaborative development from the comfort of your favorite tools. 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync" rel="noopener noreferrer"&gt;Settings Sync&lt;/a&gt;
Keeps your vscode settings. Synchronize Settings, Snippets, Themes, File Icons, Launch, Keybindings, Workspaces and Extensions Across Multiple Machines Using GitHub Gist. 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=TabNine.tabnine-vscode" rel="noopener noreferrer"&gt;Tabnine AI&lt;/a&gt;
AI Code completion plugin. Tabnine makes developers more productive by auto-completing their code. 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens" rel="noopener noreferrer"&gt;Error Lens&lt;/a&gt; 4/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Ftcfiehyp4psf0yum0i1k.png" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftcfiehyp4psf0yum0i1k.png" alt="Error Lens"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=GregorBiswanger.json2ts" rel="noopener noreferrer"&gt;Json2Ts&lt;/a&gt; 
Convert a JSON from clipboard to TypeScript interfaces. 3/5 ⭐&lt;/li&gt;
&lt;/ul&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=ahmadawais.shades-of-purple" rel="noopener noreferrer"&gt;Shades of Purple&lt;/a&gt; 
🦄 A professional theme suite with hand-picked &amp;amp; bold shades of purple for your VS Code editor and terminal apps. One of the excellent, most downloaded, and top-rated VSCode Themes on the marketplace. Part of VSCode.pro course. 4/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fu2i526r0kg9r1b6s2hmk.gif" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu2i526r0kg9r1b6s2hmk.gif" alt="Shades of Purple"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner" rel="noopener noreferrer"&gt;Code Runner&lt;/a&gt;
Run C, C++, Java, JS, PHP, Python, Perl, Ruby, Go, Lua, Groovy, PowerShell, CMD, BASH, F#, C#, VBScript, TypeScript, CoffeeScript, Scala, Swift, Julia, Crystal, OCaml, R, AppleScript, Elixir, VB.NET, Clojure, Haxe, Obj-C, Rust, Racket, Scheme, AutoHotkey, AutoIt, Kotlin, Dart, Pascal, Haskell, Nim. 4/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fbanrwd5iborj4o9rylvt.gif" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbanrwd5iborj4o9rylvt.gif" alt="Code Runner"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer" rel="noopener noreferrer"&gt;Bracket Pair Colorizer&lt;/a&gt;
This extension allows matching brackets to be identified with colours. The user can define which characters to match, and which colours to use. 5/5 ⭐&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Frt35rvvwqlf34w2h9cgz.png" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frt35rvvwqlf34w2h9cgz.png" alt="Bracket Pair Colorizer"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=wix.vscode-import-cost" rel="noopener noreferrer"&gt;Import Cost&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fc329ld579vviauo6rplj.gif" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc329ld579vviauo6rplj.gif" alt="Import Cost"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Bonus
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://marketplace.visualstudio.com/items?itemName=Lorenzo-Lupetti.break-time" rel="noopener noreferrer"&gt;Break Time&lt;/a&gt;
Set a timer and a message to remind you to take a break!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2F1ryei7ki3nqcwcx8kfxd.png" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ryei7ki3nqcwcx8kfxd.png" alt="Break Time"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=tonybaloney.vscode-pets" rel="noopener noreferrer"&gt;VS Code Pets&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fd3z6dhnmjgnq3azrn4fo.gif" class="article-body-image-wrapper"&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-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd3z6dhnmjgnq3azrn4fo.gif" alt="VS Code Pets"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>extensions</category>
      <category>productivity</category>
      <category>vscode</category>
      <category>markdown</category>
    </item>
    <item>
      <title>Cardenas VS code extension: Save and search algorithms</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Sun, 13 Feb 2022 16:27:30 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/cardenas-vs-code-extension-save-and-search-algorithms-2jdh</link>
      <guid>https://dev.to/juansemastrangelo/cardenas-vs-code-extension-save-and-search-algorithms-2jdh</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ON_yVb0B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y4qpxea6qi28h6marnpd.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ON_yVb0B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y4qpxea6qi28h6marnpd.jpg" alt="Image description" width="880" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hey there 👋 I’m &lt;a href="https://github.com/juansemastrangelo"&gt;Juanse&lt;/a&gt;, a frontend developer passionate about open source.&lt;/p&gt;

&lt;p&gt;I created an extension for visual studio code when you can search and save algorithms in any coding language. The project is Open Source and you can take a look the code &lt;a href="https://github.com/CardenasExtension/cardenas-client"&gt;here&lt;/a&gt; and the service &lt;a href="https://github.com/CardenasExtension/cardenas-service"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Usage
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=juansemastrangelo.cardenas"&gt;Download the extension.&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Save your code in a file clicking in “Upload code using Cardenas” at the right-bottom.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PALYO4YQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/88nctpu0l1bayni7exgs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PALYO4YQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/88nctpu0l1bayni7exgs.png" alt="Image description" width="342" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select if it is Template or Algorithm&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--e0UppBCt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lw6z1fc5pwua9w7onua7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--e0UppBCt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lw6z1fc5pwua9w7onua7.png" alt="Image description" width="837" height="203"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Set a description for your code to find easly in the search section.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--x7yv65Bh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0c3m2ww07brwv26wi75l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--x7yv65Bh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0c3m2ww07brwv26wi75l.png" alt="Image description" width="807" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Contributing
&lt;/h2&gt;

&lt;p&gt;Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.&lt;/p&gt;

&lt;p&gt;If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag “enhancement”. Don’t forget to give the project a star! Thanks again!&lt;/p&gt;

&lt;p&gt;Fork the Project&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create your Feature Branch (git checkout -b feature/AmazingFeature)&lt;/li&gt;
&lt;li&gt;Commit your Changes (git commit -m 'Add some AmazingFeature')&lt;/li&gt;
&lt;li&gt;Push to the Branch (git push origin feature/AmazingFeature)&lt;/li&gt;
&lt;li&gt;Open a Pull Request&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Thanks
&lt;/h2&gt;

&lt;p&gt;Awesome, you made it till the end! Thank you for reading, I hope you found something useful in here.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>MercadoLibre Clone Free Using React Native (ecommerce)</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Thu, 08 Jul 2021 13:49:33 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/mercadolibre-clone-using-react-native-4b6c</link>
      <guid>https://dev.to/juansemastrangelo/mercadolibre-clone-using-react-native-4b6c</guid>
      <description>&lt;p&gt;Free Download MercadoLibre Clone App&lt;br&gt;
&lt;a href="https://github.com/JuanseMastrangelo/MercadoLibreClone"&gt;https://github.com/JuanseMastrangelo/MercadoLibreClone&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7mSPoQ07--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b36c183xglov64p7u5hk.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7mSPoQ07--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b36c183xglov64p7u5hk.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;App Features:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Login with Google Auth&lt;/li&gt;
&lt;li&gt;Integration with MercadoPago. Enabled debit and credit card payments, or cash payments with rapipago y pagofacil. See more: &lt;a href="https://www.mercadopago.com.ar/ayuda/medios-de-pago-cuotas-promociones_264"&gt;https://www.mercadopago.com.ar/ayuda/medios-de-pago-cuotas-promociones_264&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Uploading and update products from the administration panel at &lt;a href="http://paback.host/"&gt;http://paback.host/&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--YwoAexlq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/smi0bpr5xk9dgos77zkm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--YwoAexlq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/smi0bpr5xk9dgos77zkm.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Shipments with any shipping service. (Correo Argentino, MercadoEnvio, Andreani, among others).&lt;/li&gt;
&lt;li&gt;Categories&lt;/li&gt;
&lt;li&gt;Universal. The application adapts to the country.&lt;/li&gt;
&lt;li&gt;Product statistics.&lt;/li&gt;
&lt;li&gt;Comments&lt;/li&gt;
&lt;li&gt;Real time chat with users to provide immediate attention.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>mercadolibre</category>
      <category>mercadolibreclone</category>
      <category>reactnative</category>
      <category>ecommerce</category>
    </item>
    <item>
      <title>Como crear un streaming con Android Studio</title>
      <dc:creator>Juanse Mastrangelo</dc:creator>
      <pubDate>Wed, 29 Jan 2020 09:27:00 +0000</pubDate>
      <link>https://dev.to/juansemastrangelo/como-crear-un-streaming-con-android-studio-21ne</link>
      <guid>https://dev.to/juansemastrangelo/como-crear-un-streaming-con-android-studio-21ne</guid>
      <description>&lt;p&gt;Hace unos dias cree un streaming para Android utilizando Android Studio con Kotlin como lenguajes, es resultado es mas que aceptable.&lt;br&gt;
Aquí te voy a enseñar como se hace.&lt;/p&gt;

&lt;p&gt;Para crear un streaming lo primero que necesitas es un servidor RTMP y un HTTP para esto usé Ngxinx el cual permite crear servidores;&lt;/p&gt;

&lt;p&gt;Demo:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mxyhP3Yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://github.com/TakuSemba/RtmpPublisher/raw/master/arts/sample.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mxyhP3Yi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://github.com/TakuSemba/RtmpPublisher/raw/master/arts/sample.gif" alt="Streaming con Android Studio"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Documentación del repositorio:&lt;br&gt;
Repositorio para Descargar gratis: &lt;a href="https://github.com/JuanseMastrangelo/Streaming-con-Android-RTMP"&gt;https://github.com/JuanseMastrangelo/Streaming-con-Android-RTMP&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dentro de la carpeta "nginx/conf" veremos un archivo llamado nginx.conf el cual almacena los servidores que necesitamos crear al ejecutar el servicio. Veremos que dentro hay un servidor HTTP (puerto: 81) y un RTMP (puerto: 1935).&lt;br&gt;
El streaming se realiza mediante el protocolo RTMP (Real Time Messaging Protocol - Protocolo de mensajería en tiempo real) el cual transfiere pequeños videos de x segundos al servidor de ngxinx guardando estos pequeños fragmentos de videos (.ts) en la carpeta "nginx/hls". Junto a estos archivos existe el principal con extensión .m3u8 el cual crea un lista de reproduccion interna para ordenar los fragmentos (.ts).&lt;br&gt;
El nombre de estos archivos de la carpeta "nginx/hls" se da a partir de la llamada a la url que vemos mas adelante.&lt;/p&gt;

&lt;p&gt;Luego tenemos el servidor HTTP el cual se encargará de extraer mediante el index.html (dentro de la carpeta "nginx/html") el archivo con extensión .m3u8 (dentro de la carpeta "nginx/hls") utilizando los servicios de video.js.&lt;/p&gt;

&lt;p&gt;Como podemos imaginar, el cliente desarrollado con Android Studio utilizando la libreria RtmpPublisher enviará los videos (.ts) al servidor utilizando la variable url en MainActivity.kt donde reemplazaremos ###.###.### por nuestra IPV4. Como vimos anteriormente el ejemplo de url posee en su ultima parte el nombre stream, este es el nombre por el cual se llamarán los archivos en el servidor (si se quiere cambiar tambien tienes que cambiar el index.html -&amp;gt; src de la etiqueta video).&lt;/p&gt;

&lt;p&gt;Instalación:&lt;br&gt;
Para instalar necesitamos tirar la carpeta nginx dentro del disco local C: y abrir con android Studio la carpeta dentro del .rar. Una vez abierto el projecto en Android necesitamos reemplazar de MainActivity.kt la variable url, donde está ###.###.### reemplazaremos por nuestra IPV4 (usar dentro de la console el comando: ipconfig para revelar nuestra ipv4). Una vez cambiada nuestro cliente Android ya esta listo para usarse.&lt;br&gt;
Para dar comienzo al servidor necesitaremos abrir una consola o terminal dirigirnos a donde tenemos el nginx, en este caso en usaremos el comando "cd C:/nginx". Luego colocaremos el comando nginx.exe para ejecutar el exe (esto lo hacemos para saber si hay errores) si no aparece nada en consola quiere decir que ya esta abierto el servidor exitosamente.&lt;/p&gt;

&lt;p&gt;Para ver nuestro stream necesitaremos comenzar a grabar con nuestro dispositivo Android y podemos mirarlo en la url: &lt;a href="http://localhost:81"&gt;http://localhost:81&lt;/a&gt;. Cabe mencionar que tiene un delay de 30 segundos asique tener paciencia.&lt;/p&gt;

&lt;p&gt;Si queremos enviar desde nuestra pc como hariamos en caso de un directo en Youtube o Facebook necesitaremos OBS (&lt;a href="https://obsproject.com/es"&gt;https://obsproject.com/es&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Para cerrar el servidor ejecutar el archivo stop.bat dentro de "C:/nginx".&lt;/p&gt;

&lt;p&gt;Muchas gracias por leer este articulo, cualquier consulta mi mail es &lt;a href="mailto:juansmastrangelo@gmail.com"&gt;juansmastrangelo@gmail.com&lt;/a&gt;&lt;/p&gt;

</description>
      <category>streaming</category>
      <category>android</category>
      <category>rtmp</category>
      <category>nginx</category>
    </item>
  </channel>
</rss>
