<?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: Zainul</title>
    <description>The latest articles on DEV Community by Zainul (@zainulcain).</description>
    <link>https://dev.to/zainulcain</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%2F615310%2F4dd8a136-180b-4824-ba52-50fad5f84931.jpeg</url>
      <title>DEV Community: Zainul</title>
      <link>https://dev.to/zainulcain</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/zainulcain"/>
    <language>en</language>
    <item>
      <title>You can now run VS Code anywhere, even on your iPhone!</title>
      <dc:creator>Zainul</dc:creator>
      <pubDate>Tue, 25 Nov 2025 04:33:34 +0000</pubDate>
      <link>https://dev.to/zainulcain/you-can-now-run-vs-code-anywhere-even-on-your-iphone-with-pwas-4hn9</link>
      <guid>https://dev.to/zainulcain/you-can-now-run-vs-code-anywhere-even-on-your-iphone-with-pwas-4hn9</guid>
      <description>&lt;p&gt;Most developers think of &lt;strong&gt;Visual Studio Code (VS Code)&lt;/strong&gt; as a desktop-only app. You download it, install updates, and keep it open while you code. But here’s something many people don’t realize: you can now run VS Code on &lt;em&gt;any&lt;/em&gt; device, including your iPhone or iPad, straight from your browser.&lt;/p&gt;

&lt;p&gt;This is possible because &lt;strong&gt;VS Code is now available as a Progressive Web App (PWA)&lt;/strong&gt; - and yes, it works surprisingly well.&lt;/p&gt;




&lt;h2&gt;
  
  
  What’s a PWA and why it matters
&lt;/h2&gt;

&lt;p&gt;A &lt;strong&gt;Progressive Web App&lt;/strong&gt; is a web application that behaves like a native app. You can install it directly from your browser, it works offline, and it updates automatically. PWAs also launch from your home screen and feel just like any other installed app.&lt;/p&gt;

&lt;p&gt;Some quick reasons PWAs are awesome:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No app store required
&lt;/li&gt;
&lt;li&gt;No manual updates
&lt;/li&gt;
&lt;li&gt;Lighter than native apps
&lt;/li&gt;
&lt;li&gt;Works across Windows, macOS, Android, iOS, and Linux
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In short, PWAs let you use your favorite tools anywhere without the friction of traditional installs.&lt;/p&gt;




&lt;h2&gt;
  
  
  How to run VS Code and VS Code Insiders as PWAs
&lt;/h2&gt;

&lt;p&gt;Microsoft has quietly made this possible through two official web apps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://vscode.dev" rel="noopener noreferrer"&gt;&lt;strong&gt;VS Code (Stable)&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://insiders.vscode.dev" rel="noopener noreferrer"&gt;&lt;strong&gt;VS Code Insiders&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Both versions can be installed as PWAs and launched like native apps.  &lt;/p&gt;

&lt;p&gt;Here’s how to set it up:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open &lt;a href="https://vscode.dev" rel="noopener noreferrer"&gt;vscode.dev&lt;/a&gt; or &lt;a href="http://insiders.vscode.dev" rel="noopener noreferrer"&gt;insiders.vscode.dev&lt;/a&gt; in your browser.
&lt;/li&gt;
&lt;li&gt;Click the “Install App” icon that appears in the address bar.
&lt;/li&gt;
&lt;li&gt;That’s it! Now you can launch VS Code directly from your desktop or home screen.
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you’re using an iPhone or iPad, open it in Safari, tap the &lt;strong&gt;Share&lt;/strong&gt; icon, and select &lt;strong&gt;“Add to Home Screen.”&lt;/strong&gt; You’ll get a VS Code icon that opens a fully functional coding environment.&lt;/p&gt;

&lt;p&gt;Both versions work offline, support GitHub integration, and are ideal for quick edits or coding sessions on the go.&lt;/p&gt;

