<?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: Brishav Shakya</title>
    <description>The latest articles on DEV Community by Brishav Shakya (@brishav).</description>
    <link>https://dev.to/brishav</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%2F1128195%2Fd32c3b79-909b-4d32-a98e-7de017338eab.jpeg</url>
      <title>DEV Community: Brishav Shakya</title>
      <link>https://dev.to/brishav</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/brishav"/>
    <language>en</language>
    <item>
      <title>CI/CD with Github for Flutter Web to CPanel</title>
      <dc:creator>Brishav Shakya</dc:creator>
      <pubDate>Fri, 28 Jul 2023 09:25:34 +0000</pubDate>
      <link>https://dev.to/brishav/cicd-with-github-for-flutter-web-to-cpanel-47bb</link>
      <guid>https://dev.to/brishav/cicd-with-github-for-flutter-web-to-cpanel-47bb</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Flutter web can be used to make responsive beautiful web application using canvaskit and html renderer. Flutter provides the best experience for a web application but deploying and hosting it can sometimes be a hectic way to make and host it again and again. For this CI/CD can be used with the help of gitub actions to make our life easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirement
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Install Flutter on your operating system.&lt;a href="https://docs.flutter.dev/get-started/install"&gt;Installation&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Download your preferred IDE such as VS Code or Android Studio&lt;/li&gt;
&lt;li&gt;Run the code in the terminal if all the required files and components are installed in your device.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;flutter doctor -v&lt;/code&gt; &lt;/p&gt;

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

&lt;ol&gt;
&lt;li&gt;Create a new project using command-line in terminal by creating a empty folder in your desired path &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;flutter create cicdflutterdemo&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can use Android Studio to directly create a project as well.&lt;/p&gt;

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

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

&lt;p&gt;This will run the command automatically and create an empty project for you.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a git repository in your project&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;git init&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git add.&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git commit -m "initial commit&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git remote add origin [copied web address]&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git push origin main&lt;/code&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Do create a repository inside Github to get the web address to push your project to.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;After that go to your CPanel login&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Go to FTP accounts&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a FTP credential&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;10 . After creating a FTP account go below you will see your FTP client below and click on to configure client&lt;/p&gt;

&lt;p&gt;&lt;code&gt;FTP Username: your_id_in_cpanel@demo.com&lt;br&gt;
FTP server: ftp.demo.com&lt;br&gt;
FTP &amp;amp; explicit FTPS port:  21&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;This will pop up. Copy your password and these setting that was generated.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Next go to your Github repository&lt;/li&gt;
&lt;li&gt;Go to GitHub action&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Create a new workflow file&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Copy this text to your workflow&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

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

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

&lt;p&gt;&lt;a href="https://gist.github.com/brishav/76e92e1b6251c075f470796654d8d339"&gt;CI/CD example&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;After that push your code to your repo &lt;/li&gt;
&lt;li&gt;You can manage the push and pull to which branch you want to use CI/CD &lt;/li&gt;
&lt;li&gt;In the example it is set to main. You can set it to other branches as well to activate it.
And we are done.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;So through this simple process we can easily use CI/CD with the help of Github action release our website made by flutter through IDE directly.&lt;/p&gt;

&lt;p&gt;So what's your way of hosting the website?&lt;/p&gt;

</description>
      <category>cicd</category>
      <category>githubactions</category>
      <category>flutter</category>
      <category>cpanel</category>
    </item>
    <item>
      <title>🩷 Need More love to Flutter Web</title>
      <dc:creator>Brishav Shakya</dc:creator>
      <pubDate>Fri, 28 Jul 2023 07:08:44 +0000</pubDate>
      <link>https://dev.to/brishav/need-more-love-to-flutter-web-1ghk</link>
      <guid>https://dev.to/brishav/need-more-love-to-flutter-web-1ghk</guid>
      <description>&lt;p&gt;Flutter is the emerging technology that developers are increasingly turning to when creating mobile applications. but as evident in the more recent market. Developers can now improve the website using the same code by using a new feature added to Flutter Web. &lt;br&gt;
Since I have been developing applications for the past 4 years, I have developed a strong interest in mobile applications. I began my adventure with Java, moved on to Kotlin, and have recently been following the lead of Flutter Development. Flutter has been quite beneficial and motivational for me, inspiring me to pursue both Android and iOS development.&lt;br&gt;
Flutter demonstrated to me how a simple application could be created with little expertise, less time, and greater output.&lt;br&gt;
I've been using this framework for more than a year at this point. It gave me hope that I could learn more from it. &lt;br&gt;
I've been experimenting with Flutter Web lately, and the results have been mixed. It excels at what it does, but more care is still needed to maximize the potential it has generated within mobile development. Flutter Web performs well on the web and the hosting aspect is also very simple and quick. The developer community can follow the very promising route that Flutter Web has demonstrated.&lt;br&gt;
These are a few of the web applications using the flutter framework that I have been working on and are still under development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://flutter.eventanything.com"&gt;Event Anything&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://brishavshakya.com.np"&gt;Personal Portfolio&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SWLlKbwJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/onk6ehccew7q4bnui8vy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SWLlKbwJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/onk6ehccew7q4bnui8vy.png" alt="Portfolio Image" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Enhancements
&lt;/h2&gt;

&lt;p&gt;Working on Flutter Web has seriously hindered the website's responsiveness, and neither a plugin nor a package appears to have a workable solution. Some of the essential plugins, like Listview and Gridview, require greater compatibility rather than relying on math to be responsive.&lt;br&gt;
Although certain packages have been seen to be constructed, they are not yet stable enough to work with.&lt;br&gt;
Flutter web can shine more like it has in the mobile zones if the devs can work on this and show a little more affection.&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>web</category>
      <category>seo</category>
    </item>
  </channel>
</rss>
