<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:georss="http://www.georss.org/georss" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" version="2.0">

<channel>
	<title>SmartTutorials.net</title>
	<atom:link href="https://smarttutorials.net/feed/" rel="self" type="application/rss+xml"/>
	<link>https://smarttutorials.net/</link>
	<description>Tutorials on Javascript, VueJS, NodeJS, PHP, CakePHP, jQuery, Angular, MySQL</description>
	<lastBuildDate>Tue, 20 Jun 2023 15:15:19 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/03/cropped-android-chrome-512x512-1.png?fit=32%2C32&amp;ssl=1</url>
	<title>SmartTutorials.net</title>
	<link>https://smarttutorials.net/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">62095646</site>	<itunes:explicit>no</itunes:explicit><itunes:subtitle>Tutorials on Javascript, VueJS, NodeJS, PHP, CakePHP, jQuery, Angular, MySQL</itunes:subtitle><item>
		<title>Step-by-Step Guide: Deploying a Laravel Application to AWS Lightsail Ubuntu Instance (EC2) Using GitHub Actions CI/CD</title>
		<link>https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/</link>
					<comments>https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/#respond</comments>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Tue, 20 Jun 2023 08:12:59 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Laravel]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=20547</guid>

					<description><![CDATA[In this blog post topic focuses on providing a comprehensive step-by-step guide to deploying a Laravel application to an AWS Lightsail Ubtuntu instance using Github Actions for continuous integration and continuous deployment (CI/CD). Technical Requirements AWS Lightsail Instance Github (your..... <a class="read-more" href="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[
<p class="lead">In this blog post topic focuses on providing a comprehensive step-by-step guide to deploying a Laravel application to an AWS Lightsail Ubtuntu instance using Github Actions for continuous integration and continuous deployment (CI/CD).</p>



<div class="wp-block-image"><figure class="aligncenter size-full"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?ssl=1"><img fetchpriority="high" decoding="async" width="580" height="414" data-attachment-id="20563" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-cicd/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?fit=742%2C530&amp;ssl=1" data-orig-size="742,530" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD" data-image-description="&lt;p&gt;Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD&lt;/p&gt;
" data-image-caption="&lt;p&gt;Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?fit=300%2C214&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?fit=580%2C414&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?resize=580%2C414&#038;ssl=1" alt="Step-by-Step Guide: Deploying a Laravel Application to AWS Lightsail Ubuntu Instance (EC2) Using GitHub Actions CI/CD" class="wp-image-20563" title="Step-by-Step Guide: Deploying a Laravel Application to AWS Lightsail Ubuntu Instance (EC2) Using GitHub Actions CI/CD" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?w=742&amp;ssl=1 742w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/Deploying-a-Laravel-Application-to-AWS-Lightsail-Ubuntu-Instance-EC2-Using-GitHub-Actions-CICD.png?resize=300%2C214&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a></figure></div>



<h2 class="wp-block-heading">Technical Requirements</h2>



<ol><li>AWS Lightsail Instance</li><li>Github (your code must be github repo)</li><li>Laravel App</li></ol>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>I am using following Github repo.</p></blockquote>



<figure class="wp-block-embed is-type-rich is-provider-embed wp-block-embed-embed"><div class="wp-block-embed__wrapper">
<div class="github-embed github-embed-repository github-logo-mark">    <p>        <a href="https://github.com/muni2explore/gen-quiz" target="_blank">			<strong>				Quiz Gen			</strong>		</a>		<br>        <a href="https://github.com/muni2explore/gen-quiz" target="_blank">https://github.com/muni2explore/gen-quiz</a><br>        <a href="https://github.com/muni2explore/gen-quiz/network" target="_blank">2</a> forks.<br>        <a href="https://github.com/muni2explore/gen-quiz/stargazers" target="_blank">0</a> stars.<br>        <a href="https://github.com/muni2explore/gen-quiz/issues" target="_blank">1</a> open issues.<br>        <details open>            <summary>Recent commits:</summary>            <ul class="github_commits">                                    <li class="github_commit">                        <a href="https://github.com/nxgeninventors/gen-quiz/commit/7f0d18fcb432bfe9bc37bf7190d8603aea36328b" target="_blank">Quiz start logic</a>, muni                    </li>                                    <li class="github_commit">                        <a href="https://github.com/nxgeninventors/gen-quiz/commit/509df0046ba7452da3a2e69e6ee93929166f3eab" target="_blank">Fix</a>, muni                    </li>                                    <li class="github_commit">                        <a href="https://github.com/nxgeninventors/gen-quiz/commit/ad8088324defbfa217226f5d8ab554affd7d2cba" target="_blank">removed laravel sqlite db</a>, muni                    </li>                                    <li class="github_commit">                        <a href="https://github.com/nxgeninventors/gen-quiz/commit/d7a9af4f72b66e3c4b3dfda64549bd3816bdc9da" target="_blank">removed laravel sqlite db</a>, muni                    </li>                                    <li class="github_commit">                        <a href="https://github.com/nxgeninventors/gen-quiz/commit/e5755c7668dc8f2a71474cea7e91e48dae8ec93f" target="_blank">Fixes</a>, muni                    </li>                            </ul>        </details>    </p></div>
</div></figure>



<p>For this tutorial <strong>I am going assume you have already have Github repository for your Laravel application</strong>.</p>



<h2 class="wp-block-heading">Configuring AWS  Access Key &amp; Secret</h2>



<p>To establish communication with AWS via command line or programmatically, we need <strong>Access Key &amp; Secret access</strong> key. </p>



<p>First login into your AWS console using your username and password.  Then go to <strong>IAM -&gt; Users </strong>section.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?ssl=1"><img decoding="async" width="580" height="121" data-attachment-id="20548" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-iam-users-list/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?fit=2560%2C536&amp;ssl=1" data-orig-size="2560,536" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="aws-iam-users-list" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?fit=300%2C63&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?fit=580%2C121&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list.jpg?resize=580%2C121&#038;ssl=1" alt="" class="wp-image-20548" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?resize=1024%2C214&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?resize=300%2C63&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?resize=768%2C161&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?resize=1536%2C322&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?resize=2048%2C429&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS IAM User List</figcaption></figure>



<p>Next Click on <strong>Add users </strong>button on the top right to create user.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?ssl=1"><img decoding="async" width="580" height="172" data-attachment-id="20549" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-create-user-step-1/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?fit=2560%2C761&amp;ssl=1" data-orig-size="2560,761" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="aws-create-user-step-1" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?fit=300%2C89&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?fit=580%2C172&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1.jpg?resize=580%2C172&#038;ssl=1" alt="" class="wp-image-20549" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?resize=1024%2C304&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?resize=300%2C89&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?resize=768%2C228&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?resize=1536%2C456&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?resize=2048%2C609&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-user-step-1-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS Create User &#8211; Step 1</figcaption></figure>



<p>Now enter user name you want create and click <strong>Next</strong> button to continue.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="243" data-attachment-id="20551" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-user-set-permissions-setp-2/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?fit=2560%2C1074&amp;ssl=1" data-orig-size="2560,1074" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="aws-user-set-permissions-setp-2" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?fit=300%2C126&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?fit=580%2C243&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2.jpg?resize=580%2C243&#038;ssl=1" alt="" class="wp-image-20551" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?resize=1024%2C429&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?resize=300%2C126&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?resize=768%2C322&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?resize=1536%2C644&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?resize=2048%2C859&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-user-set-permissions-setp-2-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>Set Permission to User </figcaption></figure>



<p>Now don&#8217;t provide any permission and click on <strong>Next</strong> button to continue.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="290" data-attachment-id="20552" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-review-create-user/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?fit=2560%2C1281&amp;ssl=1" data-orig-size="2560,1281" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="aws-review-create-user" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?fit=300%2C150&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?fit=580%2C290&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user.jpg?resize=580%2C290&#038;ssl=1" alt="" class="wp-image-20552" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?resize=1024%2C512&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?resize=300%2C150&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?resize=768%2C384&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?resize=1536%2C768&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?resize=2048%2C1025&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-review-create-user-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS Review Create User</figcaption></figure>



<p>Now click <strong>Create user </strong>button to create new user.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="125" data-attachment-id="20553" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-iam-users-list-with-new-user/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?fit=2560%2C552&amp;ssl=1" data-orig-size="2560,552" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="aws-iam-users-list-with-new-user" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?fit=300%2C65&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?fit=580%2C125&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user.jpg?resize=580%2C125&#038;ssl=1" alt="" class="wp-image-20553" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?resize=1024%2C221&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?resize=300%2C65&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?resize=768%2C166&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?resize=1536%2C331&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?resize=2048%2C442&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-iam-users-list-with-new-user-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS User list with New User</figcaption></figure>



<p>Now click on newly created user &#8216;depoy-laravel-app&#8217; to create <strong>Access key &amp; Secret</strong>.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="341" data-attachment-id="20554" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/create-aws-access-key-secret/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?fit=2560%2C1505&amp;ssl=1" data-orig-size="2560,1505" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="create-aws-access-key-secret" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?fit=300%2C176&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?fit=580%2C341&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret.jpg?resize=580%2C341&#038;ssl=1" alt="" class="wp-image-20554" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?resize=1024%2C602&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?resize=300%2C176&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?resize=768%2C452&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?resize=1536%2C903&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?resize=2048%2C1204&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/create-aws-access-key-secret-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>Create AWS Access Key &amp; Secret</figcaption></figure>



<p>Now click <strong>Create access key </strong>button to create <strong>access key &amp; secret</strong>.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="380" data-attachment-id="20555" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-create-access-key-recommendation/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?fit=2560%2C1678&amp;ssl=1" data-orig-size="2560,1678" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="aws-create-access-key-recommendation" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?fit=300%2C197&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?fit=580%2C380&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation.jpg?resize=580%2C380&#038;ssl=1" alt="" class="wp-image-20555" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?resize=1024%2C671&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?resize=300%2C197&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?resize=768%2C503&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?resize=1536%2C1007&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?resize=2048%2C1342&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-create-access-key-recommendation-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS Create Access Key Recomendation</figcaption></figure>



<p>Now check check the radio button &#8216;<em>I understand the above recommendation and want to proceed to create an access key</em>&#8216;. And click on &#8216;<strong>Next</strong>&#8216; continue.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="138" data-attachment-id="20556" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-add-tag-to-create-access-key/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?fit=2560%2C607&amp;ssl=1" data-orig-size="2560,607" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="aws-add-tag-to-create-access-key" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?fit=300%2C71&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?fit=580%2C138&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key.jpg?resize=580%2C138&#038;ssl=1" alt="" class="wp-image-20556" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?resize=1024%2C243&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?resize=300%2C71&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?resize=768%2C182&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?resize=1536%2C364&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?resize=2048%2C486&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/aws-add-tag-to-create-access-key-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>Set description tag</figcaption></figure>



<p>Finally click &#8216;Create access key&#8217; button to create a key.</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="279" data-attachment-id="20559" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/aws-access-secret-key/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?fit=2560%2C1231&amp;ssl=1" data-orig-size="2560,1231" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="AWS-access-secret-key" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?fit=300%2C144&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?fit=580%2C279&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key.jpg?resize=580%2C279&#038;ssl=1" alt="" class="wp-image-20559" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?resize=1024%2C492&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?resize=300%2C144&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?resize=768%2C369&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?resize=1536%2C739&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?resize=2048%2C985&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/AWS-access-secret-key-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>AWS Retrieve Access key.<br><br>Now note down the <strong>Access key &amp; Secret access key</strong>. (Click on show link to get <meta charset="utf-8"><strong>Secret access key</strong>). Or Click on the <strong>Download .csv file</strong> to get download the access key and secret key in CSV file format.</figcaption></figure>



<h2 class="wp-block-heading">Configuring GitHub Secrets:</h2>



<p>Now login into Github.com account and access your repository settings page to configure all the secrets that are required for CI &amp; CD deployment. I have added following secrets by clicking on &#8216;<strong>New repository secret</strong>&#8216; button. (AWS ACCESS KEY, ACCESS SECRET, PEM FILE, AWS HOSTNAME &amp; USERNAME).</p>



<figure class="wp-block-image size-large"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="413" data-attachment-id="20560" data-permalink="https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/github-action-secret-variables/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?fit=2560%2C1824&amp;ssl=1" data-orig-size="2560,1824" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}" data-image-title="github-action-secret-variables" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?fit=300%2C214&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?fit=580%2C413&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables.jpg?resize=580%2C413&#038;ssl=1" alt="" class="wp-image-20560" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?resize=1024%2C730&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?resize=300%2C214&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?resize=768%2C547&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?resize=1536%2C1094&amp;ssl=1 1536w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?resize=2048%2C1459&amp;ssl=1 2048w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?w=1160&amp;ssl=1 1160w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2023/06/github-action-secret-variables-scaled.jpg?w=1740&amp;ssl=1 1740w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a><figcaption>Github Action Secret Variables</figcaption></figure>



<h2 class="wp-block-heading">Defining the Deployment Workflow:</h2>



<p>Now create &#8216;<strong>.github</strong>&#8216; folder in the project root directory, and add &#8216;<strong>workflows</strong>&#8216; folder in it. Now add <strong>deploy-aws.yml </strong>file in it.</p>



<pre class="wp-block-code"><code>├── .github
│&nbsp;&nbsp; └── workflows
│&nbsp;&nbsp;     └── deploy-aws.yml
├── .gitignore
├── README.md
├── app
```</code></pre>



<p>Now following content to it.</p>



<pre class="wp-block-code"><code>name: Quiz

on:
  push:
    branches:
    - main

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout
      uses: actions/checkout@v2

    - name: Install Build dependencies
      run: |
        sudo apt-get update
        sudo apt-get install -y git php composer
      
    - name: Set up Node.js 18.12.0
      uses: actions/setup-node@v2
      with:
        node-version: '18.12.0'
    
    - name: Configure AWS Credentials
      uses: aws-actions/configure-aws-credentials@v1
      with:
        aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
        aws-secret-access-key: ${{ secrets.AWS_ACCESS_SECRET_KEY }}
        aws-region: eu-west-2

    - name: Install Frontend dependencies
      run: |
        npm install
    
    - name: Build Frontend Code
      run: npm run build

    - name: Build Backend Code
      run: composer install --prefer-dist

    - name: Deploy Laravel code
      env:
          PRIVATE_KEY: ${{ secrets.AWS_PEM_KEY  }}
          HOSTNAME : ${{ secrets.HOSTNAME  }}
          USER_NAME : ${{ secrets.USER_NAME  }}
          ENV : ${{ secrets.ENV  }}
      run: |
        echo "$ENV" &gt; .env
        echo "$PRIVATE_KEY" &gt; private_key &amp;&amp; chmod 600 private_key
        rsync -r --exclude 'node_modules' --exclude 'storage' --exclude '.git/' --delete-after -e "ssh -o StrictHostKeyChecking=no -i private_key" . ${USER_NAME}@${HOSTNAME}:/var/www/nxgeninventors.com/quiz/

        ssh -o StrictHostKeyChecking=no -i private_key ${USER_NAME}@${HOSTNAME} '
            cd /var/www/nxgeninventors.com/simba/ &amp;&amp; 
            sudo chmod -R 777 storage &amp;&amp; 
            php artisan storage:link 
        '
        
        
```</code></pre>



<p>When ever code pushed to <strong>main</strong> branch, it trigger job. </p>



<p>Step1: Checkout codebase from main branch</p>



<p>Step 2: Install build dependencies that are required for this project (git, php, composer). </p>



<p><meta charset="utf-8">Step 3: Setting up Node version 18.12.0. </p>



<p><meta charset="utf-8">Step 4: Configure AWS Credentials (Access key &amp; Secret). </p>



<p><meta charset="utf-8">Step 5: Install Frontend dependencies. </p>



<p>Step 6: Build Frontend Code</p>



<p><meta charset="utf-8">Step 7: Finally Deploy Laravel build code to the server, and set appropriate permission.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://smarttutorials.net/step-by-step-guide-deploying-a-laravel-application-to-aws-lightsail-ubuntu-instance-ec2-using-github-actions-ci-cd/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">20547</post-id>	</item>
		<item>
		<title>Dynamic List Show More &amp; Less Feature Using VueJS</title>
		<link>https://smarttutorials.net/dynamic-list-show-more-less-feature-using-vuejs/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Tue, 04 Aug 2020 00:53:28 +0000</pubDate>
				<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[VueJS]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[vuejs]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=20266</guid>

					<description><![CDATA[We display the array of objects using v-for directive, where content of the each item is large. So by default we will display excerpt of the content with show more button. When user clicks on the show more button, we will display large content with show less button. let see how we are going to implement this for this dynamic list.]]></description>
										<content:encoded><![CDATA[
<p class="lead">This is continuation of my previous tutorial on <a aria-label="undefined (opens in a new tab)" href="https://smarttutorials.net/add-show-more-less-feature-using-vuejs/" target="_blank" rel="noreferrer noopener nofollow">Add Show More &amp; Less feature using VueJS</a>. Before continuing this tutorial, please have a look at my previous tutorial on this <a href="https://smarttutorials.net/add-show-more-less-feature-using-vuejs/">Show More &amp; Less</a>.</p>



<p>We display the array of objects using <strong>v-for</strong> directive, where content of the each item is large. So by default we will display <strong>excerpt</strong> of the content with <strong>show more button</strong>. When user clicks on the <strong>show more</strong> button, we will display <strong>large content</strong> with <strong>show less</strong> button. let see how we are going to implement this for this dynamic list.</p>



<div class="text-center"><a class="btn btn-default btn-success" title="Show More &amp; Less using VueJS Demo" href="//demo.smarttutorials.net/show-more-Less-feature-using-vuejs/dynamic.html" target="_blank" rel="noopener noreferrer">Dynamic List Show More &amp; Less using VueJS Demo</a></div>



<figure class="wp-block-image size-large text-center"><img loading="lazy" decoding="async" width="580" height="249" data-attachment-id="20271" data-permalink="https://smarttutorials.net/dynamic-list-show-more-less-feature-using-vuejs/dynamic-list-show-more-less-feature-using-vuejs-2/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?fit=700%2C300&amp;ssl=1" data-orig-size="700,300" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Dynamic-List-Show-More-Less-Feature-Using-VueJS" data-image-description="&lt;p&gt;Dynamic List Show More &#038; Less Feature Using VueJS&lt;/p&gt;
" data-image-caption="&lt;p&gt;Dynamic List Show More &#038; Less Feature Using VueJS&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?fit=300%2C129&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?fit=580%2C249&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?resize=580%2C249&#038;ssl=1" alt="Dynamic List Show More &amp; Less Feature Using VueJS" class="wp-image-20271" title="Dynamic List Show More &amp; Less Feature Using VueJS" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/Dynamic-List-Show-More-Less-Feature-Using-VueJS.jpg?resize=300%2C129&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></figure>


<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/eixLgOnKSFk" allowfullscreen="allowfullscreen"></iframe></div>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/W7wqGVzn1aA" allowfullscreen="allowfullscreen"></iframe></div>
<pre><code class="language language-html">
&lt;script src="https://unpkg.com/vue"&gt;&lt;/script&gt;
&lt;div id="app"&gt;
    &lt;h1 class="title"&gt;{{title}}&lt;/h1&gt;

    &lt;div&gt;
        &lt;ul&gt;
            &lt;li :key="key" v-for="(list, key) in lists"&gt;
                &lt;!-- Excerpt section --&gt;
                &lt;div class="mb-1 gray-bg" v-show="!list.Flag"&gt;
                    &lt;p class="mb-1"&gt;{{list.about | summary }}&lt;/p&gt;
                    &lt;p class="btn" @click="toggler(list, true);"&gt;Show More&lt;/p&gt;
                &lt;/div&gt;
                &lt;!-- Excerpt section end --&gt;

                &lt;!-- Content section --&gt;
                &lt;div class="mb-1 gray-bg" v-show="list.Flag"&gt;
                    &lt;p class="mb-1" v-html="list.about"&gt;&lt;/p&gt;
                    &lt;p class="btn" @click="toggler(list, false);"&gt;Show Less&lt;/p&gt;
                &lt;/div&gt;
                &lt;!-- Content section end--&gt;
            &lt;/li&gt;
        &lt;/ul&gt;
    &lt;/div&gt;
&lt;/div&gt;
&lt;script&gt;
    var app = new Vue({
                data: function(){
                    return {
                        title: "Dynamic List Show More &amp; Less Feature Using VueJS",
                        lists: [
                            {
                                "about": "Velit adipisicing quis mollit consequat ullamco veniam ipsum in laborum excepteur veniam nostrud qui amet. Quis ipsum nostrud reprehenderit consectetur consectetur consequat id. Ipsum nostrud magna aliquip nisi ea nisi Lorem ut cillum nisi eiusmod tempor. Aute incididunt commodo ea deserunt in quis esse eiusmod voluptate nisi veniam anim.\r\n&lt;br/&gt;Esse eiusmod veniam sunt reprehenderit magna in. Eu officia sunt laborum qui irure ex ad excepteur ea duis quis esse sint occaecat. Laborum ut et dolor labore. Exercitation Lorem culpa quis sint sint exercitation elit ea aute culpa ex. Dolore Lorem consequat dolore consequat reprehenderit voluptate officia pariatur qui dolor ut Lorem labore quis. Sint proident id consequat cupidatat nostrud. Dolore sit labore reprehenderit sit cupidatat voluptate laboris incididunt.\r\n&lt;br/&gt;Qui amet consectetur anim proident dolore nisi dolore. Veniam dolore fugiat deserunt proident officia dolor in tempor ut nulla dolore elit ea labore. Ut anim esse do reprehenderit adipisicing. Et in Lorem incididunt nostrud et. Cillum quis enim nisi ad cillum.\r\n&lt;br/&gt;"
                            },
                            {
                                "about": "Officia veniam Lorem labore eu sint do anim pariatur cupidatat officia fugiat aliqua sunt culpa. Nulla aute voluptate aliquip ea Lorem. Anim laboris dolor velit culpa eu deserunt qui sunt eu in aute. Ut voluptate anim labore in eiusmod aliquip do ea id magna et do et.\r\n&lt;br/&gt;Excepteur sunt eiusmod cillum laboris aliqua elit commodo. Ut anim duis laboris pariatur laborum esse ad aute culpa consequat est occaecat eiusmod qui. Aute sunt laboris officia consectetur nostrud mollit dolore incididunt id. Qui duis elit deserunt culpa ut labore id esse. Laboris veniam duis commodo dolor sit ex id ut occaecat. Aliquip exercitation culpa veniam voluptate occaecat adipisicing ullamco voluptate culpa et dolor fugiat ut aliqua. Sunt id commodo id ut dolore magna non dolor cupidatat anim laboris nulla.\r\n&lt;br/&gt;Nulla aliqua laboris velit eu ex ullamco irure labore id et aliqua. Eiusmod aliqua minim incididunt adipisicing do cillum velit quis non ut voluptate sint velit culpa. Qui cillum tempor excepteur Lorem tempor occaecat laborum magna magna pariatur labore amet est. Eu nulla enim Lorem ex est adipisicing elit velit cupidatat amet do reprehenderit aliquip. Cupidatat magna excepteur laboris officia exercitation anim Lorem tempor. Occaecat ex pariatur aliqua enim.\r\n&lt;br/&gt;"
                            }
                            ]
                    }
                },
                filters: {
                    summary: function(text) {
                        return text.substring(0, 150)+' ...';
                    }
                },
                methods:{
                    toggler(obj, flag){
                        this.$set(obj, 'Flag', flag);
                    }
                }
            });
    app.$mount("#app");        
&lt;/script&gt;
</code></pre>
<p>I have added CDN link of Vue.js v2.6.11, next created VueJS app by instantiating Vue. Using v-for directive listed the array of Objects. Where each item will have two section.&nbsp;</p>
<ol>
<li>Section one &#8211; excerpt data with show more button</li>
<li>Section two &#8211; large data with show less button</li>
</ol>
<p>At a time either one of the section is visible by <strong>dynamic Flag attribute</strong> on each item. I made this <strong>dynamic Flag attribute </strong>is a reactive one using <strong>$set</strong> method. So whenever user clicks on either show more/less button, the toggler method triggered that will either true/false value to display more/less content based on the <strong>Flag value</strong>.&nbsp;</p>
<div class="text-center"><a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download show more &amp; less VueJS Script" href="//www.smarttutorials.net/subscribers.php?id=84" target="_blank" rel="noopener noreferrer"> Download show more &amp; less VueJS Script </a><p></p>
<p><a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a></p>
</div>


<p>By default <strong>less content</strong> is displayed using <strong>v-show</strong> directive, where <strong>v-show</strong> directive checks </p>


<pre><code class="language-html">v-show="!list.Flag"</code></pre>


<p>Initially <strong>Flag property </strong>on <strong>list object is undefined</strong>. Show <strong>!list.Flag</strong> becomes <strong>true</strong>, so less content automatically visible by default.</p>



<p>Please leave comment, If you guys have any doubts.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">20266</post-id>	</item>
		<item>
		<title>Add Show More &amp; Less feature using VueJS</title>
		<link>https://smarttutorials.net/add-show-more-less-feature-using-vuejs/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Mon, 03 Aug 2020 04:51:28 +0000</pubDate>
				<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[VueJS]]></category>
		<category><![CDATA[vuejs]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=20256</guid>

					<description><![CDATA[I had splitted this tutorial onto two parts. Simple Add Show More &#38; Less feature using VueJS Dynamic List Show More &#38; Less Feature Using VueJS Show More &#38; Less using VueJS Demo Step 1: Create index.html file and add..... <a class="read-more" href="https://smarttutorials.net/add-show-more-less-feature-using-vuejs/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[
<p class="lead">I had splitted this tutorial onto two parts.</p>



<ol><li>Simple Add Show More &amp; Less feature using VueJS</li><li>Dynamic List Show More &amp; Less Feature Using VueJS</li></ol>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="580" height="249" data-attachment-id="20263" data-permalink="https://smarttutorials.net/add-show-more-less-feature-using-vuejs/show-more-less-feature-using-vuejs/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?fit=700%2C300&amp;ssl=1" data-orig-size="700,300" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="show-more-less-feature-using-vuejs" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?fit=300%2C129&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?fit=580%2C249&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?resize=580%2C249&#038;ssl=1" alt="Show More &amp; Less feature using VueJS" class="wp-image-20263" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/08/show-more-less-feature-using-vuejs.jpg?resize=300%2C129&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></figure>


<div class="text-center"><a class="btn btn-default btn-success" title="Show More &amp; Less using VueJS Demo" href="https://demo.smarttutorials.net/show-more-Less-feature-using-vuejs/" target="_blank" rel="noopener noreferrer">Show More &amp; Less using VueJS Demo</a></div>


<p><div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/eixLgOnKSFk" allowfullscreen="allowfullscreen"></iframe></div>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/W7wqGVzn1aA" allowfullscreen="allowfullscreen"></iframe></div></p>



<p>Step 1:</p>


<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>Create index.html file and add the following scripts in it.</p>
<p><!-- /wp:paragraph --></p>
<pre><code class="language language-html">
&lt;script src="https://unpkg.com/vue"&gt;&lt;/script&gt;
&lt;div id="app"&gt;
    &lt;h1 class="title"&gt;{{title}}&lt;/h1&gt;
    &lt;div&gt;
        &lt;div class="mb-1 gray-bg" v-show="!showFlag"&gt;
            &lt;p class="mb-1"&gt;Lorem ipsum dolor sit amet consectetur adipisicing elit.&lt;/p&gt;
            &lt;p class="btn" @click="showFlag=true;"&gt;Show More&lt;/p&gt;
        &lt;/div&gt;

        &lt;div class="mb-1 gray-bg" v-show="showFlag"&gt;
            &lt;p class="mb-1"&gt;Velit adipisicing quis mollit consequat ullamco veniam ipsum in laborum excepteur veniam nostrud qui amet. Quis ipsum nostrud reprehenderit consectetur consectetur consequat id. Ipsum nostrud magna aliquip nisi ea nisi Lorem ut cillum nisi eiusmod tempor. Aute incididunt commodo ea deserunt in quis esse eiusmod voluptate nisi veniam anim.&lt;br/&gt;&lt;br/&gt;Esse eiusmod veniam sunt reprehenderit magna in. Eu officia sunt laborum qui irure ex ad excepteur ea duis quis esse sint occaecat. Laborum ut et dolor labore. Exercitation Lorem culpa quis sint sint exercitation elit ea aute culpa ex. Dolore Lorem consequat dolore consequat reprehenderit voluptate officia pariatur qui dolor ut Lorem labore quis. Sint proident id consequat cupidatat nostrud. Dolore sit labore reprehenderit sit cupidatat voluptate laboris incididunt.&lt;br/&gt; &lt;br/&gt;Qui amet consectetur anim proident dolore nisi dolore. Veniam dolore fugiat deserunt proident officia dolor in tempor ut nulla dolore elit ea labore. Ut anim esse do reprehenderit adipisicing. Et in Lorem incididunt nostrud et. Cillum quis enim nisi ad cillum.&lt;br/&gt;&lt;/p&gt;
            &lt;p class="btn" @click="showFlag=false;"&gt;Show Less&lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
&lt;script&gt;
    var app = new Vue({
                data: function(){
                    return {
                        title: "Simple Show More &amp; Less Feature Using VueJS",
                        showFlag: false,
                    }
                }
            });
    app.$mount("#app");        
&lt;/script&gt;
</code></pre>
<p><!-- wp:paragraph --></p>
<p>Where I declared <code><strong>showFlag</strong></code> variable, which will help us to track show more &amp; less status. By default <strong>less text</strong> and <strong>Show more button</strong> will show. When user clicks on Show more button <strong>showFlag</strong> set to <strong>true</strong>. </p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>Now using <strong>v-show </strong>directive, we will <strong>show more text section with show less button</strong>. Meanwhile show less text section with show more button will get hidden. When user clicks on show less button <strong>showFlag</strong> set to <strong>false</strong>. Now v-show directive will hide more text section &amp; show less text section.</p>
<p><!-- /wp:paragraph --></p>
<div class="text-center">
    <a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download show more &amp; less VueJS Script" href="//www.smarttutorials.net/subscribers.php?id=84" target="_blank" rel="noopener noreferrer"> Download show more &amp; less VueJS Script </a><p></p>
<p><a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a></p>
</div>
<p><!-- wp:paragraph --></p>
<p>Please leave comment, If you guys have any doubts.</p>
<p><!-- /wp:paragraph --></p>]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">20256</post-id>	</item>
		<item>
		<title>How to create a unique wedding invitation online?</title>
		<link>https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/</link>
		
		<dc:creator><![CDATA[Jagan K]]></dc:creator>
		<pubDate>Thu, 16 Apr 2020 07:05:19 +0000</pubDate>
				<category><![CDATA[How Things Work]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=20208</guid>

					<description><![CDATA[If you are Jack &#38; spouse is Rose. How about having an online invitation like JackWedsRose.com? Wouldn&#8217;t you be interested in having a unique wedding invitation like that? Read more to find out how There are many services available online..... <a class="read-more" href="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[
<p class="lead">If you are Jack &amp; spouse is Rose. How about having an online invitation like <strong><a href="http://jackwedsrose.com/">JackWedsRose.com</a></strong>? Wouldn&#8217;t you be interested in having a unique wedding invitation like that? Read more to find out how</p>



<p>There are many services available online to create wedding invitations online, but creating something impressive takes time and effort. </p>



<p>If you have all the time in the world you can just craft one perfectly yourself, else you need assistance. </p>



<p>Everyone sends an invitation to mobile devices nowadays. Mobile device has evolved so much in recent years, but do you think e-invitations evolved?</p>



<p>All invitations you receive are usually an image or link in Whatsapp.  If it&#8217;s an image it contains details written in the text which are hard to read. <br>If its link, it&#8217;s is usually large to remember.</p>



<p>How about having an invitation like <strong><a href="http://jackwedsrose.com">JackWedsRose.com</a></strong>?  Wouldn&#8217;t it be easy? </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="580" height="312" data-attachment-id="20211" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/shareimg_eweddinginvite/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?fit=1060%2C570&amp;ssl=1" data-orig-size="1060,570" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="ShareImg_eweddingInvite" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?fit=300%2C161&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?fit=580%2C312&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?resize=580%2C312&#038;ssl=1" alt="Social share invitation preview" class="wp-image-20211" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?resize=1024%2C551&amp;ssl=1 1024w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?resize=300%2C161&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?resize=768%2C413&amp;ssl=1 768w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/ShareImg_eweddingInvite.jpg?w=1060&amp;ssl=1 1060w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></figure>



<p>Don&#8217;t you think it will be unique? </p>



<p>But who has the time to do all the work involved?  Services like <a href="https://eweddinginvite.com">eWeddingInvite.com</a> come as a rescue for you who needs to do something unique.</p>



<p>They collect only a few details to make a complete wedding website &amp; a unique online wedding invitation for you in minutes.</p>



<p>Yes, it&#8217;s possible. </p>



<p>We know people are so terrible at remembering the dates, that&#8217;s why they have smartphones. So let us send them <strong>smart invitations</strong></p>



<h2 class="wp-block-heading">How an invitation can be smart?</h2>



<p>First, it can be smart enough to sit just in the device home screen without the need for any installation. </p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="500" height="376" data-attachment-id="20213" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/invitaion_added_to_home_screen/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?fit=500%2C376&amp;ssl=1" data-orig-size="500,376" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Invitaion_added_to_home_screen" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?fit=300%2C226&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?fit=500%2C376&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?resize=500%2C376&#038;ssl=1" alt="Smart wedding invitation" class="wp-image-20213" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?w=500&amp;ssl=1 500w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Invitaion_added_to_home_screen.jpg?resize=300%2C226&amp;ssl=1 300w" sizes="(max-width: 500px) 100vw, 500px" data-recalc-dims="1" /></figure></div>



<p>Now when your invitee opens it, it opens your invitation with a quick access menu at the bottom. </p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" data-attachment-id="20214" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/easy_for_your_guests_to_come_to_the_event/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?fit=500%2C635&amp;ssl=1" data-orig-size="500,635" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Easy_for_your_guests_to_come_to_the_event" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?fit=236%2C300&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?fit=500%2C635&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?resize=393%2C499&#038;ssl=1" alt="Mobile Wedding Invitation" class="wp-image-20214" width="393" height="499" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?w=500&amp;ssl=1 500w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?resize=236%2C300&amp;ssl=1 236w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Easy_for_your_guests_to_come_to_the_event.jpg?resize=300%2C381&amp;ssl=1 300w" sizes="(max-width: 393px) 100vw, 393px" data-recalc-dims="1" /></figure></div>



<p>It has <strong>Add to Calendar</strong> button, remember it&#8217;s a smartphone with built-in calendar and maps. </p>



<p>He can just add the event to the calendar and their device takes care of reminding him of the event a day before the event. </p>



<p>Now he gets a reminder about your event &amp; he decides to drive to your event venue, he has your invite saved on his home screen, he can just open it and click <strong>&#8220;Get Directions&#8221;</strong></p>



<p>It will get him the driving directions to the venue in his maps application. </p>



<p>Also your invitee can just RSVP to let you know that he isn&#8217;t coming. </p>



<p>Don&#8217;t you think it&#8217;s smart? It saves you &amp; your invitees a lot of time. It&#8217;s convenience. </p>



<p>Now imagine you sent a traditional printed invitation or an image that has the venue details. </p>



<p>It&#8217;s a human tendency to forget the date &amp; even if remembered, he has to search for the venue or to give you a call for the directions. All these hassles are taken away when you send a smart invitation. </p>



<h2 class="wp-block-heading">How easy it is to create such a unique wedding invitation? </h2>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="580" height="257" data-attachment-id="20215" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/required_details_eweddinginvite/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?fit=1010%2C447&amp;ssl=1" data-orig-size="1010,447" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Required_details_eweddinginvite" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?fit=300%2C133&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?fit=580%2C257&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?resize=580%2C257&#038;ssl=1" alt="Minimum details required to create online invitation" class="wp-image-20215" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?w=1010&amp;ssl=1 1010w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?resize=300%2C133&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Required_details_eweddinginvite.png?resize=768%2C340&amp;ssl=1 768w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></figure>



<p>These are the minimum details that are required to build an awesome invitation for you. </p>



<p>Now it&#8217;s time to do something even more. </p>



<p>You see you just build a brand online with a unique name like <strong>JackWedsRose.com</strong>. Let&#8217;s use it to spread your love story.</p>



<h3 class="wp-block-heading"><strong>1. Attach Pre &amp; Post Wedding Photoshoots</strong></h3>



<p>Attach pictures to your invite (wedding website now), so that it tells a story of your love to the world. After the wedding, it becomes a wedding picture gallery for every one of your guests. Update your pictures any number of times in a year. Upload up to 500 pictures from any device. It works even on a smart TV.</p>



<h3 class="wp-block-heading"><strong>2. Write your love story in words</strong></h3>



<p>We believe you have a fantastic story to tell the world about your journey together till the wedding, express yourself in your own words. The world wants to hear.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="580" height="405" data-attachment-id="20219" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/attach_pictures_videos_story/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?fit=1003%2C700&amp;ssl=1" data-orig-size="1003,700" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Attach_Pictures_videos_story" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?fit=300%2C209&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?fit=580%2C405&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?resize=580%2C405&#038;ssl=1" alt="Build your wedding brand by attaching pictures and videos" class="wp-image-20219" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?w=1003&amp;ssl=1 1003w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?resize=300%2C209&amp;ssl=1 300w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/Attach_Pictures_videos_story.png?resize=768%2C536&amp;ssl=1 768w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></figure>



<h3 class="wp-block-heading"><strong>3. Attach your favorite videos</strong></h3>



<p>The adventure you did together recorded on your vacation? Attach the video to the invitation (or) attach any of your favorite video together (or) Just record a video from your phone camera &amp; speak to your guests. It plays to everyone from within invitation in full screen.</p>



<h3 class="wp-block-heading"><strong>4. Attach the YouTube live stream of the event.</strong></h3>



<p>Not every one of the loved ones can attend the event in person. If you are one of the few people who host it online, just attach it to your invite.</p>



<h2 class="wp-block-heading">Get Invitation QR code. </h2>



<p>It&#8217; time to make it even easier for people who see your invitation online. </p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" data-attachment-id="20217" data-permalink="https://smarttutorials.net/how-to-create-unique-wedding-invitation-online/jackwedsrose_qr_code/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?fit=150%2C150&amp;ssl=1" data-orig-size="150,150" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="JackWedsRose_QR_Code" data-image-description="" data-image-caption="" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?fit=150%2C150&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?fit=150%2C150&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?resize=353%2C353&#038;ssl=1" alt="QR code for your invitation" class="wp-image-20217" width="353" height="353" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?w=150&amp;ssl=1 150w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?resize=125%2C125&amp;ssl=1 125w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2020/04/JackWedsRose_QR_Code.png?resize=100%2C100&amp;ssl=1 100w" sizes="(max-width: 353px) 100vw, 353px" data-recalc-dims="1" /></figure></div>



<p>Scanning this QR code on mobile makes your name to display on the mobile screen such as JackWedsRose.com </p>



<p>Did we say that the invitation works in all devices that have a browser? It even works on a smart TV. </p>



<h2 class="wp-block-heading"><a rel="noreferrer noopener" aria-label="Create Invitation Now  (opens in a new tab)" href="https://eweddinginvite.com" target="_blank">Create Invitation Now </a>→<a rel="noreferrer noopener" aria-label="Create Invitation Now  (opens in a new tab)" href="https://eweddinginvite.com" target="_blank"> </a></h2>



<p>It&#8217;s free, You don&#8217;t need to give your email/phone to use our services ever. You can just choose to be anonymous.</p>



<p>You&#8217;ll get an&nbsp;<strong>invite key</strong>&nbsp;once your invitation is made which can be used to login (or) <strong>A unique link i</strong>s assigned to your account which<strong> can be bookmarked to your device home screen for easy access.</strong></p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">20208</post-id>	</item>
		<item>
		<title>Integrate jQuery Autocomplete With Ajax Call in Laravel, MySQL in 5 Minutes</title>
		<link>https://smarttutorials.net/integrate-jquery-autocomplete-with-ajax-call-in-laravel-mysql-in-5-minutes/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Mon, 04 Feb 2019 04:01:33 +0000</pubDate>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[JQUERY]]></category>
		<category><![CDATA[Laravel]]></category>
		<category><![CDATA[MYSQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jquery autocomplete]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=20008</guid>

					<description><![CDATA[In this tutorial we are going to integrate simple and multi textfield autocomplete. I have created video tutorials for integration of jQuery autocomplete with Laravel, where I gave step by step instruction to integrate jQuery UI autocomplete with Laravel. Please..... <a class="read-more" href="https://smarttutorials.net/integrate-jquery-autocomplete-with-ajax-call-in-laravel-mysql-in-5-minutes/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p>In this tutorial we are going to integrate simple and multi textfield autocomplete. I have created video tutorials for integration of jQuery autocomplete with Laravel, where I gave step by step instruction to integrate jQuery UI autocomplete with Laravel. Please follow watch and know more about jQuery UI autocomplete as well integration of jQuery autocomplete with Laravel.</p>
<div class="text-center"><a class="btn btn-default btn-success" title="Laravel jQuery UI Autocomplete Demo" href="https://demo.smarttutorials.net/jqueryui-autocomplete-with-multiple-input-fields/" target="_blank" rel="noopener noreferrer">Laravel jQuery UI Autocomplete Demo</a></div>
<div><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="289" data-attachment-id="20011" data-permalink="https://smarttutorials.net/integrate-jquery-autocomplete-with-ajax-call-in-laravel-mysql-in-5-minutes/laravel-jquery-ui-autocomplete-small/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?fit=700%2C349&amp;ssl=1" data-orig-size="700,349" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Integrate jQuery Autocomplete With Ajax Call in Laravel, MySQL in 5 Minutes" data-image-description="&lt;p&gt;Integrate jQuery Autocomplete With Ajax Call in Laravel, MySQL in 5 Minutes&lt;/p&gt;
" data-image-caption="&lt;p&gt;Integrate jQuery Autocomplete With Ajax Call in Laravel, MySQL in 5 Minutes&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?fit=300%2C150&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?fit=580%2C289&amp;ssl=1" tabindex="0" role="button" class="aligncenter size-full wp-image-20011" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?resize=580%2C289&#038;ssl=1" alt="Integrate jQuery Autocomplete With Ajax Call in Laravel, MySQL in 5 Minutes" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/02/laravel-jquery-ui-autocomplete-small.jpg?resize=300%2C150&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a></div>
<h2>Built using following tools and libraries</h2>
<ol id="donwloadscript">
<li><a href="https://jquery.com/" target="_blank" rel="nofollow noopener noreferrer"> jQuery </a></li>
<li><a href="https://jqueryui.com/" target="_blank" rel="nofollow noopener noreferrer"> jQuery UI </a></li>
<li><a href="https://laravel.com/" target="_blank" rel="nofollow noopener noreferrer">Laravel </a></li>
</ol>
<div class="text-center"><a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download Laravel jQuery Autocomplete Script" href="//www.smarttutorials.net/subscribers.php?id=83" target="_blank" rel="noopener noreferrer"> Download Laravel jQuery Autocomplete Script </a></p>
<p><a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a></p>
</div>
<h2>Integrate jQuery Autocomplete With Laravel Using Ajax MySQL in 5 Minutes:</h2>
<p>I have started with fresh installation of Laravel framework. And download required dependencies jQuery, jQuery UI, and put it into <strong>public</strong> js &amp; css folders.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/pqzuAjwhle4" allowfullscreen="allowfullscreen"></iframe></div>
<h2>Integrate Multi Textfield jQuery Autocomplete With Laravel Using Ajax &amp; MySQL in 5 Minutes:</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/6i1H3MxM8SU" allowfullscreen="allowfullscreen"></iframe></div>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">20008</post-id>	</item>
		<item>
		<title>Integrate jQuery Simple &amp; Multi Textfield Autocomplete With CodeIgniter in 5 Minutes</title>
		<link>https://smarttutorials.net/integrate-jquery-simple-multi-textfield-autocomplete-with-codeigniter-in-5-minutes/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Tue, 29 Jan 2019 05:56:27 +0000</pubDate>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[JQUERY]]></category>
		<category><![CDATA[MYSQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[jQuery]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=19969</guid>

					<description><![CDATA[In this tutorial we are going to integrate jQuery UI Autocomplete with CodeIgniter Framework using jQuery, Ajax and MySQL Database. I will start with scratch and go over advanced concepts of jQuery Autocomplete installation. I have created two pages in..... <a class="read-more" href="https://smarttutorials.net/integrate-jquery-simple-multi-textfield-autocomplete-with-codeigniter-in-5-minutes/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p>In this tutorial we are going to integrate jQuery UI Autocomplete with CodeIgniter Framework using jQuery, Ajax and MySQL Database. I will start with scratch and go over advanced concepts of jQuery Autocomplete installation.</p>
<p>I have created two pages in CodeIgniter application.</p>
<div class="alert alert-info">
<ol>
<li>
Simple jQuery Autocomplete search Integration with CodeIgniter using jQuery, Ajax and MySQL Database</li>
<li>
Multi textfield jQuery Autocomplete search Integration with CodeIgniter using jQuery, Ajax and MySQL Database.</li>
</ol>
</div>
<p>&nbsp;</p>
<div class="text-center"><a class="btn btn-default btn-success" title="CodeIgniter jQuery UI Autocomplete Demo" href="https://demo.smarttutorials.net/jqueryui-autocomplete-with-multiple-input-fields/" target="_blank" rel="noopener noreferrer">CodeIgniter jQuery UI Autocomplete Demo</a></div>
<p>&nbsp;</p>
<div id="donwloadscript"><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="284" data-attachment-id="19974" data-permalink="https://smarttutorials.net/integrate-jquery-simple-multi-textfield-autocomplete-with-codeigniter-in-5-minutes/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?fit=700%2C343&amp;ssl=1" data-orig-size="700,343" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax" data-image-description="&lt;p&gt;how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax&lt;/p&gt;
" data-image-caption="&lt;p&gt;how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?fit=300%2C147&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?fit=580%2C284&amp;ssl=1" tabindex="0" role="button" class="aligncenter size-full wp-image-19974" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?resize=580%2C284&#038;ssl=1" alt="how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-jquery-autocomplete-with-codeigniter-php-mysql-ajax.jpg?resize=300%2C147&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a></div>
<p>&nbsp;</p>
<div class="text-center"><a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download jQuery UI Autocomplete CodeIgniter Script " href="//www.smarttutorials.net/subscribers.php?id=82" target="_blank" rel="noopener noreferrer"> Download jQuery UI Autocomplete CodeIgniter Script </a></div>
<h2>Integrate jQuery UI Autocomplete with CodeIgniter Using jQuery, Ajax &amp; MySQL:</h2>
<p>I have started with fresh installation of CodeIgniter framework. And download required dependencies jQuery, jQuery UI, and put it into <strong>assets</strong> folder.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/4CaRMdx0tV8" allowfullscreen="allowfullscreen"></iframe></div>
<p>Next created <strong>Employees Controller</strong>, and added three pages in it. Also created views for the three page inside <strong>views</strong> and <strong>employees</strong> folder. Finally added Empoyee form in single.ctp file. Next selected <strong>employee_id</strong> text field and initialized jQuery autocomplete.</p>
<pre class="lead"><code class="language-html">
&lt;div class="container"&gt;
    &lt;div class="row"&gt;
        &lt;div class="col-sm-12 col-md-6 offset-md-3"&gt;
            &lt;h1&gt;Simple jQuery Autocomplete in CodeIgniter&lt;/h1&gt;
            &lt;form&gt; 
                &lt;div class="form-group"&gt;
                    &lt;label for="employee_id"&gt;Employee ID&lt;/label&gt;
                    &lt;input type="text" class="form-control" name="employee_id" id="employee_id" aria-describedby="employee_id" placeholder="Enter Employee ID"&gt;
                &lt;/div&gt;
                &lt;div class="form-group"&gt;
                    &lt;label for="first_name"&gt;First Name&lt;/label&gt;
                    &lt;input type="text" class="form-control" name="first_name" id="first_name" placeholder="First Name"&gt;
                &lt;/div&gt;
                &lt;div class="form-group"&gt;
                    &lt;label for="last_name"&gt;Last Name&lt;/label&gt;
                    &lt;input type="text" class="form-control" name="last_name" id="last_name" placeholder="Last Name"&gt;
                &lt;/div&gt;
                &lt;div class="form-group"&gt;
                    &lt;label for="email"&gt;Email&lt;/label&gt;
                    &lt;input type="email" class="form-control" name="email" id="email" placeholder="Email"&gt;
                &lt;/div&gt;
                &lt;div class="form-group"&gt;
                    &lt;label for="designation"&gt;Designation&lt;/label&gt;
                    &lt;input type="text" class="form-control" name="designation" id="designation" placeholder="Designation"&gt;
                &lt;/div&gt;
                &lt;div class="form-group"&gt;
                    &lt;label for="department"&gt;Department&lt;/label&gt;
                    &lt;input type="text" class="form-control" name="department" id="department" placeholder="Department"&gt;
                &lt;/div&gt;
                &lt;button class="btn btn-success btn-block"&gt;Submit&lt;/button&gt;
            &lt;/form&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;

&lt;!-- Our Custom JS Script - Keep Last --&gt;
&lt;script src="&lt;?php echo base_url('assets/js/app.js'); ?&gt;"&gt;&lt;/script&gt;
</code></pre>
<pre><code class="language-js">
$(document).ready(function(){
    var basePath = $("#base_path").val();
    $("#employee_id").autocomplete({
        source: function(request, cb){
            console.log(request);
            
            $.ajax({
                url: basePath+'get-employess/'+request.term,
                method: 'GET',
                dataType: 'json',
                success: function(res){
                    var result;
                    result = [
                        {
                            label: 'There is no matching record found for '+request.term,
                            value: ''
                        }
                    ];

                    console.log("Before format", res);
                    

                    if (res.length) {
                        result = $.map(res, function(obj){
                            return {
                                label: obj.id,
                                value: obj.id,
                                data : obj
                            };
                        });
                    }

                    console.log("formatted response", result);
                    cb(result);
                }
            });
        },
        select: function( event, selectedData ) {
            console.log(selectedData);

            if (selectedData &amp;&amp; selectedData.item &amp;&amp; selectedData.item.data){
                var data = selectedData.item.data;

                $('#first_name').val(data.first_name);
                $('#last_name').val(data.last_name);
                $('#email').val(data.email);
                $('#designation').val(data.designationsName);
                $('#department').val(data.deptName);
            }
            
        }  
    });  
});


</code></pre>
<h2>Integrate Multi Textfield Autocomplete with CodeIgniter Using Ajax &amp; MySQL in 5 Minutes:</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/RpUPOCmCQ1o" allowfullscreen="allowfullscreen"></iframe></div>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19969</post-id>	</item>
		<item>
		<title>How to Integrate Simple &amp; Multi Textfield jQuery UI autocomplete with Cakephp 3 Via Ajax</title>
		<link>https://smarttutorials.net/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp-3-via-ajax/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Wed, 23 Jan 2019 17:27:01 +0000</pubDate>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[JQUERY]]></category>
		<category><![CDATA[MYSQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Twitter Bootstrap]]></category>
		<category><![CDATA[CakePHP3]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[jquery autocomplete]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=19942</guid>

					<description><![CDATA[In this series of video tutorial I am going to cover integration jQuery UI autocomplete with CakePHP 3 from scratch. &#160; CakePHP 3 jQuery UI Autocomplete Demo &#160; Download jQuery UI Autocomplete CakePHP 3 Script Instant Download This Script STEP..... <a class="read-more" href="https://smarttutorials.net/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp-3-via-ajax/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p>In this series of video tutorial I am going to cover integration jQuery UI autocomplete with CakePHP 3 from scratch.</p>
<p>&nbsp;</p>
<div class="text-center"><a class="btn btn-default btn-success" title="CakePHP 3 jQuery UI Autocomplete Demo" href="https://demo.smarttutorials.net/jqueryui-autocomplete-with-multiple-input-fields/" target="_blank" rel="noopener noreferrer">CakePHP 3 jQuery UI Autocomplete Demo </a></div>
<p>&nbsp;</p>
<p><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="363" data-attachment-id="19943" data-permalink="https://smarttutorials.net/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp-3-via-ajax/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?fit=700%2C438&amp;ssl=1" data-orig-size="700,438" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax" data-image-description="&lt;p&gt;How to Integrate Simple &#038; Multi Textfield jQuery UI autocomplete with Cakephp 3 Via Ajax&lt;/p&gt;
" data-image-caption="&lt;p&gt;How to Integrate Simple &#038; Multi Textfield jQuery UI autocomplete with Cakephp 3 Via Ajax&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?fit=300%2C188&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?fit=580%2C363&amp;ssl=1" tabindex="0" role="button" class="aligncenter size-full wp-image-19943" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?resize=580%2C363&#038;ssl=1" alt="" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/how-to-integrate-simple-multi-textfield-jquery-ui-autocomplete-with-cakephp3-ajax.jpg?resize=300%2C188&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a></p>
<div id="donwloadscript" class="text-center"><a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download jQuery UI Autocomplete CakePHP 3 Script " href="//www.smarttutorials.net/subscribers.php?id=81" target="_blank" rel="noopener noreferrer"> Download jQuery UI Autocomplete CakePHP 3 Script </a></p>
<p><a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a></p>
</div>
<h2>STEP 1: INSTALL CAKEPHP 3 USING COMPOSER</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/BY7zu0CVRm0" allowfullscreen="allowfullscreen"></iframe></div>
<p>All modern PHP framework uses Composer to install dependent packages. So please install Composer using below tutorial in your respective Operating system.</p>
<div class="alert alert-info">
<ol>
<li><a href="http://blog.smarttutorials.net/2016/11/install-composer-in-xampp-wamp-windows.html" target="_blank" rel="noopener noreferrer"> Install Composer In XAMPP/WAMP Windows </a></li>
<li><a href="https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx" target="_blank" rel="noopener noreferrer"> Composer Installation – Linux/Unix/OSX </a></li>
</ol>
</div>
<p>Once you have success installed <strong>Composer&nbsp;</strong>successfully, Next install CakePHP 3 using Composer using following command.</p>
<pre class="lead"><code class="language-bash">
composer create-project --prefer-dist cakephp/app PROJECT-NAME
</code>
</pre>
<hr>
<h2>STEP 2: Create CakePHP 3 Custom Layout, Pages &amp; Adding Routing</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/vEiwVaq260E" allowfullscreen="allowfullscreen"></iframe></div>
<p>To create custom layout design in CakePHP 3, Go to src/Template/Layout folder then add new .ctp file in it. Now Copy &amp; paste the content default.ctp and do the necessary changes as per your need.<br />
Next in  order to use the custom layout specify custom layout name inside Controller method name like this.</p>
<pre><code class="language-php">
&lt;?php

namespace App\Controller;

use App\Controller\AppController;
use Cake\Datasource\ConnectionManager;
/**
 * EmployeesController
 */
class EmployeesController extends AppController
{
    /**
     * Index
     */
    public function index()
    {
        $this-&gt;viewBuilder()-&gt;layout('app');
    }
}

</code>
</pre>
<h2>STEP 3: Integrate Simple jQuery UI Autocomplete With CakePHP 3</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/P6-y2WcYBEU" allowfullscreen="allowfullscreen"></iframe></div>
<p>Next I have addded the bootstrap form to the single.ctp file. Also create single.js in webroot/js folder. Next included single.js file in single.ctp file.</p>
<pre><code class="language-php">
&lt;div class="row"&gt;
    &lt;div class="col-sm-12 col-md-6 offset-md-3"&gt;
        &lt;h1&gt;Simple jQuery Autocomplete in CodeIgniter&lt;/h1&gt;
        &lt;form&gt; 
            &lt;div class="form-group"&gt;
                &lt;label for="employee_id"&gt;Employee ID&lt;/label&gt;
                &lt;input type="text" class="form-control" id="employee_id" aria-describedby="employee_id" placeholder="Enter Employee ID"&gt;
            &lt;/div&gt;
            &lt;div class="form-group"&gt;
                &lt;label for="first_name"&gt;First Name&lt;/label&gt;
                &lt;input type="text" class="form-control" name="first_name" id="first_name" placeholder="First Name"&gt;
            &lt;/div&gt;
            &lt;div class="form-group"&gt;
                &lt;label for="last_name"&gt;Last Name&lt;/label&gt;
                &lt;input type="text" class="form-control" name="last_name" id="last_name" placeholder="Last Name"&gt;
            &lt;/div&gt;
            &lt;div class="form-group"&gt;
                &lt;label for="email"&gt;Email&lt;/label&gt;
                &lt;input type="email" class="form-control" name="email" id="email" placeholder="Email"&gt;
            &lt;/div&gt;
            &lt;div class="form-group"&gt;
                &lt;label for="designation"&gt;Designation&lt;/label&gt;
                &lt;input type="text" class="form-control" name="designation" id="designation" placeholder="Designation"&gt;
            &lt;/div&gt;
            &lt;div class="form-group"&gt;
                &lt;label for="department"&gt;Department&lt;/label&gt;
                &lt;input type="text" class="form-control" name="department" id="department" placeholder="Department"&gt;
            &lt;/div&gt;
            &lt;button class="btn btn-success btn-block"&gt;Submit&lt;/button&gt;
        &lt;/form&gt;
    &lt;/div&gt;
&lt;/div&gt;
&lt;?= $this-&gt;Html-&gt;script(['single']) ?&gt;
</code>
</pre>
<h2>STEP 4: Integrate Multi Textfield jQuery UI Autocomplete with CakePHP 3 via Ajax</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/CMoxc4nsYxo" allowfullscreen="allowfullscreen"></iframe></div>
<h2>STEP 5: Integrate Multi Textfield jQuery UI Autocomplete with CakePHP 3 via Ajax</h2>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/3WZyzMCqF2Y" allowfullscreen="allowfullscreen"></iframe></div>
<p>It&#8217;s not good practice to keep Database related queries in CakePHP controller itself. So I have created models using Cake Bake Code generation command line tool.</p>
<p>Next I have moved all the SQL queries in the controller to Models.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19942</post-id>	</item>
		<item>
		<title>Send Email with Attachment Using PHP, jQuery, PHPMailer &amp; Ajax from Scratch to Advanced</title>
		<link>https://smarttutorials.net/send-email-with-attachment-using-php-jquery-phpmailer-ajax-from-scratch-to-advanced/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Wed, 09 Jan 2019 06:24:28 +0000</pubDate>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[JQUERY]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHPMailer]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=19885</guid>

					<description><![CDATA[This is series video tutorial on how to Send Email with Attachment Using PHP, jQuery, PHPMailer &#38; Ajax from Scratch to Advanced. It&#8217;s start with designing simple responsive contact form and sending mail using php mail function, then go over..... <a class="read-more" href="https://smarttutorials.net/send-email-with-attachment-using-php-jquery-phpmailer-ajax-from-scratch-to-advanced/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p>This is series video tutorial on how to Send Email with Attachment Using PHP, jQuery, PHPMailer &amp; Ajax from Scratch to Advanced. It&#8217;s start with designing simple responsive contact form and sending mail using php mail function, then go over explaining about advanced concepts of sending email with attachment. Please follow each video tutorial to know about sending email with attachment.</p>
<p><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?ssl=1"><img loading="lazy" decoding="async" width="580" height="249" data-attachment-id="19886" data-permalink="https://smarttutorials.net/send-email-with-attachment-using-php-jquery-phpmailer-ajax-from-scratch-to-advanced/send-email-with-attachment-using-php-jquery-phpmailer-ajax-from-scratch-to-advanced/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?fit=700%2C300&amp;ssl=1" data-orig-size="700,300" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Send-Email-with-Attachment&#8211;Using-PHP,-jQuery,-PHPMailer-&#038;-Ajax&#8211;from-Scratch-to-Advanced" data-image-description="&lt;p&gt;Send Email with Attachment&lt;br /&gt;
Using PHP, jQuery, PHPMailer &#038; Ajax&lt;br /&gt;
from Scratch to Advanced &lt;/p&gt;
" data-image-caption="&lt;p&gt;Send Email with Attachment&lt;br /&gt;
Using PHP, jQuery, PHPMailer &#038; Ajax&lt;br /&gt;
from Scratch to Advanced &lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?fit=300%2C129&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?fit=580%2C249&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?resize=580%2C249&#038;ssl=1" alt="Send Email with Attachment Using PHP, jQuery, PHPMailer &amp; Ajax from Scratch to Advanced" class="aligncenter size-full wp-image-19886" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?w=700&amp;ssl=1 700w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2019/01/Send-Email-with-Attachment-Using-PHP-jQuery-PHPMailer-Ajax-from-Scratch-to-Advanced.jpg?resize=300%2C129&amp;ssl=1 300w" sizes="(max-width: 580px) 100vw, 580px" data-recalc-dims="1" /></a></p>
<div class="text-center"><a class="btn btn-default btn-success" title="Send mail with attachment in PHP Demo " href="https://demo.smarttutorials.net/send-smtp-mail-with-csv-pdf-image-attachment-using-php-phpmailer-jquery-ajax-demo/" target="_blank" rel="noopener">Send mail with attachment in PHP Demo </a></div>
<p>&nbsp;</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/RhrrnXH62ls" allowfullscreen="allowfullscreen"></iframe></div>
<div class="text-center" id="donwloadscript">
<a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download Send mail with attachment PHP Script" href="//www.smarttutorials.net/subscribers.php?id=80" target="_blank" rel="noopener"> Download Send mail with attachment PHP Script </a><br />
&nbsp;<br />
<a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a></div>
<h2>Step 1: Design Responsive Contact Form &amp; Send email using PHP mail function:</h2>
<p>In this video tutorial we are going to design a simple responsive HMTL5 contact form using bootstrap 4. Then sending mail using php mail() function.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/3_UDZzp3-mc" allowfullscreen="allowfullscreen"></iframe></div>
<h2>Step 2: Why you not send an Email using PHP mail function:</h2>
<p>In this video tutorial I am going to explain why you not to use PHP mail function directly to send email. Also I will cover advantages and disadvantages of PHP mail function. Finally I will cover other solutions for sending email.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/rOS5kLY1wOQ" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 3: Send an Email using PHPMailer without  Composer</h2>
<p>In this video tutorial we are going to see how send an email using PHPMailer without Composer. Here we will download PHPMailer plugin from Github and use it without using PHPMailer.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/pl6-KKCzpsc" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 4: Send an Email using PHPMailer (PHP) with Composer</h2>
<p>In this video tutorial I am going to explain installation of PHPMailer plugin using Composer. Also I will cover the advantages of using Composer in PHP development.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/5_mRVHLliXA" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 5: Send an Email with attachment using PHPMailer (PHP)</h2>
<p>In this video tutorial I am going to explain how to send an email with attachment using PHPMailer.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/UBx45cMUvIs" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 6: Send Email with Multiple attachment using PHPMailer (PHP)</h2>
<p>In this video tutorial I am going to explain how to send an email with Multiple attachment using PHPMailer.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/D7jPqxV92Fg" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 7: How to add jQuery Form Validation to HTML5 Contact Form</h2>
<p>In this video tutorial I am going to explain How to add jQuery Form Validation to HTML5 Contact Form we designed in previous tutorial.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/t2UCj8v77NQ" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 8: How to Submit HTML5 Contact Form Via Ajax using jQuery Form Plugin</h2>
<p>In this video tutorial I am going to explain How to Submit HTML5 Contact Form Via Ajax using jQuery Form Plugin.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/OCqaNXpfR8I" allowfullscreen="allowfullscreen"></iframe></div>
<h2> Step 9: How to Send an Email from localhost using PHPMailer (PHP)</h2>
<p>In this video tutorial I am going to explain  How to Send an Email from localhost using PHPMailer SMTP.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/m5DSUqR_P7U" allowfullscreen="allowfullscreen"></iframe></div>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19885</post-id>	</item>
		<item>
		<title>Responsive Expense Manager HTML5 CSS3 Template Using Bootstrap 4</title>
		<link>https://smarttutorials.net/responsive-expense-manager-html5-css3-template-using-bootstrap-4/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Wed, 26 Sep 2018 17:07:56 +0000</pubDate>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[JQUERY]]></category>
		<category><![CDATA[Twitter Bootstrap]]></category>
		<category><![CDATA[Admin Template]]></category>
		<category><![CDATA[Bootstrap4]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[jQuery]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=19839</guid>

					<description><![CDATA[This responsive expense manager html5, css3 template are built using bootstrap 4. You can use this admin panel for other web application admin panel. It has responsive sidebar navigation for different resolution. &#160; Demo Free Responsive Expense Manager &#160; Built..... <a class="read-more" href="https://smarttutorials.net/responsive-expense-manager-html5-css3-template-using-bootstrap-4/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/09/Responsive-Expense-Manager-HTML5-CSS3-Template-Using-Bootstrap-4-jQuery.png?ssl=1"><img decoding="async" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/09/Responsive-Expense-Manager-HTML5-CSS3-Template-Using-Bootstrap-4-jQuery.png?w=580&#038;ssl=1" alt="Responsive Expense Manager HTML5, CSS3 Template Using Bootstrap 4 jQuery" class="aligncenter img img-responsive" data-recalc-dims="1" /></a><br />
This responsive expense manager html5, css3 template are built using bootstrap 4. You can use this admin panel for other web application admin panel. It has responsive sidebar navigation for different resolution. </p>
<p>&nbsp;</p>
<div class="text-center"><a class="btn btn-default btn-success" title="Demo Free Responsive Expense Manager Admin Template" href="//demo.smarttutorials.net/free-responsive-expense-manager-html5-css3-template-using-bootstrap4-jquery" target="_blank" rel="noopener">Demo Free Responsive Expense Manager </a></div>
<p>&nbsp;</p>
<h2>Built using following tools and libraries</h2>
<ol>
<li>NPM <small>(Latest stable release of  NodeJS)</small></li>
<li>Webpack</li>
<li>jQuery</li>
<li>Chartist.JS</li>
</ol>
<p>&nbsp;</p>
<div class="text-center">
<a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download Free Responsive Admin Template" href="//www.smarttutorials.net/subscribers.php?id=79" target="_blank" rel="noopener"> Download Free Responsive Admin Template </a><br />
&nbsp;<br />
<a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a>
</div>
<p>&nbsp;&nbsp;</p>
<div class="alert alert-success">
<h2> Instructions for Download &#038; Customization of Template: </h2>
<h3> Step 1: </h3>
<p>Download this free responsive expense manager admin template. Downloaded folder contains <strong>dist</strong> folder. This <strong>dist</strong> folder contains final generated html5, css3 and JS files.<br />
<br />
If you want to do customize this admin template, then follow below instructions to customize and generate build.</p>
<h3> Step 2: </h3>
<p>  This free admin template are built using webpack build system. So it requires NodeJS must installed in your system.</p>
<p>  So please install latest stable release of <strong>NodeJS</strong> using <strong>Node Version Manager (NVM)</strong>. Please follow this Video tutorial on <strong>how to install NodeJS in Mac/Ubuntu/Windows Using NVM</strong>, if you not installed NodeJS already using NVM. Because Node Version manager helps us to easily manage NodeJS version.</p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/wDjN-APCy6E" allowfullscreen="allowfullscreen"></iframe></div>
<h3> Step 3:</3><br />
Unzip the downloaded bootstrap responsive admin template. Next open your command terminal and go to the template folder.<br />
<br />
Next install necessary node packages using following node commands.</p>
<pre class="lead"><code class="language-bash">npm install</code></pre>
<h3> Step 4:</3></p>
<p>Next run the following command development server in your local. </p>
<pre><code class="language-bash">npm start</code></pre>
<p>It will automatically open the your index.html file in your default web browser. Now edit and see live changes in browser.</p>
<h3> Step 4:</3><br />
To generate final build, then run the following command.</p>
<pre><code class="language-bash">npm run prod</code></pre>
<p>It will generate final build and put it in <strong>dist</strong> folder</div>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19839</post-id>	</item>
		<item>
		<title>Create Production Ready CRUD Application In 2 Minutes Using CakePHP 3.6</title>
		<link>https://smarttutorials.net/create-production-ready-crud-application-in-2-minutes-using-cakephp-3-6/</link>
		
		<dc:creator><![CDATA[muni]]></dc:creator>
		<pubDate>Wed, 19 Sep 2018 06:54:09 +0000</pubDate>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[MYSQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[CakePHP 3]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://smarttutorials.net/?p=19790</guid>

					<description><![CDATA[In this tutorial we are going to see how to create Production ready application in Just 2 Minutes using CakePHP 3.6. We are going create entire Blog Application in 2 Minutes Using CakePHP Bake Code generation command line tool. If..... <a class="read-more" href="https://smarttutorials.net/create-production-ready-crud-application-in-2-minutes-using-cakephp-3-6/">Read More >>>></a>]]></description>
										<content:encoded><![CDATA[<p><a href="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/09/Create-Production-Ready-CRUD-Application-In-2-Minutes-Using-CakePHP-3.6-1.jpg?ssl=1"><img decoding="async" src="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/09/Create-Production-Ready-CRUD-Application-In-2-Minutes-Using-CakePHP-3.6-1.jpg?w=580&#038;ssl=1" alt="Create Production Ready CRUD Application In 2 Minutes Using CakePHP 3.6" class="aligncenter size-full img img-responsive" data-recalc-dims="1" /></a><br />
In this tutorial we are going to see how to create Production ready application in Just 2 Minutes using CakePHP 3.6. We are going create entire Blog Application in 2 Minutes Using <strong>CakePHP Bake Code generation command line tool</strong>. </p>
<p>If you have designed your MySQL database design properly with all Foreign key constraint. Then it&#8217;s very to generate code for whole application in 2 minutes using CakePHP Bake Command line tool. In this tutorial I am going to use following database design </p>
<p><img loading="lazy" decoding="async" width="353" height="435" data-attachment-id="19354" data-permalink="https://smarttutorials.net/seedpopulate-mysql-database-dummytest-data-using-php-db-seeder/how-to-seed-mysql-db-design-php/" data-orig-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?fit=353%2C435&amp;ssl=1" data-orig-size="353,435" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="how-to-seed-mysql-db-design-php" data-image-description="&lt;p&gt;how-to-seed-mysql-db-design-php&lt;/p&gt;
" data-image-caption="&lt;p&gt;how-to-seed-mysql-db-design-php&lt;/p&gt;
" data-medium-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?fit=243%2C300&amp;ssl=1" data-large-file="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?fit=353%2C435&amp;ssl=1" tabindex="0" role="button" src="https://i0.wp.com/www.smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?resize=353%2C435" alt="how-to-seed-mysql-db-design-php" class="aligncenter size-full wp-image-19354" srcset="https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?w=353&amp;ssl=1 353w, https://i0.wp.com/smarttutorials.net/wp-content/uploads/2018/07/how-to-seed-mysql-db-design-php.png?resize=243%2C300&amp;ssl=1 243w" sizes="(max-width: 353px) 100vw, 353px" data-recalc-dims="1" /></p>
<div class="embed-responsive embed-responsive-16by9" style="margin: 20px auto;"><iframe class="embed-responsive-item" src="https://www.youtube.com/embed/yp0xHqRGKrM" allowfullscreen="allowfullscreen"></iframe></div>
<h2>Prerequisites</h2>
<ol>
<li>Composer <small>(Dependency Manager for PHP)</small></li>
<li>Basic Knowledge Of CakePHP</li>
<li>Knowledge in MySQL</li>
<li>Command Line</li>
</ol>
<h2> Create MySQL Database and Fill/Seed Dummy Data Using PHP DB Seeder Plugin: </h2>
<p>Please create new MySQL Database &#8220;<strong>cake_cms</strong>&#8221; in your MySQL server. Then please follow the below tutorial, where I have explained how to create tables and populate dummy data in those tables using PHP DB seeder plugin.</p>
<div class="alert alert-success">
<p class="lead"><a href="https://smarttutorials.net/seedpopulate-mysql-database-dummytest-data-using-php-db-seeder/" rel="noopener" target="_blank">How to seed/populate MySQL database with dummy/test data Using PHP DB Seeder</a></p>
<p class="text-center"> <small> Note: This tutorial has SQL query to create tables</small> </p>
</div>
<div class="text-center">
<a class="btn btn-default btn-success" style="padding: 15px 50px;" title="Download CakePHP 3.6 Bake Command Script" href="//www.smarttutorials.net/subscribers.php?id=78" target="_blank" rel="noopener"> Download CakePHP 3.6 Bake Command Script </a><br />
&nbsp;<br />
<a class="btn btn-default btn-danger non_premium_user" style="padding: 15px 50px;" rel="nofollow">Instant Download This Script </a>
</div>
<div class="alert alert-success">
<h2> Installation Instructions: </h2>
<ol>
<li>
Download and extract CakePHP application.
    </li>
<li>
Open your terminal and go the extracted CakePHP application, Just run the following command to install necessary PHP packages.</p>
<pre><code class="language-bash"> composer install </code></pre>
</li>
</ol>
</div>
<h2> Install CakePHP 3.6 Using Composer </h2>
<p>All modern PHP framework uses Composer to install dependent packages. So please install Composer using below tutorial in your respective Operating system.</p>
<div class="alert alert-info">
<ol>
<li> <a href="http://blog.smarttutorials.net/2016/11/install-composer-in-xampp-wamp-windows.html" target="_blank"> Install Composer In XAMPP/WAMP Windows </a> </li>
<li> <a href="https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx" target="_blank"> Composer Installation &#8211; Linux/Unix/OSX  </a> </li>
</ol></div>
<p>Once you have installed Composer successfully, then open your Terminal (Command line tool) and run following <strong>Composer command </strong> from your server root folder.</p>
<pre class="command-line" data-prompt="C:\XAMPP\htdocs>"><code class="language-bash">composer create-project --prefer-dist cakephp/app YOUR-PROJECT-NAME</code></pre>
<p><small> &#8212; Note: In the above command replace <strong>YOUR-PROJECT-NAME</strong> with your project name.</small></p>
<p>This will download all necessary PHP packages and create CakePHP application in your server root folder (www/htdocs).</p>
<h2> Create .env file from .env.default file in config folder: </h2>
<p>Next copy `config/.env.default to `config/.env` and keep all your application configurations. </p>
<pre><code class="language-js">
export APP_NAME="Cake CMS in 2 Minutes"
export DEBUG="true"
export APP_ENCODING="UTF-8"
export APP_DEFAULT_LOCALE="en_US"
export APP_DEFAULT_TIMEZONE="UTC"
export SECURITY_SALT="761b5ae3729c9ee45fb6ccc02d8fe61b2a6e9981c8499aac2384a424ec45d5cb"


#DATABASE
export DATABASE_NAME = "cake_cms"
export DATABASE_USER = "root"
export DATABASE_PASSWORD = "mysql"
export DATABASE_HOST = "localhost"
</code>
</pre>
<h2> Load .env file Using bootstrap.php: </h2>
<p>Next open your bootstrap.php file in config folder, and uncomment following lines (line no: 52) of code to load environment configuration (.env file) to your applications.</p>
<pre><code class="language-php">
/**
 * Uncomment block of code below if you want to use `.env` file during development.
 * You should copy `config/.env.default to `config/.env` and set/modify the
 * variables as required.
 */
if (!env('APP_NAME') &amp;&amp; file_exists(CONFIG . '.env')) {
    $dotenv = new \josegonzalez\Dotenv\Loader([CONFIG . '.env']);
    $dotenv-&gt;parse()
        -&gt;putenv()
        -&gt;toEnv()
        -&gt;toServer();
}
</code></pre>
<h2> Connect MySQL Database Using Configuration loaded from .env config file: </h2>
<p>Now you can get the configuration your defined in .env file in your application using <strong>env()</strong> function. Where <strong>env(&#8216;CONFIG_NAME&#8217;, &#8216;default_value&#8217;)</strong> accepts two parameter</p>
<p>&#8211; One is config variable name you defined in the .env file<br />
&#8211; other is default value if config variable is not defined in that name.</p>
<p>Now I am changing MySQL connection configuration <strong>app.php</strong> file in the config folder to use configuration defined in .env file. </p>
<pre><code class="language-php">
'Datasources' =&gt; [
        'default' =&gt; [
            'className' =&gt; 'Cake\Database\Connection',
            'driver' =&gt; 'Cake\Database\Driver\Mysql',
            'persistent' =&gt; false,
            'host' =&gt; env('DATABASE_HOST', 'localhost'),
            /**
             * CakePHP will use the default DB port based on the driver selected
             * MySQL on MAMP uses port 8889, MAMP users will want to uncomment
             * the following line and set the port accordingly
             */
            //'port' =&gt; 'non_standard_port_number',
            'username' =&gt; env('DATABASE_USER', 'localhost'),
            'password' =&gt; env('DATABASE_PASSWORD', ''),
            'database' =&gt; env('DATABASE_NAME', 'cake_cms'),
            'encoding' =&gt; 'utf8',
            'timezone' =&gt; 'UTC',
            'flags' =&gt; [],
            'cacheMetadata' =&gt; true,
            'log' =&gt; false,

            /**
             * Set identifier quoting to true if you are using reserved words or
             * special characters in your table or column names. Enabling this
             * setting will result in queries built using the Query Builder having
             * identifiers quoted when creating SQL. It should be noted that this
             * decreases performance because each query needs to be traversed and
             * manipulated before being executed.
             */
            'quoteIdentifiers' =&gt; false,

            /**
             * During development, if using MySQL &lt; 5.6, uncommenting the
             * following line could boost the speed at which schema metadata is
             * fetched from the database. It can also be set directly with the
             * mysql configuration directive 'innodb_stats_on_metadata = 0'
             * which is the recommended value in production environments
             */
            //'init' =&gt; ['SET GLOBAL innodb_stats_on_metadata = 0'],

            'url' =&gt; env('DATABASE_URL', null),
        ],

        /**
         * The test connection is used during the test suite.
         */
        'test' =&gt; [
            'className' =&gt; 'Cake\Database\Connection',
            'driver' =&gt; 'Cake\Database\Driver\Mysql',
            'persistent' =&gt; false,
            'host' =&gt; 'localhost',
            //'port' =&gt; 'non_standard_port_number',
            'username' =&gt; 'my_app',
            'password' =&gt; 'secret',
            'database' =&gt; 'test_myapp',
            'encoding' =&gt; 'utf8',
            'timezone' =&gt; 'UTC',
            'cacheMetadata' =&gt; true,
            'quoteIdentifiers' =&gt; false,
            'log' =&gt; false,
            //'init' =&gt; ['SET GLOBAL innodb_stats_on_metadata = 0'],
            'url' =&gt; env('DATABASE_TEST_URL', null),
        ],
    ],
</code></pre>
<h2> Code Generation with Bake Command Line Tool: </h2>
<p>Now open command line and go to your project bin folder, and run the following commands to generate scripts automatically using CakePHP Bake Command line tool.</p>
<pre class="command-line" data-user="root" data-host="~"><code class="language-bash">cd C:\XAMPP\htdocs\cake-cms\bin</code></pre>
<p>Next run the following commands to generate scripts automatically.</p>
<pre class="command-line" data-prompt="C:\XAMPP\htdocs\cake-cms\bin"><code class="language-bash">cake bake all articles
cake bake all articles_tags
cake bake all tags
cake bake all users</code></pre>
<p>In MacOS you run this command like this.</p>
<pre class="command-line" data-prompt="Applications/AMPPS/www/cake-cms/bin"><code class="language-bash">./cake bake all articles
./cake bake all articles_tags
./cake bake all tags
./cake bake all users</code></pre>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19790</post-id>	</item>
	</channel>
</rss>