<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Pavan Kalyan on Medium]]></title>
        <description><![CDATA[Stories by Pavan Kalyan on Medium]]></description>
        <link>https://medium.com/@pavankalyan-c?source=rss-a678ffc92d47------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*mZZu8Eus1lydDR3SGLqZXw.png</url>
            <title>Stories by Pavan Kalyan on Medium</title>
            <link>https://medium.com/@pavankalyan-c?source=rss-a678ffc92d47------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 11:01:17 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@pavankalyan-c/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Building a Desktop application using Angular and Electron]]></title>
            <link>https://pavankalyan-c.medium.com/building-a-desktop-application-using-angular-and-electron-2e1b83a5643d?source=rss-a678ffc92d47------2</link>
            <guid isPermaLink="false">https://medium.com/p/2e1b83a5643d</guid>
            <category><![CDATA[angular]]></category>
            <category><![CDATA[web-app-development]]></category>
            <category><![CDATA[electron]]></category>
            <category><![CDATA[kanban-board]]></category>
            <category><![CDATA[javascript]]></category>
            <dc:creator><![CDATA[Pavan Kalyan]]></dc:creator>
            <pubDate>Wed, 10 Feb 2021 08:08:23 GMT</pubDate>
            <atom:updated>2021-07-28T17:12:47.251Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*6vKkdhAI566_plmtKZTtDg.png" /></figure><p>Hello Geeks! Web apps are on boom these days. Many of us develop small web apps while we are learning things. Have you had any thought of converting your web app into a fully installable Desktop app? What if a single app can serve both purposes? Yes, You are correct you can convert your web app into a Desktop application using this open-source framework called <a href="https://www.electronjs.org/"><strong>Electron</strong></a>.</p><p>First things first you need to build a web app using any of the frameworks you are comfortable with. Angular, React, Vue anything. Even you can use only plain HTML, CSS, and Vanilla JS (Pure Javascript lol).</p><p>As I am an Angular nerd I built a <a href="https://kanbanboards007.herokuapp.com/">Kanban Board</a> app using Angular.</p><p>Now build your web app using any web-pack builder (In angular <a href="https://cli.angular.io/"><strong><em>@angular/cli </em></strong></a>will do that for you).</p><pre>ng build --prod</pre><p>Now the above command will build your project into<strong> /dist </strong>folder</p><pre>dist/your-project-name</pre><p>Now let us get into the <strong>Electron</strong> part.</p><p>The official <a href="https://www.electronjs.org/docs/tutorial/quick-start">documentation</a> is clear. you can follow that or if you are too lazy to open a new tab :) just follow this.</p><pre>mkdir kanban-board &amp;&amp; cd kanban-board</pre><p>kanban-board is my app name. you can replace that with yours.</p><p>Initiating a package.json file in our folder,</p><pre>npm init -y</pre><p>Installing electron,</p><pre>npm i --save-dev electron</pre><p>Create a <strong>main.js</strong> file with the following content,</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/d4f2be224e1422d7afffec552fc72b96/href">https://medium.com/media/d4f2be224e1422d7afffec552fc72b96/href</a></iframe><p>Copy the dist folder of your project we built initially and paste it into the current project folder.</p><blockquote><em>Tweak for angular apps.</em></blockquote><blockquote><em>Replace </em><strong><em>&lt;base href=”/” /&gt;</em></strong><em> in index.html with </em><strong><em>&lt;base href=”./” /&gt;</em></strong></blockquote><p>The current project structure will be like</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/f6e09651448effe571cb9e154f600c4a/href">https://medium.com/media/f6e09651448effe571cb9e154f600c4a/href</a></iframe><p>Modifying package.json</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/dd1a59a74efd596b652f5c5e7f6177ea/href">https://medium.com/media/dd1a59a74efd596b652f5c5e7f6177ea/href</a></iframe><p>Now run,</p><pre>npm start</pre><p>Tada!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*yg0SJKumFaSEV_U00ZHgBw.png" /></figure><p>Your app will open in a new window that gives us feel like a native desktop application.</p><blockquote>Building electron project for installable file (.exe or .deb )</blockquote><pre>npx @electron-forge/cli import</pre><p>electron-forge will create a distributable file of our electron project.</p><p><strong>Building our electron app</strong></p><pre>npm run make</pre><p>This will create an appropriate distributable file according to your current operating system.</p><p>As I am using Linux(Ubuntu 16.04) it created a <strong>.deb </strong>file,</p><pre>out/make/deb/x64/kanban-board_1.0.0_amd64.deb</pre><p>Now we have an installable <strong>.deb </strong>file with us. we can use it to install it in our operating system.</p><blockquote>Installing .deb files in Linux</blockquote><pre>sudo dpkg -i kanban-board_1.0.0_amd64.deb</pre><p>Once the installation finishes up, you can open your installed application.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Zt8ABxgM9zK64vJ3LXdIFg.png" /></figure><p>This is all about Converting a web app into a desktop app using Electron. If you are stuck anywhere in between the whole process feel free to comment.</p><p><strong>Ps</strong>: This is my first Medium article 😃. suggestions are always welcomed 😉!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2e1b83a5643d" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>