&lt;p&gt;You can also find both in &lt;a href="https://pwastore.io" rel="noopener noreferrer"&gt;&lt;strong&gt;PWA Store&lt;/strong&gt;&lt;/a&gt;, listed as &lt;a href="https://www.pwastore.io/app/visual-studio-code" rel="noopener noreferrer"&gt;&lt;strong&gt;Visual Studio Code&lt;/strong&gt;&lt;/a&gt; and &lt;a href="https://www.pwastore.io/app/visual-studio-code-insiders" rel="noopener noreferrer"&gt;&lt;strong&gt;Visual Studio Code Insiders&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Other trending PWAs you should try
&lt;/h2&gt;

&lt;p&gt;If you think running VS Code as a PWA is impressive, check out some other popular installable web apps from &lt;a href="https://pwastore.io" rel="noopener noreferrer"&gt;&lt;strong&gt;PWA Store&lt;/strong&gt;&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/monkeytype" rel="noopener noreferrer"&gt;Monkeytype&lt;/a&gt;&lt;/strong&gt; – A clean, highly customizable typing test to improve your speed and accuracy.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/wavemaker-cards-creative-writing-suite" rel="noopener noreferrer"&gt;Wavemaker Cards&lt;/a&gt;&lt;/strong&gt; – A creative writing suite with mind maps, timelines, and project planning tools.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/clara-mental-health-support" rel="noopener noreferrer"&gt;Clara&lt;/a&gt;&lt;/strong&gt; – A gentle space for mental health journaling and community support.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/photopea" rel="noopener noreferrer"&gt;Photopea&lt;/a&gt;&lt;/strong&gt; – A full-featured online photo editor that feels like Photoshop in your browser.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/tower-game" rel="noopener noreferrer"&gt;Tower Game&lt;/a&gt;&lt;/strong&gt; – A simple, addictive block-stacking game that runs offline.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/zoom" rel="noopener noreferrer"&gt;Zoom&lt;/a&gt;&lt;/strong&gt; – Join or host meetings instantly without any downloads.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://pwastore.io/app/openstreetmap" rel="noopener noreferrer"&gt;OpenStreetMap&lt;/a&gt;&lt;/strong&gt; – Explore and contribute to the world’s open map project.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can explore thousands more at &lt;a href="https://pwastore.io" rel="noopener noreferrer"&gt;&lt;strong&gt;PWA Store&lt;/strong&gt;&lt;/a&gt;, all installable in a single click.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why this shift matters
&lt;/h2&gt;

&lt;p&gt;PWAs are quietly changing how we use software. They remove friction: no app stores, no large downloads, and no forced updates. You just open your browser, install once, and it’s always ready.&lt;/p&gt;

&lt;p&gt;VS Code is a great example of what’s possible now - a full coding environment that runs anywhere, from any device. Combine that with tools like Monkeytype or Photopea, and you start to see how the web is becoming a true application platform.&lt;/p&gt;

&lt;p&gt;If you haven’t tried a PWA yet, start with &lt;a href="https://www.pwastore.io/app/visual-studio-code" rel="noopener noreferrer"&gt;&lt;strong&gt;VS Code on PWA Store&lt;/strong&gt;&lt;/a&gt; or &lt;a href="https://www.pwastore.io/app/visual-studio-code-insiders" rel="noopener noreferrer"&gt;&lt;strong&gt;VS Code Insiders&lt;/strong&gt;&lt;/a&gt; and see how far the web has come.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>pwa</category>
      <category>vscode</category>
      <category>programming</category>
    </item>
    <item>
      <title>Installing Flutter 2.0 on MacOS(Big Sur)</title>
      <dc:creator>Zainul</dc:creator>
      <pubDate>Thu, 15 Apr 2021 23:17:19 +0000</pubDate>
      <link>https://dev.to/zainulcain/installing-flutter-2-0-on-macos-big-sur-2756</link>
      <guid>https://dev.to/zainulcain/installing-flutter-2-0-on-macos-big-sur-2756</guid>
      <description>&lt;p&gt;I've been through the pain of installing flutter recently. Theres almost no resources online that is up-to-date. &lt;/p&gt;

