<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mirazoqui, Author at asap developers</title>
	<atom:link href="https://www.asapdevelopers.com/author/mirazoqui/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.asapdevelopers.com/author/mirazoqui/</link>
	<description>San Francisco Mobile App Developers</description>
	<lastBuildDate>Fri, 06 Nov 2020 18:55:09 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1.1</generator>

<image>
	<url>https://www.asapdevelopers.com/wp-content/uploads/2017/04/favicon-asap-1.png</url>
	<title>Mirazoqui, Author at asap developers</title>
	<link>https://www.asapdevelopers.com/author/mirazoqui/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Python vs Node.js</title>
		<link>https://www.asapdevelopers.com/python-vs-nodejs/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Fri, 10 May 2019 12:43:42 +0000</pubDate>
				<category><![CDATA[Node.js]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9849</guid>

					<description><![CDATA[<p>Which framework should you choose? Python vs Node.js: Choosing a language for back-end development is very important, as you will be using it to create your server-side applications. The server-side...</p>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/python-vs-nodejs/">Python vs Node.js</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><strong>Which framework should you choose?</strong></h2>
<p><span style="font-weight: 400;">Python vs Node.js: Choosing a language for back-end development is very important, as you will be using it to create your server-side applications. The server-side is the engine that makes your application run; it will determine the performance and scalability of your application, in addition to other very important factors.</span></p>
<p><span style="font-weight: 400;">When it comes to building a project, there isn’t a one-fits-all solution, but we hope to provide you with enough information to help you make a decision on which software will adapt better to your needs. So today, we’ll compare Python vs Node.js in order to give you a better idea of what both are capable of and what kind of projects they work best for.</span></p>
<p><span style="font-weight: 400;">Python is an object-oriented high-level language and it can be used for general purpose programming language.Node.js is an environment that allows JavaScript code to run on the server side and not on a browser. It is based on Chrome’s V8 Engine, which runs on Google Chrome.</span></p>
<p><span style="font-weight: 400;"><img decoding="async" loading="lazy" class="aligncenter wp-image-9859 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/forest-path-238887.jpg" alt="Which path should you choose?" width="800" height="450" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/forest-path-238887.jpg 800w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/forest-path-238887-300x169.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/forest-path-238887-768x432.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/forest-path-238887-610x343.jpg 610w" sizes="(max-width: 800px) 100vw, 800px" /></span></p>
<p><span style="font-weight: 400;">Now let’s talk a closer look at the various aspects to consider when comparing Python vs Node.js:</span></p>
<h2><strong>Performance</strong></h2>
<p><span style="font-weight: 400;">Performance defines the speed of your back-end server responses, and that will depend, of course, on how fast your code is executed. Many studies have proven that Node.js is faster than Python. That’s because Node.js is based on Chrome’s V8 which is a very powerful and fast engine.</span></p>
<p><span style="font-weight: 400;">This means Node.js is an ideal solution for developing messaging or chat applications. It is also useful for <a href="https://www.asapdevelopers.com/python-development-company/">developing heavy-load applications</a> and e-commerce sites that depend on processing speed.</span></p>
<h2><strong>Usability</strong></h2>
<p><span style="font-weight: 400;">When it comes to comparing the amount of code that developers need to write, Python requires fewer lines of code. It is also an ideal solution for large projects due to its clean code standards, which Node.js lacks.</span></p>
<p><span style="font-weight: 400;">On the other hand, Node.js is pure JavaScript, meaning it remains basic and simple for developers to learn. It can also be used both on front-end and back-end, meaning developers don&#8217;t need to learn an entire new language with its own paradigms in order to program.</span></p>
<h2><strong>Versatility</strong></h2>
<p><span style="font-weight: 400;">Python is one of the most versatile programming languages suited for web development, artificial intelligence, machine learning, data analysis, etc. Although JavaScript is also good for web development, it is not well-suited for other future trends.</span></p>
<h2><strong>Error handling</strong></h2>
<p><span style="font-weight: 400;">Handling errors is one of the biggest activities that developers need to deal with. Both </span><a href="https://da-14.com/blog/seven-reasons-choose-nodejs-your-startup"><span style="font-weight: 400;">Node.js</span></a><span style="font-weight: 400;"> and Python deal well with throwing and catching exceptions, that is, errors occurring during code execution. Python takes significantly less time and debugging in Python is also fairly easy compared to Node.js. So, when it comes to error handling and debugging, Python trumps Node.js.</span></p>
<h2><strong><img decoding="async" loading="lazy" class="aligncenter wp-image-9856 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs.jpg" alt="Python vs Node.js" width="1920" height="550" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs.jpg 1920w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs-300x86.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs-768x220.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs-1024x293.jpg 1024w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-phyton-vs-nodejs-610x175.jpg 610w" sizes="(max-width: 1920px) 100vw, 1920px" /></strong></h2>
<h2><strong>Conclusion of Python vs </strong><strong>Node.js</strong></h2>
<p><span style="font-weight: 400;">We can’t say one language is better than the other. The reality is that you should think carefully about what you are trying to achieve, what your application needs to support and if either of these languages </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> or any other language </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> can adapt to your needs.</span></p>
<p><span style="font-weight: 400;">Both Node.js and Python have big communities so, if any issue arises, you can easily search for a solution to your problem or simply ask the community.</span></p>

		<div id="fws_6939763088d6a"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row top-level standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/los-angeles-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/python-vs-nodejs/">Python vs Node.js</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Fixing the Next.js Service Worker issue &#8211; Next.js SEO</title>
		<link>https://www.asapdevelopers.com/service-worker-issue-nextjs-framework/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Fri, 26 Apr 2019 11:46:39 +0000</pubDate>
				<category><![CDATA[React]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9841</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/service-worker-issue-nextjs-framework/">Fixing the Next.js Service Worker issue &#8211; Next.js SEO</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_6939763089a82"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><b>Fixing the Service Worker issue when you rewrite a React app using the Next.js framework</b></h2>
<p><span style="font-weight: 400;">Do you have a React app already deployed on a web server and realized that your app is not ranking at all in any web search engine? Are you thinking about rewriting your app to improve its SEO (search engine optimization)? If you are, you might be thinking about using the <a href="https://nextjs.org/">Next.js</a> framework, but before you dive into it, we’d like to walk you through the Next.js Service Worker issue, which can be a pain in the neck!</span></p>
<h2><b><img decoding="async" loading="lazy" class="aligncenter wp-image-9847 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/next_js.png" alt="Next.js Framework Logo" width="224" height="224" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/next_js.png 224w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/next_js-150x150.png 150w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/next_js-100x100.png 100w" sizes="(max-width: 224px) 100vw, 224px" /></b></h2>
<h2><b>Let’s start with the basics</b></h2>
<p><span style="font-weight: 400;">Let’s start with a brief introduction to React, <a href="https://nextjs.org/">Next.js</a> and Service Worker. React is a JavaScript library used to build user interfaces; in technical terms, it’s a front-end framework that runs on the client side. Next.js is a JavaScript framework that lets you render React apps but on the server side. Finally, a </span><b><i>Service Worker</i></b><span style="font-weight: 400;"> is a JavaScript file that runs on the browser in a background thread intercepting and handling network requests and caching or retrieving some resources from the cache. It is also independent of the application that it’s associated with. We could continue discussing general concepts, but let’s get right to the reason you’re here.</span></p>
<h2><b>The issue</b></h2>
<p><span style="font-weight: 400;">When <a href="https://www.asapdevelopers.com/los-angeles-react-native-developers/">we create a React app</a>, a Service Worker is invoked by default, so even if we unregister the Service Worker before deploying the React app using Next.js, we must make sure that every browser removed the Service Worker. Otherwise, we will have to fix an unexpected issue because Next.js does not use Service Workers </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> remember that Next.js runs on the server side </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> and it also stores static files in a different location so, if we don’t update it, the browser will continue using it in order to access to wrong static file paths </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> e.g. images. The only way to avoid this issue is unregistering the Service Worker before deploying the React app. However, this makes no sense because if we create a React app, we will want to have a good performance and, in order to achieve that, we need a Service Worker.</span></p>
<h2><b><img decoding="async" loading="lazy" class="aligncenter wp-image-9846 size-large" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs-1024x293.jpg" alt="Service Worker issue - Next.js Framework" width="1024" height="293" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs-1024x293.jpg 1024w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs-300x86.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs-768x220.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs-610x175.jpg 610w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/asap_header-react-nextjs.jpg 1920w" sizes="(max-width: 1024px) 100vw, 1024px" /></b></h2>
<h2><b>The solution</b></h2>
<p><span style="font-weight: 400;">To solve this, the idea is to unregister the Service Worker of our React app so the browser can remove it. To do that, we have to create a Service Worker on the root of the Next.js project and add an EventListener </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> on any loaded page </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> to remove this file from the browser. Once we do this, we can be sure that next time a browser makes a request, it will be updated. Another important thing to note is that browsers need to close all the Service Worker’s instances associated with our app to apply the changes.</span></p>
<p><script src="https://gist.github.com/gonzalolarrosa/2b1957c04659f60990c54a8371248ae9.js"></script></p>
<h2><b>A final note</b></h2>
<p><span style="font-weight: 400;">We hope this workaround was useful and saves time for other React developers. But before you decide to rewrite a React app using Next.js to make it SEO friendly, keep in mind that it may not be the best option, especially if you are using </span><b><i>Redux/Sagas </i></b><span style="font-weight: 400;">to manage the app stored. Next.js was optimized for </span><b><i>Apollo</i></b> <span style="font-weight: 400;">—</span><span style="font-weight: 400;"> one of the <a href="https://www.asapdevelopers.com/apollo-graphql-react-tutorial/">best </a></span><b><i>GraphQL</i></b><span style="font-weight: 400;"> clients </span><span style="font-weight: 400;">—</span><span style="font-weight: 400;"> to create HTTP requests and manage the app stored. It also has one more restriction: the environment variables can not be accessed in the client side with all that this implies.</span></p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_6939763089cbf"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/los-angeles-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/service-worker-issue-nextjs-framework/">Fixing the Next.js Service Worker issue &#8211; Next.js SEO</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to setup a WordPress blog with AWS CloudFront</title>
		<link>https://www.asapdevelopers.com/wordpress-aws-cloudfront/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Tue, 02 Apr 2019 02:35:01 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9706</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/wordpress-aws-cloudfront/">How to setup a WordPress blog with AWS CloudFront</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308a992"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><b>Add a blog to your website to improve its SEO ranking</b></h2>
<p><span style="font-weight: 400;">With the rise of the Internet and social media, blogging has become a big part of running a business regardless of the industry. More and more companies are adding blogs to their websites that include articles with tips, news, and interesting information about their fields in an attempt to build on their SEO. Today, we’d like to discuss the importance of having a blog and talk you through the technical difficulties of implementing it with AWS CloudFront, offering a possible solution.</span></p>
<h2><b><img decoding="async" loading="lazy" class="aligncenter wp-image-9743 size-large" src="https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO-1024x293.jpg" alt="How to setup a blog with AWS CloudFront" width="1024" height="293" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO-1024x293.jpg 1024w, https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO-300x86.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO-768x220.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO-610x175.jpg 610w, https://www.asapdevelopers.com/wp-content/uploads/2019/03/asap_header_SEO.jpg 1920w" sizes="(max-width: 1024px) 100vw, 1024px" /></b></h2>
<h2><b>Why is blogging important?</b></h2>
<p><span style="font-weight: 400;">There are many reasons to have a blog in the current business world. A blog not only helps keep your website fresh and current, but it also encourages visitors to stay longer and lets you connect you with your audience. This, together with the fact that blogging helps you grow your keyword base and focus on long-tail keywords, makes blogs an excellent strategy to improve your website’s SEO ranking. Blogging is essential for SEO because it helps with the different aspects that search engines consider important, thus, attracting more users to your site. You should keep in mind including images and video will also improve SEO since search engines will give more relevance to that kind of content and that articles should include share buttons for social networks to generate backlinks (links from external sites to your site).  </span></p>
<h2><b>Technical challenges when adding a blog</b></h2>
<p><span style="font-weight: 400;">It’s important to understand that, to get the most out of a blog, its pages should be hosted under the same domain as the website itself. Some websites use a subdomain just for their blog which is not as advantageous as having the articles as paths on the original domain. For instance, articles hosted in </span><span style="font-weight: 400;">www.mywebsite.com/blog/article1</span><span style="font-weight: 400;"> will get better SEO results than </span><span style="font-weight: 400;">blog.mywebsite.com/article1</span><span style="font-weight: 400;">.</span></p>
<p><span style="font-weight: 400;">However, having blog articles in the same domain is not as easy as it seems. In general, we can divide the site into two sections: the site itself, with the core features, and the blog articles. The website features will be implemented by <a href="https://www.asapdevelopers.com/web-mobile-app-san-francisco/">web developers</a> and the blog articles can be written on a blogging platform like WordPress, Blogger or Medium. So, the question is: How can we merge those two sources of information into a single website? To solve that problem, we can create a reverse proxy. In this kind of proxy,</span><span style="font-weight: 400;"> the server </span><span style="font-weight: 400;">directs client requests to the appropriate back-end server without doing a redirect.</span></p>
<h2><b>How to implement a reverse proxy with AWS CloudFront</b></h2>
<p><span style="font-weight: 400;">Let’s take a look at how to implement a reverse proxy through an example using Amazon Web Services (AWS). We’ll be working with a website hosted on S3 (it could be an Angular, Vue or React project) and an external blogging platform like WordPress. The site is distributed using AWS CloudFront in </span><a href="http://www.mywebsite.com"><span style="font-weight: 400;">www.mywebsite.com</span></a><span style="font-weight: 400;"> and the blog is hosted on a different domain: </span><span style="font-weight: 400;">www.myblog.com.</span></p>
<p><span style="font-weight: 400;">First, we need to update the blog articles since all links </span><span style="font-weight: 400;">must redirect to the new blog’s URL: </span><span style="font-weight: 400;">www.mywebsite.com/blog</span><span style="font-weight: 400;"> instead of </span><span style="font-weight: 400;">www.myblog.com</span><span style="font-weight: 400;">. After that, we can create a new origin on AWS CloudFront. Right now we only have one origin, the S3 bucket where we are hosting the website, so, we need to create a second origin: the external blog site. </span></p>
<p><span style="font-weight: 400;"><img decoding="async" loading="lazy" class="aligncenter wp-image-9794 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront.jpg" alt="Reverse proxy with AWS" width="560" height="326" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront.jpg 560w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront-300x175.jpg 300w" sizes="(max-width: 560px) 100vw, 560px" /></span></p>
<p><span style="font-weight: 400;">Having two different origins will allow us to work some magic. For instance, when users go to </span><a href="http://www.mywebsite.com/blog/article1"><span style="font-weight: 400;">www.mywebsite.com/blog/article1</span></a><span style="font-weight: 400;">, we’ll show the content from the blog site, but keep the same URL the user entered. That will drastically improve the website’s SEO.</span></p>
<p><span style="font-weight: 400;"><img decoding="async" loading="lazy" class="aligncenter wp-image-9795 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_02.jpg" alt="AWS CloudFront - Origins and Origin Groups" width="523" height="295" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_02.jpg 523w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_02-300x169.jpg 300w" sizes="(max-width: 523px) 100vw, 523px" /></span></p>
<p><span style="font-weight: 400;">The next step is really simple: we need to create a new AWS CloudFront behavior to tell the CDN that every URL containing the </span><span style="font-weight: 400;">/blog</span><span style="font-weight: 400;"> path pattern needs to use the blog origin we previously created.</span></p>
<p><span style="font-weight: 400;"><img decoding="async" loading="lazy" class="aligncenter wp-image-9796 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_03.jpg" alt="AWS CloudFront - Create Behavior" width="628" height="569" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_03.jpg 628w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_03-300x272.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_03-610x553.jpg 610w" sizes="(max-width: 628px) 100vw, 628px" /></span></p>
<p><span style="font-weight: 400;">It’s important to note that AWS CloudFront will not strip paths, so if we are asking for article logs under </span><span style="font-weight: 400;">www.mywebsite.com/blog/</span><span style="font-weight: 400;">, the original article on the blog platform needs to be hosted under </span><span style="font-weight: 400;">/blog</span><span style="font-weight: 400;"> as well, for example, </span><a href="http://www.myblog.com/blog/article1"><span style="font-weight: 400;">www.myblog.com/blog/article1</span></a></p>
<p><span style="font-weight: 400;">In some cases, other behaviors could be required. If we are using WordPress for the blog, we need to add a couple of extra behaviors to map the </span><span style="font-weight: 400;">wp-content</span><span style="font-weight: 400;"> and </span><span style="font-weight: 400;">wp-includes</span> <span style="font-weight: 400;">URLs. Otherwise, the proxy will try to look for those WordPress URLs on the front-end project code, returning a &#8220;Not Found&#8221; error.</span></p>
<p><span style="font-weight: 400;">This is how the final configuration will look like using WordPress:</span></p>
<p><span style="font-weight: 400;"><img decoding="async" loading="lazy" class="aligncenter wp-image-9797 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_04.jpg" alt="AWS CloudFront - Change Precedence" width="628" height="196" srcset="https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_04.jpg 628w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_04-300x94.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2019/04/Blog_AWS_CloudFront_04-610x190.jpg 610w" sizes="(max-width: 628px) 100vw, 628px" /></span></p>
<p><span style="font-weight: 400;">And that’s it! Now we need to wait until the AWS CloudFront changes are propagated all over the world. In the days after implementing these changes, you’ll see the website’s SEO greatly improve.</span></p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308abcf"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/react-native-san-francisco/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/wordpress-aws-cloudfront/">How to setup a WordPress blog with AWS CloudFront</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Jest Snapshot: Testing a React web app using Jest and Enzyme</title>
		<link>https://www.asapdevelopers.com/jest-snapshot-testing-enzyme-react/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Mon, 17 Dec 2018 13:48:10 +0000</pubDate>
				<category><![CDATA[Testing]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9525</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/jest-snapshot-testing-enzyme-react/">Jest Snapshot: Testing a React web app using Jest and Enzyme</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308b290"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><strong>Jest Snapshot testing</strong></h2>
<p>Today, we will talk about a useful tool called <strong>Jest Snapshot</strong>. This feature is the best option to make sure that our UI component does not change for no reason. We can also use <strong>Jest Snapshots</strong> as an ally to have unit tests that are cleaner and more maintainable, something that any developer will love.</p>
<h2><strong><img decoding="async" loading="lazy" class="aligncenter wp-image-9530 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2018/12/JestSnapshot.jpg" alt="Jest Snapshot: Testing a React web app using Jest and Enzyme" width="750" height="422" srcset="https://www.asapdevelopers.com/wp-content/uploads/2018/12/JestSnapshot.jpg 750w, https://www.asapdevelopers.com/wp-content/uploads/2018/12/JestSnapshot-300x169.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2018/12/JestSnapshot-610x343.jpg 610w" sizes="(max-width: 750px) 100vw, 750px" /></strong></h2>
<h2><strong>What is a Jest Snapshot?</strong></h2>
<p>A <strong>Jest Snapshot</strong> is a screenshot of the React tree from a specific moment of some UI component. <a href="https://jestjs.io">Jest</a> can use that screenshot to compare it with the actual React tree render, and if both instances don’t match, the test will fail. If the test fails, we’ll know that a change was introduced since the last snapshot. The change can be expected or unexpected; in the first case, we just need to update the snapshot to be aligned with the new version of the UI component, and in the second case, we should review the component to check why there are differences between both instances.</p>
<h2><strong>When can Jest Snapshots be useful?</strong></h2>
<p><strong>Jest Snapshots</strong> can be used not only for components -though, components are the most common use for it-, we can also use them for serializable data, functions, or anytime we need to test whether the output is correct.</p>
<p>Let’s take a look at some examples. Imagine we have a <em>Header</em> component which renders a <em>title</em> and <em>subtitle</em> from <em>data</em> prop -check the code below- and we need to test the component. Forget about the <em>prop</em> for a minute and focus only on the <em>render</em>; we need to check if it renders a &lt;div&gt; with their class name and their children, another two &lt;div&gt; which have &lt;h1&gt; and &lt;h3&gt; with the current text. You are probably thinking about many ways to do these simple tests, but let’s take a look at how easy it can be using <strong>Jest Snapshots</strong>.</p>
<p>If we decide to use <strong>Jest Snapshots</strong>, we’ll just need to add one test! We have to check if the render matches the snapshot and that’s it. But we have even more good news! If the component changes some tag or text in the future, we only have to update the snapshot and the unit tests will succeed again.</p>
<p><script src="https://gist.github.com/gonzalolarrosa/1c369aa9edd4d7873034b6382a8f86b7.js"></script></p>
<p><script src="https://gist.github.com/gonzalolarrosa/90584bfaa8b93744d0d854d5b7e06dd3.js"></script></p>
<p>Now let’s say we have a <em>Constants</em> file and we should generate their unit tests. As you can guess, the best way to do this is using <strong>Jest Snapshots</strong>.</p>
<p>If you still have doubts, we hope this example shows you how <strong>Jest Snapshots</strong> make your life easier regarding unit tests, as it makes no sense to do complex things when we only need to know if some constant value has been changed or not.</p>
<p><script src="https://gist.github.com/gonzalolarrosa/9436868e958785c36d048a60187cd069.js"></script></p>
<p><script src="https://gist.github.com/gonzalolarrosa/7c36510790e29bc1078fa176634c856a.js"></script></p>
<h2><strong>Conclusion</strong></h2>
<p><strong>Jest Snapshot</strong> testing is a fantastic tool that allows you to test your UI component render in a quick and easy way, saving time to spend on tests that really need more attention. Also, we have the benefit of getting a more maintainable unit test code.</p>
<p>If you are interested in this topic or you want to learn more about Jest and Enzyme, you can read <a href="https://www.asapdevelopers.com/mock-function-react-jest-enzyme/">Mock Function: Testing a React web app using Jest and Enzyme</a> and <a href="https://www.asapdevelopers.com/async-code-testing-react-jest-enzyme/">Async code: Testing a React web app using Jest and Enzyme</a></p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308b405"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/san-francisco-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/jest-snapshot-testing-enzyme-react/">Jest Snapshot: Testing a React web app using Jest and Enzyme</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Google Flutter Review 2020</title>
		<link>https://www.asapdevelopers.com/google-flutter-review/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Mon, 19 Nov 2018 10:42:03 +0000</pubDate>
				<category><![CDATA[Flutter]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9272</guid>

					<description><![CDATA[<p>Flutter Review 2020 Our Google Flutter Review: In some of our previous posts, we looked at how to build an app that looks and works as similar as possible to...</p>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/google-flutter-review/">Google Flutter Review 2020</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><strong>Flutter Review 2020</strong></h2>
<p>Our <strong>Google Flutter</strong> Review: In some of our <a href="https://www.asapdevelopers.com/6-reasons-why-you-should-start-using-react-native/">previous posts</a>, we looked at how to build an app that looks and works as similar as possible to a native app. Our team has worked extensively with <strong>React Native</strong> and achieved amazing results, so, today, we want to take a look at the competition.</p>
<p><a href="https://www.asapdevelopers.com/flutter-app-development/">Google Flutter</a> has been buzzing around our ears over the past few years and we believe it’s safe to say that, whether you know it or not, you have interacted with an app developed with it. Therefore, if you haven’t tried it for yourself yet, you might be curious as to what it has to offer and, if you have tried it, there are still some surprises along the way. In this article, we’ll share the best qualities of this <a href="https://www.goodfirms.co/glossary/software-development-kit-sdk/">software development kit</a> (SDK) as well as the updates 2020 has brought along.</p>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-9468 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2018/11/flutter-logo-sharing.png" alt="Google Flutter Review" width="937" height="461" srcset="https://www.asapdevelopers.com/wp-content/uploads/2018/11/flutter-logo-sharing.png 937w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/flutter-logo-sharing-300x148.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/flutter-logo-sharing-768x378.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/flutter-logo-sharing-610x300.png 610w" sizes="(max-width: 937px) 100vw, 937px" /></p>
<h2><strong>So, what is Google Flutter?</strong></h2>
<p>The 2017 <a href="https://events.google.com/io/">Google I/O developers conference</a> showed us an early alpha version of <strong>Flutter</strong>, with its <a href="https://developers.googleblog.com/2018/09/flutter-release-preview-2-pixel-perfect.html">Release Preview 2</a> launched in September 2018. There have been a number of new versions released since then; the latest being version 1.22 released on October 1, 2020. As stated on its website, <strong>Google Flutter</strong> is “Google’s UI toolkit for building beautiful, natively-compiled applications for mobile, web, and desktop from a single codebase”. The fact that it is a complete SDK means it provides users with everything they need to create cross-platform apps, such as ready-made widgets, a rendering engine, and testing and integration APIs.</p>
<p><strong>Flutter</strong> works with existing code, is used by developers and organizations around the globe, and is free and open-source. Some of the development companies currently using Flutter include Groupon, eBay, Alibaba Group and BMW. Consequently, it is also one of the top preferred skills among software engineers. Google has used Flutter to work on Google Ads and smart displays like Google Home Hub.</p>
<h2><strong>Flutter Review: What benefits does Google Flutter offer?</strong></h2>
<p>Here are some qualities that, as programmers, we found not only useful, but necessary.</p>
<h3><strong>Fast development</strong></h3>
<p>Most of the time you spend developing a mobile app you find yourself waiting for it to be built and not actually coding. Flutter features “hot reloads”—powered by Dart VM—, which means that your code changes are reflected in your app the moment you save them, preserving the current app state. This is extremely helpful when you are building your UI and it helps you fix bugs faster.</p>
<h3><strong>Beautiful UIs</strong></h3>
<p><strong>Flutter</strong> enables you to build your app with a beautiful user interface by providing a catalog of ready-made widgets that you can use and, believe it or not, every object you come across in <strong>Google Flutter</strong> is an actual widget. Having ready-made widgets solves the most common problems in user interfaces, such as centering an item or just placing it on the right spot. You simply have to choose the widgets that best adapt to the application that you have in mind.</p>
<p>Flutter supports conditional UI and, as an added benefit, its widgets follow <a href="https://flutter.dev/docs/development/ui/widgets/material">Material Design guidelines</a> and <a href="https://flutter.dev/docs/development/ui/widgets/cupertino">Apple’s Cupertino looks</a> to a tee, saving you a considerable amount of time.</p>
<h3><strong>Widget customization and extension</strong></h3>
<p><strong>Google Flutter</strong> also gives you the option to customize a widget&#8217;s default behavior. To accomplish this, all you need to do is a pull request to the class that you are trying to modify and add the property or the behavior that you need. Then, you’ll find yourself with an extended widget and a new way to customize your app.</p>
<h3><strong>Language</strong></h3>
<p><strong>Google Flutter</strong> has its very own development language called <a href="https://dart.dev/">Dart</a>. <a href="https://proandroiddev.com/flutters-compilation-patterns-24e139d14177">Dart is ahead-of-time (AOT) compiled</a>, which means that the code you build is compiled and transformed into a native (system-dependent) machine code so that the resulting binary file can execute natively. Moreover, Dart is also <a href="https://guide.freecodecamp.org/computer-science/just-in-time-compilation/">JIT</a> (just-in-time) compiled for exceptionally fast development cycles and changing workflows. And if you wanted even better news, learning Dart is very easy. If you already know languages like Java, JavaScript, Kotlin, C# or Swift, you can start programming in Dart almost right away. So what are you waiting for to try it out? If you want to know more about why <strong>Flutter</strong> has chosen Dart as its language, you can take a look at Flutter’s FAQs.</p>
<h2><strong><img decoding="async" loading="lazy" class="aligncenter wp-image-10210 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2.jpg" alt="Google Flutter Dart Framework Architecture" width="1200" height="645" srcset="https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2.jpg 1200w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2-300x161.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2-768x413.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2-1024x550.jpg 1024w, https://www.asapdevelopers.com/wp-content/uploads/2018/11/Asap_FlutterDartFramework-v2-610x328.jpg 610w" sizes="(max-width: 1200px) 100vw, 1200px" /></strong></h2>
<h3><strong>Open source</strong></h3>
<p>We’ve covered that Dart is actually fairly easy to learn. The fact that Google keeps extensive and organized documentation makes it even easier and, together with the fact that Flutter is open source, you are bound to find a very productive community that is constantly working on contributions. Most recently, the Flutter community has made some contributions to desktop support and state management.</p>
<h3><strong>Debugging</strong></h3>
<p>In this <strong>Flutter</strong> review, we observe how the framework provides tools like the Dart analyzer and the DevTools that will help you debug your flutter app. The Dart analyzer will help you find any mistakes that may crop up in your code, while DevTools includes a full source-level debugger. If you use a Flutter-enabled IDE/editor, like Android Studio or <a href="https://www.jetbrains.com/idea/">IntelliJ</a>, both of these Dart tools will work automatically. You can find all the information you need to take full advantage of Flutter’s debugging <a href="https://flutter.dev/docs/testing/debugging">here</a>.</p>
<h3><strong>Portable</strong></h3>
<p><strong>Flutter</strong> can run on pretty much any device that includes a screen. There are Flutter apps for Windows, Linux and macOS, so you’ll be able to take full advantage of this tool no matter which operating system you prefer.</p>
<h3><strong>Automated testing toolset</strong></h3>
<p>Flutter allows you to run automated unit tests, widget tests and integration tests to ensure your app is running smoothly on all fronts before its release. Flutter offers its own <a href="https://nevercode.io/blog/what-is-continuous-integration-and-how-to-benefit-from-it/">continuous integration</a> (CI) services to help you run tests automatically when making code changes. These services can be used with <a href="https://flutter.dev/docs/deployment/cd">fastlane</a>, <a href="https://medium.com/flutter/test-flutter-apps-on-travis-3fd5142ecd8c">Travis</a>, <a href="https://cirrus-ci.org/examples/">Cirrus</a>, <a href="https://blog.codemagic.io/getting-started-with-codemagic/">Codemagic</a>, <a href="https://docs.gitlab.com/ee/ci/README.html">GitLab</a>, and <a href="https://devcenter.bitrise.io/getting-started/getting-started-with-flutter-apps/">Britise</a>. You can find more information and check out their tutorials <a href="https://flutter.dev/docs/testing">here</a>.</p>
<h3><strong>Accessibility</strong></h3>
<p>As if all of the above wasn’t enough, Google includes built-in opportunities that will help you make your app accessible to more users. This works for both additional languages and web accessibility. Flutter makes internationalization easier with widgets that simplify the process of preparing your code to receive localized content. It supports 77 languages but does not stop there, also supporting different currencies, date formats and units of measurement, among other features. When it comes to web accessibility, it supports large fonts, screen readers and sufficient contrast.</p>
<p>And if you still want more, Flutter also offers a large number of open-source packages, has support for various IDEs (<a href="https://medium.com/issuehunt/10-best-ide-in-the-world-c4875d1300c5">Integrated Development Environments</a>), has different themes for iOS and Android, and makes animations seem like child play with <a href="https://rive.app/">Rive</a> Flare.</p>
<h2><strong>Flutter Review highlights: 2019 &amp; 2020</strong></h2>
<p>We all know that, in today’s world, no tech tool can go long without an update, so Google has been steadily releasing new versions of <strong>Flutter</strong> over the last few years with lots of new features and enhancements. Let’s take a look at our highlights in this Google Flutter Review 2020:</p>
<ul>
<li><strong>Apps for every device</strong></li>
</ul>
<p>Initially, <strong>Flutter</strong> only enabled you to create mobile apps, which meant it was somewhat limited. In 2019, Flutter added the long-awaited possibility to develop desktop (for Windows and Mac) and web apps, as well as availability in Chromebooks and embedded form factors.</p>
<ul>
<li><strong>iOS 14 and Android 11 support</strong></li>
</ul>
<p>As of October 2020, Flutter offers extensive support for iOS 14 and Android 11. For iOS, this means Xcode 12 support and new icons. When it comes to Android, the latest Flutter version supports new types of display cutouts and smoother animation.</p>
<ul>
<li><strong>AndroidX support for new apps</strong></li>
</ul>
<p>The 1.7 version of <strong>Google Flutter</strong> added the possibility of creating projects with <a href="https://developer.android.com/jetpack/androidx">AndroidX</a>. AndroidX is an open-source project used by the Android team to develop, test, package, version and release libraries within the <a href="https://developer.android.com/jetpack">Jetpack</a> suite of libraries. Being able to use AndroidX means far less work when it comes to integrating with other parts of the Android ecosystem.</p>
<ul>
<li><strong>Integration support</strong></li>
</ul>
<p>Google has added support to integrate Flutter into existing iOS and Android apps, which makes it easier to migrate to Flutter once you already have an app up and running.</p>
<ul>
<li><strong>iOS 13 dark mode support</strong></li>
</ul>
<p>This has been a long-awaited feature for <strong>Google Flutter</strong>. Work on it was announced in September 2019 and it finally came to fruition two months later with Version 1.12. Flutter now supports dark mode for Cupertino widgets and also added some new Cupertino widgets, including a date picker and an alert dialog.</p>
<ul>
<li><strong>New Dart language features</strong></li>
</ul>
<p>Version 2.5 of Dart was launched back in September 2019 and it included a variety of new features. One of the most noteworthy ones was automatic code completion through machine learning, which saves time while minimizing the chances of typos in the code. Another highlight was the improvement on <a href="https://en.cppreference.com/w/cpp/language/constant_expression">constant expressions</a> by increasing the number of ways they can be defined. You can have a detailed look at the features <a href="https://medium.com/dartlang/announcing-dart-2-5-super-charged-development-328822024970">here</a>.</p>
<ul>
<li><strong>Performance improvements for Flutter and Dart</strong></li>
</ul>
<p>In addition to fixing the icon font tree shaking performance issue, version 1.20 of <strong>Google Flutter</strong> also reduced jank in the initial display of animations by using a warm-up phase and optimized mouse support.</p>
<ul>
<li><strong>Autofill for mobile text fields</strong></li>
</ul>
<p>Another highly sought-for addition to Google Flutter was the autofill function for both Android and iOS. This feature was added with version 1.20 and work on adding this functionality for the web has also been announced.</p>
<ul>
<li><strong>Updated tooling extensions</strong></li>
</ul>
<p><a href="https://code.visualstudio.com/">Visual Studio Code</a> and <a href="https://developer.android.com/studio/intro">Android Studio</a> plugins have been updated. If you haven’t already been using them, Visual Studio Code is a code editor developed by Microsoft that works not only in Windows, but also in Linux and macOS. It does allow you to edit code, and also includes an interactive debugger. Visual Studio Code is customizable and lets you install a long list of third-party extensions. Regarding Android Studio, it is the official Android <a href="https://www.codecademy.com/articles/what-is-an-ide">IDE</a>, based on IntelliJ IDEA. It includes a number of testing tools and frameworks, as well as built-in support for <a href="https://cloud.google.com/tools/android-studio/docs/">Google Cloud Platform</a>.</p>
<ul>
<li><strong>Faster compiling</strong></li>
</ul>
<p>In recent years, <strong>Google Flutter</strong> has become faster by considerably increasing its compiling performance, therefore becoming an increasingly more efficient tool in your arsenal.</p>
<ul>
<li><strong>New packages for the supporting ecosystem</strong></li>
</ul>
<p><strong>Google Flutter</strong> also has its supporting ecosystemvvv in mind and has developed packages for Google Maps, <a href="https://pub.dev/packages/http">HTTP</a>, <a href="https://firebase.google.com/docs/ml-kit">Firebase ML Vision</a>, in-app purchases and web views. The <a href="https://pub.dev/packages/in_app_purchase">in-app purchases plugin</a> is one of the most sought-after additions to Flutter and is available for both Android and iOS.</p>
<h2><strong>Flutter Review Summary</strong></h2>
<p>Our conclusion for this <strong>Google Flutter Review 2020</strong> is that Flutter is a very powerful SDK that has gained traction with some industry giants. It has the tools and libraries to easily help you build your app—whether mobile, web or desktop—and bring your ideas to life. Furthermore, both Google and the community are constantly working on new features to make it into the most comprehensive SDK possible. If you don’t have any mobile development experience, or if you are just trying to build an app that works well on Android, iOS and the web in the fastest way possible, Flutter can easily meet your needs.</p>
<p>Also, if you are looking for alternative cross-platform frameworks, you can check out our article on this topic <a href="https://www.asapdevelopers.com/best-cross-platform-frameworks/">here</a>.</p>

		<div id="fws_693976308c798"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/flutter-app-development/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>About Our Flutter Development Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/google-flutter-review/">Google Flutter Review 2020</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Digital Payment is the near future</title>
		<link>https://www.asapdevelopers.com/digital-payment-near-future/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Sat, 03 Nov 2018 12:47:45 +0000</pubDate>
				<category><![CDATA[FinTech]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9407</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/digital-payment-near-future/">Digital Payment is the near future</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308d40c"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<p>Digital payment technologies are a reality. Have you ever imagined that the world would become <strong>100% digital?</strong></p>
<p><strong>Well, it’s high time you did!</strong></p>
<p>Today’s reality is that business and social activities are becoming digital, but what about <strong>how we pay for things?</strong> Is that becoming digital too?</p>
<h2><strong>Digital Payments</strong></h2>
<p><a href="https://www.betterthancash.org/tools-research/toolkits/payments-measurement/focusing-your-measurement/introduction">How to define digital payments?</a> Digital payments are not one instrument but rather an umbrella term applied to a range of different instruments used in different ways.<br />
<img decoding="async" loading="lazy" class="aligncenter wp-image-8004 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1.png" alt="The dawn of digital payment" width="799" height="400" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1.png 799w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1-300x150.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1-768x384.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1-670x335.png 670w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-QYUZEmiKpYc7h4OghkeqDw-e1509634124364-1-610x305.png 610w" sizes="(max-width: 799px) 100vw, 799px" /></p>
<p>Well, the answer is a hell <strong>YES!</strong>. Technology has transformed the way customers purchase. The reason being the increasing number of e-commerce businesses, as well as, the increasing penetration of mobile devices in the U.S.</p>
<p>All predictions indicate that <strong>online sales</strong> will keep growing in the next 5 years faster than offline sales. This is a worldwide trend and confirmed in countries such as China, USA, and UK that are leaders in retail <strong>online sales</strong>. <a href="https://www.asapdevelopers.com/marketplace-payments-structure/" target="_blank" rel="noopener noreferrer">More about digital payments in our blog</a></p>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-8005 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-VVuvKl-J56TW_EoDuW4C8w-e1509634129358-1.png" alt="Graphic showing the increase of e-commerce business | asap developers blog" width="800" height="449" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-VVuvKl-J56TW_EoDuW4C8w-e1509634129358-1.png 800w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-VVuvKl-J56TW_EoDuW4C8w-e1509634129358-1-300x168.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-VVuvKl-J56TW_EoDuW4C8w-e1509634129358-1-768x431.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-VVuvKl-J56TW_EoDuW4C8w-e1509634129358-1-610x342.png 610w" sizes="(max-width: 800px) 100vw, 800px" /></p>
<p>These factors imply <strong>changes in the user experience</strong> demanded by customers. They now want an intuitive and seamless experience which also needs to be <strong>fast, safe and convenient</strong> in all ways possible. Therefore, digital payment credentials must work in that way.</p>
<p>These changes are mostly promoted by the <strong>Millennials in comparison with Baby Boomers.</strong></p>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-8003 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-D34uTuRRGApujnCHI87Z2A-e1509634113972-1.png" alt="Consumer digital payment options table | asap developers blog" width="800" height="472" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-D34uTuRRGApujnCHI87Z2A-e1509634113972-1.png 800w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-D34uTuRRGApujnCHI87Z2A-e1509634113972-1-300x177.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-D34uTuRRGApujnCHI87Z2A-e1509634113972-1-768x453.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/1-D34uTuRRGApujnCHI87Z2A-e1509634113972-1-610x360.png 610w" sizes="(max-width: 800px) 100vw, 800px" /></p>
<p>In the previous chart you can appreciate that not only Millennials prefer using a smartphone as a digital payment option, but also Baby Boomers do.</p>
<p>Smart Phones and tablets are very popular among Millennials for mobile baking like checking their account balance. Moreover, <strong>digital payment methods</strong> such as peer to peer payments through apps, like Apple Pay and Android Pay are becoming more popular every day.</p>
<p>However, the willingness of each generation to use wearables, digital currencies such as Bitcoins, e-wallets or other digital payment options are clearly different. Needless to say, Millennials are transforming the way we purchase.</p>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-8002 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/11/0-q32O1-G0m-NB6WiP-e1509634096423-1.png" alt="Consumer who prefer digital app payments" width="700" height="548" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/11/0-q32O1-G0m-NB6WiP-e1509634096423-1.png 700w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/0-q32O1-G0m-NB6WiP-e1509634096423-1-300x235.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/11/0-q32O1-G0m-NB6WiP-e1509634096423-1-610x478.png 610w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>All in all, <strong>digital payment methods are rapidly evolving</strong> in order to meet the instant gratification Millennials expect.s do.</p>
<p><strong>Stay tuned to learn about trending digital payment methods! Hope you have enjoyed it ? Any feedback is welcome!</strong></p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308d5bd"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/san-francisco-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/digital-payment-near-future/">Digital Payment is the near future</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>What&#8217;s a bitcoin wallet and how does it work?</title>
		<link>https://www.asapdevelopers.com/bitcoin-wallet-definition/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Wed, 31 Oct 2018 14:07:27 +0000</pubDate>
				<category><![CDATA[FinTech]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9354</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/bitcoin-wallet-definition/">What&#8217;s a bitcoin wallet and how does it work?</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308df0a"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<p>Are you totally out of this new tendency in the market? Do you have an entrepreneurial mindset, ambition, and curiosity about what a Bitcoin Wallet means?</p>
<h2><strong><img decoding="async" loading="lazy" class="aligncenter wp-image-7749 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-HW_rUJBCJWP7eY6r-e1501249231493-1.jpg" alt="bitcoin wallet" width="800" height="449" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-HW_rUJBCJWP7eY6r-e1501249231493-1.jpg 800w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-HW_rUJBCJWP7eY6r-e1501249231493-1-300x168.jpg 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-HW_rUJBCJWP7eY6r-e1501249231493-1-768x431.jpg 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-HW_rUJBCJWP7eY6r-e1501249231493-1-610x342.jpg 610w" sizes="(max-width: 800px) 100vw, 800px" /></strong></h2>
<h2><strong>Well, l will make it simple to you.</strong></h2>
<p><a href="http://www.bitcoin.org/"><strong>Bitcoin</strong> </a>is a form of virtual currency, known as “cryptocurrency”. The difference is that they can be divided into minuscule fractions of a single coin. They can be exchanged for real money. You can buy and sell digital currency through Coinbase for example, and earn some extra money (or lose) just taking advantage of the market ups and downs.</p>
<p><strong>Bitcoin wallet</strong> is not like a traditional wallet but digital. It’s composed of a Bitcoin Address (also known as <a href="https://en.wikipedia.org/wiki/Public-key_cryptography">Public Key</a>) and a Private Key (known as the Secret). The Bitcoin Address is what you give others to send you bitcoins and the secret is the thing that enables you to spend the bitcoins because it’s needed to sign an outgoing transaction which verifies that you are the owner of those bitcoins.</p>
<p>Since bitcoins are stored in the network and only you own the signature (Secret) that allows you to spend those bitcoins, a couple of important things are true:</p>
<blockquote>
<h4 style="text-align: center;">If you ever lose the secret, your bitcoins are gone, there’s no way to get them back.</h4>
<h4 style="text-align: center;">If someone gets access or can see a copy of your secret, they can steal all your bitcoins and there’s no way to get them back</h4>
</blockquote>
<p><a href="http://fortune.com/2017/12/08/bitcoin-theft/">Bitcoin Theft: 5 Common Threats, Hacks, and Scams</a></p>
<h2><strong>Bitcoin wallet types</strong></h2>
<p>There are many types of bitcoin wallets, they can be desktop, <a href="https://www.asapdevelopers.com/california-mobile-app-developers/">mobile</a>, online, hardware and paper wallets.</p>
<ul>
<li><strong>Desktop:</strong> Most secure but not so practical</li>
<li><strong>Mobile:</strong> Most practical.</li>
<li><strong>Online:</strong> Easier and quicker to make transactions. Some argue that they are not very secure. Coinbase is an example.</li>
<li><strong>Hardware:</strong> They are portable, be careful not to lose it!</li>
<li><strong>Paper:</strong> Offline. Easy to become damaged or forgotten but a good way to store a backup of your wallet. Many people have a backup of their wallet stored in paper in a bank vault.</li>
</ul>
<p><img decoding="async" loading="lazy" class="aligncenter wp-image-7762 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-ire01QHedhb1PVBs-e1501251435509-1.png" alt="bitcoin wallet share secret" width="800" height="186" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-ire01QHedhb1PVBs-e1501251435509-1.png 800w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-ire01QHedhb1PVBs-e1501251435509-1-300x70.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-ire01QHedhb1PVBs-e1501251435509-1-768x179.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/0-ire01QHedhb1PVBs-e1501251435509-1-610x142.png 610w" sizes="(max-width: 800px) 100vw, 800px" /></p>
<p>Now that you know what a Bitcoin Wallet is, make sure you never reveal the Private Key to anyone and that you store multiple backups of it in very secure places.</p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308e08d"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/san-francisco-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/bitcoin-wallet-definition/">What&#8217;s a bitcoin wallet and how does it work?</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>What is Blockchain Technology?</title>
		<link>https://www.asapdevelopers.com/blockchain-technology/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Mon, 29 Oct 2018 18:47:40 +0000</pubDate>
				<category><![CDATA[Blockchain]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9327</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/blockchain-technology/">What is Blockchain Technology?</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308e8c7"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><strong>What is Blockchain Technology?</strong></h2>
<p>A Blockchain is a data structure that makes it possible to create a digital ledger of all bitcoins transactions and share it among a distributed network of computers. The Blockchain is seen as the main technological innovation of Bitcoin.</p>
<blockquote>
<h3 style="text-align: center;"><strong><em>“Every informed person needs to know about Bitcoin because it might be one of the world’s most important developments.” <a href="https://en.wikipedia.org/wiki/Leon_Louw">Leon Luow</a></em></strong></h3>
</blockquote>
<h2><strong>So first… let’s see what a bitcoin is.</strong></h2>
<p>It is a currency just like $, €, £. However, bitcoin is a decentralized, digital money created, held and spent electronically around the world.</p>
<h2><strong>Distributed database technology</strong></h2>
<p>A Blockchain is a public ledger of all Bitcoin transactions that have been executed.<br />
It is constantly growing and the blocks are added to it in a chronological order. Each computer connected to the Bitcoin network automatically gets a copy of the Blockchain. The latter has complete information about the addresses and their balances right from the genesis block to the most recently completed block.</p>
<h2><strong>What about an analogy with Conventional Banking?</strong></h2>
<p>To use conventional banking as an analogy, the Blockchain is like a full history of banking transactions. Bitcoin transactions are entered chronologically in a Blockchain just the way bank transactions are. Blocks, meanwhile, are like individual bank statements.</p>
<h2><strong>How does it work?</strong></h2>
<p><img decoding="async" loading="lazy" class="alignnone wp-image-7664 size-full" src="https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1.png" alt="blockchain" width="1517" height="382" srcset="https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1.png 1517w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1-300x76.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1-768x193.png 768w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1-1024x258.png 1024w, https://www.asapdevelopers.com/wp-content/uploads/2017/07/Blockchain1@2x-e1500298869775-1-610x154.png 610w" sizes="(max-width: 1517px) 100vw, 1517px" /></p>
<p>The Blockchain network automatically checks in for transactions with itself every ten minutes. Each group of these transactions is referred to as a “<strong>block</strong>”. Each block of new transactions is shared with all nodes in the network. Altering any unit of information on the Blockchain would mean using a huge amount of computing power to override the entire network.</p>
<h2><strong>All in all…</strong></h2>
<p>Clearly, the Blockchain technology is <strong>revolutionalizing the finance industry</strong>. It is the first time we can exchange value without intermediaries. Therefore, Blockchain has all the potential to solve some of your business complex problems <strong>now and in the near future</strong>.</p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308ecc5"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/san-francisco-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/blockchain-technology/">What is Blockchain Technology?</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>React vs React Native</title>
		<link>https://www.asapdevelopers.com/react-vs-react-native/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Wed, 12 Sep 2018 20:04:22 +0000</pubDate>
				<category><![CDATA[React]]></category>
		<category><![CDATA[React Native]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9255</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/react-vs-react-native/">React vs React Native</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308f257"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><strong>Introduction</strong></h2>
<p>React has become a popular library to build websites, earning second place in the most loved libraries according to the <a href="https://insights.stackoverflow.com/survey/2018/">2018 Stack Overflow survey</a>. In the same way, React Native has also been increasing its popularity. However, there are some differences between these two technologies that we would like to discuss with you today: React vs React Native.</p>
<h2><strong>Library vs Framework</strong></h2>
<p>The main difference between these two languages is that while ReactJS is a JavaScript library to build UI interfaces on the web, React Native is a whole framework to create native mobile apps using the React library. For that reason, web developers with React experience can easily build native mobile apps on Android and iOS using React Native; they only have to learn the main differences between these languages.</p>
<h2><strong>UI components</strong></h2>
<p>React on the web modifies the browser DOM using a browser-independent DOM system for performance and cross-browser compatibility. When using React Native, mobile apps are rendered natively; therefore, an Android project can create an Android native LinearLayout with a Text inside. Similarly, an iOS app will render a UILabel inside a UIView.</p>
<p>For that reason, the naming convention is different on both platforms. The React library lets us use the same HTML tags we use on the web, for example, “div”, and “p”, while in the React Native framework, we have to use a more generic naming for UI components like View and Text.</p>
<p><script src="https://gist.github.com/FabDuarte/210b65eafd4d1d2afaedb4d29e99d296.js"></script></p>
<h2><strong>Styling</strong></h2>
<p>Styling is done differently on both platforms. On React, we can use plain CSS, Sas  or choose an alternative like CSS-in-JS. However, in React Native there is no special language or syntax for defining styles. You just style your application using JavaScript through an API called “StyleSheet” that uses flexbox styling.</p>
<p><script src="https://gist.github.com/FabDuarte/05371962a3e57180f3778b2e6369d769.js"></script></p>
<p><script src="https://gist.github.com/FabDuarte/b9f720d64ae60b52c937b7fcbada8c6c.js"></script></p>
<h2><strong>Animations</strong></h2>
<p>Animations are another feature that is done differently on React and React Native. On the web, we can use the famous CSS animation, but on React Native we should use the Animations API. We can see an example on the official documentation:</p>
<p><script src="https://gist.github.com/FabDuarte/a26cec4c7a51d3beb3e29443483b097d.js"></script></p>
<h2><strong>Libraries</strong></h2>
<p>It is usually difficult to share a library between React and React Native. There are exceptions when the library is just JavaScript code and doesn&#8217;t use HTML, SVG or canvas components. In that case, the library can be used on both platforms.</p>
<h2><strong>Navigation</strong></h2>
<p>Of course navigation on the web is different from navigation on the native code. In this case, the number of libraries to navigate between pages and screen is too high and the choice is personal. We recommend <a href="https://github.com/ReactTraining/react-router">react-router</a> for React and <a href="https://reactnavigation.org/">React Navigation</a> for React Native.</p>
<h2><strong>React Native on the web</strong></h2>
<p>What if you want to build a single app and use it in Android, iOS and the web? During his time in Twitter, Nicolas Gallagher created a library to achieve this, which is currently used by <a href="https://mobile.twitter.com/">Twitter</a>, <a href="https://matchcenter.mlssoccer.com/">Major League Soccer</a>, <a href="https://www.flipkart.com/">Flipkart</a>, PlayStation, Uber, and <a href="https://github.com/newsuk/times-components">The Times</a>. React Native for the web makes it possible to run <a href="https://facebook.github.io/react-native/">React Native</a> components and APIs on the web using React DOM.</p>
<p>You can see a list of examples here: <a href="http://necolas.github.io/react-native-web/examples/">http://necolas.github.io/react-native-web/examples/</a></p>
<h2><strong>Conclusion</strong></h2>
<p>React vs React Native: They have several similarities that allow developers to build modern websites and native mobile apps in less time. Learning these differences allows a developer to build websites and mobile apps indistinctly. Additionally, new libraries like React Native web make it even easier to share code between web and mobile environments.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308f3ee"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/san-francisco-app-developers/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>React Native App Development Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/react-vs-react-native/">React vs React Native</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Async code: Testing a React web app using Jest and Enzyme</title>
		<link>https://www.asapdevelopers.com/async-code-testing-react-jest-enzyme/</link>
		
		<dc:creator><![CDATA[Mirazoqui]]></dc:creator>
		<pubDate>Fri, 10 Aug 2018 04:05:58 +0000</pubDate>
				<category><![CDATA[Testing]]></category>
		<guid isPermaLink="false">https://www.asapdevelopers.com/?p=9161</guid>

					<description><![CDATA[<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/async-code-testing-react-jest-enzyme/">Async code: Testing a React web app using Jest and Enzyme</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></description>
										<content:encoded><![CDATA[
		<div id="fws_693976308fd79"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				
<div class="wpb_text_column wpb_content_element " >
	<div class="wpb_wrapper">
		<h2><strong>Testing React with Jest and Enzyme</strong></h2>
<p>Nowadays, it is almost inevitable for a React app to communicate with a backend using an API, so we can imagine that it’s very common to have to run async code in JavaScript. Because of this, today we’ll be discussing <strong><em>async code</em></strong> (asynchronous code) and the ways that we can test it using <a href="https://jestjs.io/" target="_blank" rel="noopener noreferrer">Jest</a> and <a href="https://airbnb.io/enzyme/" target="_blank" rel="noopener noreferrer">Enzyme</a>. If you are new to Jest and Enzyme, you can take a look at <a href="https://www.asapdevelopers.com/testing-a-react-web-app-using-jest-and-enzyme/">Testing a React web app using Jest and Enzyme</a> and <a href="https://www.asapdevelopers.com/mock-function-react-jest-enzyme/">Testing a React web app using Jest and Enzyme: mock functions</a> to start getting familiar with them.</p>
<p>Think about any app that has to call an endpoint to get some useful data, and now imagine, <em>what would you do to test that?</em> You are probably thinking about calling the endpoint and then checking for the expected value. This approach is good, but we are missing something. When you call an endpoint, you are dispatching an async code, so you must let Jest know when the test has finished before it can continue with another test. If you don’t do that, the test will probably fail because it will start the next one immediately and you won’t know which test will be running when the first callback is returned. Fortunately, Jest has three different ways to handle this: <strong><em>callbacks</em></strong>, <strong><em>promises</em></strong> and <strong><em>async/await</em></strong>.</p>
<h2><strong>Callbacks</strong></h2>
<p>This is the first option that Jest brings us to handle the async code unit tests. It’s very simple; you have to create a test with a single argument called “<em>done”</em>, and you will use that argument as a function -callback- to indicate that test is finished. If <em>done</em> is never called, the test will fail as we explained in the previous paragraph.</p>
<h2><strong>Promises</strong></h2>
<p>This is the second option and it’s also simple. If you are using promises to get the response of an endpoint, you can also return a promise in your test and Jest will wait for it to resolve. In this case, it’s very important to <em>return</em> a promise. If you expect the promise to be rejected, you must use the <em>catch</em> method to assert the test.</p>
<h2><strong>Async/await</strong></h2>
<p>This is the last option to handle the async tests and it’s very similar to the Promises approach. You just add the “<em>async”</em> keyword as the name of the function test, and the “<em>await”</em> keyword in front of the function that calls the endpoint. Using these two keywords lets Jest know that the test will be an async one. If you expect the promise to be rejected, you must use the <em>catch</em> method, as you did for Promises.</p>
<h2><strong><img decoding="async" loading="lazy" class="size-medium wp-image-9166 aligncenter" src="https://www.asapdevelopers.com/wp-content/uploads/2018/08/software-testing-300x227.png" alt="Async code: Testing a React web app using Jest and Enzyme" width="300" height="227" srcset="https://www.asapdevelopers.com/wp-content/uploads/2018/08/software-testing-300x227.png 300w, https://www.asapdevelopers.com/wp-content/uploads/2018/08/software-testing.png 480w" sizes="(max-width: 300px) 100vw, 300px" /></strong></h2>
<h2><strong>Callbacks, Promises and Async code example</strong></h2>
<p>Let’s make an example to review the concepts above. Imagine you have an API with an endpoint (GET request) that, given a user ID, returns the user’s info, such as name, age, gender and email. Let’s call the function that sends the request “getUserData” and let’s create a unit test for this example by mixing the three approaches in the same file.</p>
<p><script src="https://gist.github.com/gonzalolarrosa/6e7e1d80ecb9727a561c4db2d1a10936.js"></script></p>
<h2><strong>Conclusion</strong></h2>
<p>Any developer knows the importance of async code, but not every developer is familiar with how to test it. We tried to summarize the three ways that Jest can handle this kind of tests. Remember that none of these is better than the others, they are just different approaches to do the same thing. You can even mix them and use them in whichever way you find to be easier.</p>
	</div>
</div>




			</div> 
		</div>
	</div> 
</div></div>
		<div id="fws_693976308feec"  data-column-margin="default" data-midnight="dark"  data-bg-mobile-hidden="" class="wpb_row vc_row-fluid vc_row standard_section "  style="padding-top: 0px; padding-bottom: 0px; "><div class="row-bg-wrap" data-bg-animation="none" data-bg-overlay="false"><div class="inner-wrap"><div class="row-bg"  style=""></div></div><div class="row-bg-overlay" ></div></div><div class="col span_12 dark left">
	<div  class="vc_col-sm-12 wpb_column column_container vc_column_container col no-extra-padding"  data-t-w-inherits="default" data-border-radius="none" data-shadow="none" data-border-animation="" data-border-animation-delay="" data-border-width="none" data-border-style="solid" data-border-color="" data-bg-cover="" data-padding-pos="all" data-has-bg-color="false" data-bg-color="" data-bg-opacity="1" data-hover-bg="" data-hover-bg-opacity="1" data-animation="" data-delay="0" >
		<div class="vc_column-inner" ><div class="column-bg-overlay-wrap" data-bg-animation="none"><div class="column-bg-overlay"></div></div>
			<div class="wpb_wrapper">
				<a class="nectar-button large regular accent-color has-icon  wpb_animate_when_almost_visible wpb_bounce bounce regular-button"  style="margin-top: 40px; color: #ffffff; "  href="https://www.asapdevelopers.com/portfolio/showclap/" data-color-override="false" data-hover-color-override="false" data-hover-text-color-override="#fff"><span>Learn More About Our Services</span><i style="color: #ffffff;"  class="icon-button-arrow"></i></a>
			</div> 
		</div>
	</div> 
</div></div>
<p>The post <a rel="nofollow" href="https://www.asapdevelopers.com/async-code-testing-react-jest-enzyme/">Async code: Testing a React web app using Jest and Enzyme</a> appeared first on <a rel="nofollow" href="https://www.asapdevelopers.com">asap developers</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
