<?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: Lahiru Udawaththa</title>
    <description>The latest articles on DEV Community by Lahiru Udawaththa (@lahiruroot).</description>
    <link>https://dev.to/lahiruroot</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%2F401786%2F4b1e2078-6e2a-4eed-b47c-517c3f054dd5.jpeg</url>
      <title>DEV Community: Lahiru Udawaththa</title>
      <link>https://dev.to/lahiruroot</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lahiruroot"/>
    <language>en</language>
    <item>
      <title>Flutter Login and Sing Up form</title>
      <dc:creator>Lahiru Udawaththa</dc:creator>
      <pubDate>Thu, 08 Oct 2020 15:50:53 +0000</pubDate>
      <link>https://dev.to/lahiruroot/flutter-login-and-sing-up-form-2g5e</link>
      <guid>https://dev.to/lahiruroot/flutter-login-and-sing-up-form-2g5e</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%2Fi%2F8ra8zlocenlpwo0n3z2v.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%2Fi%2F8ra8zlocenlpwo0n3z2v.png" alt="Alt Text" width="800" height="1600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;//Coding Start

import 'package:flutter/material.dart';
import 'package:signup_ui/Screens/HomeScreen.dart';
import 'Screens/SignInScreen.dart';
import 'Screens/SignUPScreen.dart';

void main() =&amp;gt; runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Sign Up Screen ',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.indigo,
      ),
      initialRoute: 'SignIn',
      routes: {
        'SignIn':(context)=&amp;gt;SignInScreen(),
         'SignUp':(context)=&amp;gt;SignUpScreen(),
         'Home':(context)=&amp;gt;HomeScreen(),
      },
    );
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;//Coding end&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>dart</category>
      <category>opensource</category>
      <category>googlecloud</category>
    </item>
    <item>
      <title>Building ListView in Flutter</title>
      <dc:creator>Lahiru Udawaththa</dc:creator>
      <pubDate>Fri, 12 Jun 2020 10:01:58 +0000</pubDate>
      <link>https://dev.to/lahiruroot/building-listview-in-flutter-4jj2</link>
      <guid>https://dev.to/lahiruroot/building-listview-in-flutter-4jj2</guid>
      <description>&lt;p&gt;Introduction&lt;/p&gt;

&lt;p&gt;In this article we are investigate about Flutter ListView Buildere   Material Design Flutter App,you can learn about design how easy it is to make ListViews in Flutter.&lt;/p&gt;

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

&lt;p&gt;Setting up Flutter&lt;br&gt;
First Steps with Flutter: Exploring widgets&lt;br&gt;
First Steps with Flutter: Building layouts&lt;br&gt;
First Steps with Flutter: Responding to user input&lt;/p&gt;

&lt;p&gt;Project Setup &lt;br&gt;
Start a new flutter project using Android studio or Visual studio code.&lt;br&gt;
In android studio you can start new flutter project using this menu&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--I6-tbM4r--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/2r4vys4ysty8tptneskq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--I6-tbM4r--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/2r4vys4ysty8tptneskq.png" alt="Alt Text" width="800" height="536"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In visual Studio code You can star a new project using "Command plate"&lt;br&gt;
click on "view" tab and select "Command plate". and type " Flutter"&lt;br&gt;
and select "Flutter_new project"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VB1bulb0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/obr00ujrl9vv190hlywh.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VB1bulb0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/obr00ujrl9vv190hlywh.jpg" alt="Alt Text" width="800" height="231"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter your project name.."flutter_listview"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VivU4bky--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/0nrxck3gl234zm20tpzp.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VivU4bky--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/0nrxck3gl234zm20tpzp.jpg" alt="Alt Text" width="800" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open main.dart and replace the code with the following code&lt;/p&gt;


&lt;div class="glitch-embed-wrap"&gt;
  &lt;iframe src="https://glitch.com/embed/#!/embed/earthy-import?path=index.html" alt="earthy-import on glitch"&gt;&lt;/iframe&gt;
&lt;/div&gt;


&lt;p&gt;And next Click on your terminal tab and Select "New terminal"&lt;br&gt;
type this - 'flutter run'&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--z5a91UhV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3zirap44g7b53axe96we.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--z5a91UhV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/3zirap44g7b53axe96we.jpg" alt="Alt Text" width="800" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The children of the ListView were ListTiles. A ListTile is a special widget that is preconfigured to handle the most common layouts that you would want in a ListView.&lt;/p&gt;

</description>
      <category>flutter</category>
    </item>
    <item>
      <title>Stateless and Stateful widgets 👩_💻👨_💻</title>
      <dc:creator>Lahiru Udawaththa</dc:creator>
      <pubDate>Sun, 07 Jun 2020 06:19:22 +0000</pubDate>
      <link>https://dev.to/lahiruroot/stateless-and-stateful-widgets---3766</link>
      <guid>https://dev.to/lahiruroot/stateless-and-stateful-widgets---3766</guid>
      <description>&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%2Fi%2Feflegs3y3eikb5e4bdbg.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%2Fi%2Feflegs3y3eikb5e4bdbg.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In flutter programming there two kind of widgets.&lt;br&gt;