&lt;p&gt;This is article would get you started with Flutter 2.0 right away. &lt;/p&gt;

&lt;p&gt;Install Homebrew&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/bin/bash &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Pick one. I personally use VS code.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; android-studio

OR

brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; visual-studio-code
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Use Homebrew to install asdf, Android SDK, haxm and JDK8.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install &lt;/span&gt;asdf
brew &lt;span class="nb"&gt;install &lt;/span&gt;android-sdk
brew &lt;span class="nb"&gt;install &lt;/span&gt;intel-haxm
brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; homebrew/cask-versions/adoptopenjdk8
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Add the plugin for dart, flutter and ruby to asdf.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;asdf plugin-add dart https://github.com/patoconnor43/asdf-dart.git
asdf plugin-add flutter
asdf plugin-add ruby https://github.com/asdf-vm/asdf-ruby.git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Now you can install dart, flutter and ruby with asdf.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;asdf &lt;span class="nb"&gt;install &lt;/span&gt;dart latest
asdf &lt;span class="nb"&gt;install &lt;/span&gt;flutter latest
asdf &lt;span class="nb"&gt;install &lt;/span&gt;ruby latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Take note of the installed versions by running this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;asdf list dart
asdf list flutter
asdf list ruby
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Run the following in order to set the global runtimes. &lt;br&gt;
&lt;em&gt;NOTE: Please replace my version with your results from the previous part.&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;asdf global dart 2.12.4
asdf global flutter 2.0.4-stable
asdf global ruby 3.0.1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  Lets put everything together and set things up.
&lt;/h3&gt;

&lt;p&gt; &lt;br&gt;
Open up your bash or zsh rc file&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;vim &lt;span class="nv"&gt;$HOME&lt;/span&gt;/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Add the following into your rc file in order to allow your system to run the flutter command so it is able to locate your Android SDK.&lt;br&gt;
&lt;em&gt;NOTE: replace 'zainulcain' with your own username&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;PATH&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$PATH&lt;/span&gt;&lt;span class="s2"&gt;:/Users/zainulcain/.asdf/installs/flutter/2.0.4-stable/bin"&lt;/span&gt;
&lt;span class="nb"&gt;export &lt;/span&gt;&lt;span class="nv"&gt;ANDROID_SDK_ROOT&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"/usr/local/share/android-sdk"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;press [esc],  save and exit your rc file by typing ':wq'&lt;/p&gt;

&lt;p&gt; &lt;br&gt;
Next you'll need to set up cocoapods.&lt;br&gt;
&lt;/p&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;gem &lt;span class="nb"&gt;install &lt;/span&gt;cocoapods
pod setup
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  Lets accept the iOS and Android Licenses
&lt;/h3&gt;

&lt;p&gt; &lt;br&gt;
iOS License&lt;br&gt;
&lt;/p&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;xcodebuild &lt;span class="nt"&gt;-license&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Android License&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;touch&lt;/span&gt; ~/.android/repositories.cfg
flutter doctor &lt;span class="nt"&gt;--android-licenses&lt;/span&gt;
sdkmanager &lt;span class="nt"&gt;--update&lt;/span&gt;
sdkmanager &lt;span class="s2"&gt;"platform-tools"&lt;/span&gt; &lt;span class="s2"&gt;"platforms;android-29” "&lt;/span&gt;build-tools&lt;span class="p"&gt;;&lt;/span&gt;28.0.3&lt;span class="s2"&gt;"
flutter config --android-sdk /usr/local/share/android-sdk
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt; &lt;br&gt;
Congratulations ! If you've done everything correctly, you can run this to confirm that everything is in working order.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;flutter doctor &lt;span class="nt"&gt;-v&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you've enjoyed this, do give me a follow for more interesting articles :)&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>dart</category>
      <category>pwa</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