*STATELESS&lt;br&gt;
*STATEFUL&lt;/p&gt;

&lt;p&gt;But before we get into what Stateless and Stateful, we need to understand what is the State of this. &lt;br&gt;
The simplest way to put it, State is something that can change within a widget.&lt;/p&gt;

&lt;p&gt;Stateless widgets- This widgets never changes.&lt;br&gt;
"Icons,Buttons,Icon button,Colors and text" are examples for stateless widget...&lt;/p&gt;

&lt;p&gt;Stateful widgets- Dynamic,This widget can be change,Its appearance in response to event trigger by user interactions.&lt;br&gt;
when STF(stateful widget) receives data.&lt;br&gt;
Checkbox,Radio,Slider,Form,Text Field are some examples for STF(stateful widget).&lt;/p&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%2Fi%2F1c1bagnmfmc53wzte2u6.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%2Fi%2F1c1bagnmfmc53wzte2u6.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow this 4 step and create Stateful widgets.&lt;/p&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%2Fi%2Ffqco0kr23sf1iuvearan.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%2Fi%2Ffqco0kr23sf1iuvearan.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Step 1: Decide which object manages the widget’s state&lt;br&gt;
Step 2: Subclass Stateful Widget&lt;br&gt;
Step 3: Subclass State&lt;br&gt;
Step 4: Plug the stateful widget into the widget tree&lt;/p&gt;

&lt;p&gt;More Detail visite.:-&lt;a href="https://flutter.dev/docs/development/ui/interactive" rel="noopener noreferrer"&gt;https://flutter.dev/docs/development/ui/interactive&lt;/a&gt;&lt;/p&gt;

</description>
      <category>flutterinteractivity</category>
    </item>
    <item>
      <title>AMP</title>
      <dc:creator>Lahiru Udawaththa</dc:creator>
      <pubDate>Thu, 04 Jun 2020 11:25:33 +0000</pubDate>
      <link>https://dev.to/lahiruroot/amp-2856</link>
      <guid>https://dev.to/lahiruroot/amp-2856</guid>
      <description>&lt;p&gt;Wooh...The another opensource framework of Google.&lt;br&gt;
AMP is an open source HTML framework developed by the AMP Open Source Project. It was originally created by Google as a competitor to Facebook Instant Articles and Apple News.&lt;br&gt;
AMP is optimised for mobile web browsing and intended to help webpages load faster (light weight Super fast).&lt;/p&gt;

&lt;p&gt;Google Search recently announced a new Search ranking signal centered around page experience. We’re excited by the potential for Google’s page experience signal to guide and empower developers to build a better web. Because AMP was developed to help enable development of user-first sites,  we believe AMP is a cost-effective and simple solution for publishers to create a great page experience. In today’s post, we want to step through what the announced changes to Google Search mean for the AMP community as well as the web ecosystem.&lt;/p&gt;

&lt;p&gt;Google’s continued investment in AMP&lt;br&gt;
Google will continue to invest in AMP, and strongly believes in the AMP Project’s goal to make it easy to create web pages that provide a great user experience. When available, Google Search will continue to direct users to the AMP versions of web pages in the mobile Top Stories feature. This behavior keeps in place hallmarks of the AMP experience, such as privacy-preserving pre-rendering that can happen when content is served from an AMP cache. This also means that the page experience signal for a given search result will be evaluated based on the performance of the AMP page when available.&lt;/p&gt;

&lt;p&gt;The AMP Project will continue to focus on creating strong page experiences. AMP’s always up-to-date “evergreen” release schedule means AMP users will get future performance benefits as we make them, without investing additional engineering resources..&lt;/p&gt;

&lt;p&gt;How to AMP Works.&lt;br&gt;
The following optimizations combined are the reason AMP pages are so fast they appear to load instantly.&lt;/p&gt;

&lt;p&gt;01) Execute all AMP JavaScript asynchronously&lt;br&gt;
02) Size all resources statically&lt;br&gt;
03) Don’t let extension mechanisms block rendering &lt;br&gt;
04) Keep all third-party JavaScript out of the critical path&lt;br&gt;
05) All CSS must be inline and size-bound&lt;br&gt;
06) Font triggering must be efficient&lt;br&gt;
07) Minimize style recalculations&lt;br&gt;
08) Only run GPU-accelerated animations&lt;br&gt;
09) Prioritize resource loading&lt;br&gt;
10) Load pages in an instant&lt;/p&gt;

&lt;p&gt;Details By: &lt;a href="https://amp.dev/"&gt;https://amp.dev/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
