<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Topics tagged with javascript]]></title><description><![CDATA[A list of topics that have been tagged with javascript]]></description><link>https://lankadevelopers.lk/tags/javascript</link><generator>RSS for Node</generator><lastBuildDate>Mon, 12 Oct 2026 16:10:49 GMT</lastBuildDate><atom:link href="https://lankadevelopers.lk/tags/javascript.rss" rel="self" type="application/rss+xml"/><pubDate>Invalid Date</pubDate><ttl>60</ttl><item><title><![CDATA[Why is PunjabiJutti is a destination for every jutti collector?]]></title><description><![CDATA[<p dir="auto">At <strong><a href="https://punjabijuttis.com/" target="_blank" rel="noopener noreferrer nofollow ugc">PunjabiJutti</a></strong>, we have curated a colourful range of regional Indian jutti designs for authentic fashion lovers. Our jutti collections show the uniqueness of each Indian state’s jutti, embroidery style, materials and prints that tell the story of the culture. We offer juttis for brides-to-be or for anyone who loves artisanal wear. Every pair is handcrafted by artisans, making each pair from PunjabiJutti walk through India’s craft traditions that last centuries.</p>
]]></description><link>https://lankadevelopers.lk/topic/1549/why-is-punjabijutti-is-a-destination-for-every-jutti-collector</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/1549/why-is-punjabijutti-is-a-destination-for-every-jutti-collector</guid><dc:creator><![CDATA[Punjabijuttis Official]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Hire JavaScript Developers]]></title><description><![CDATA[<p dir="auto">Looking to <a href="https://7span.com/hire-javascript-developers" target="_blank" rel="noopener noreferrer nofollow ugc">hire JavaScript developers</a>? 7Span offers expert JavaScript developers for hire who are proficient in building robust, scalable, and innovative web applications. Whether you need to hire a JavaScript developer for a specific project or hire dedicated JavaScript developers to extend your team, our skilled JavaScript programmers are ready to deliver high-quality solutions tailored to your needs.</p>
]]></description><link>https://lankadevelopers.lk/topic/1446/hire-javascript-developers</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/1446/hire-javascript-developers</guid><dc:creator><![CDATA[7span seo]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[TypeScript vs JavaScript: Which One to Choose in 2025?]]></title><description><![CDATA[<p dir="auto">When comparing <a href="https://7span.com/blog/typescript-vs-javascript" target="_blank" rel="noopener noreferrer nofollow ugc">TypeScript vs JavaScript</a>, it’s essential to understand their core differences and use cases. TypeScript, a statically typed superset of JavaScript, enhances code reliability with features like type annotations and compile-time error checks, making it ideal for large-scale applications, while JavaScript remains a flexible, dynamically typed language perfect for smaller projects. The difference between TypeScript and JavaScript lies in TypeScript’s static typing and tooling support, which boosts developer productivity and reduces runtime errors, whereas JavaScript offers simplicity and broader runtime compatibility. Deciding whether to use TypeScript or JavaScript depends on project complexity—TypeScript over JavaScript excels in enterprise environments requiring scalability, while JavaScript over TypeScript may suffice for lightweight scripts or legacy systems. A detailed comparison of TypeScript and JavaScript highlights TypeScript’s advantages in maintainability and collaboration, though both JavaScript and TypeScript coexist in modern web development. For teams prioritizing robust architecture, it’s wise to hire TypeScript developers who can leverage strong typing and advanced features to build future-proof applications efficiently.</p>
]]></description><link>https://lankadevelopers.lk/topic/1298/typescript-vs-javascript-which-one-to-choose-in-2025</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/1298/typescript-vs-javascript-which-one-to-choose-in-2025</guid><dc:creator><![CDATA[7span seo]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[JavaScript variables]]></title><description><![CDATA[<p dir="auto">Thank you very much !</p>
]]></description><link>https://lankadevelopers.lk/topic/951/javascript-variables</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/951/javascript-variables</guid><dc:creator><![CDATA[Nubelle]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[How to update individually buttons icons got from a same component in React]]></title><description><![CDATA[<p dir="auto">I have a View All page. The page has a table with user data with actions that can be performed. The button has two different icons. Spinner icon and a default icon. I want to change the icon of the button until the task executes.</p>
<p dir="auto">Ex: Showing spinner icon until M_1's disabling/deleting process works and showing back the lock/trash icon.</p>
<p dir="auto">I know how to update one button icon by putting useState. When 1 row has 2 buttons that mean 2 useStates. So 2 rows mean 4 useStates. But that's not practical noh. I want to know how to do it the correct way.</p>
<p dir="auto">Table with buttons:<br />
<img src="https://ibb.co/qMsBgZr" alt="table with buttons" class=" img-responsive img-markdown" /></p>
<p dir="auto">View All Page:</p>
<pre><code>import React, { useEffect, useState } from 'react'
import {
  CButton,
  CCard,
  CCardBody,
  CCardHeader,
  CCol,
  CRow,
  CSpinner,
  CTable,
  CTableBody,
  CTableDataCell,
  CTableHead,
  CTableHeaderCell,
  CTableRow,
} from '@coreui/react'
import CIcon from '@coreui/icons-react'
import { cilTrash, cilLockLocked } from '@coreui/icons'

const ViewAll = () =&gt; {
  const [usersData, setUsersData] = useState({})

  const [disabled, setDisabled] = useState(false)

  const handleLoadMembers = async () =&gt; {
    try {
      const _data = await fetch('http://localhost:4000/api/v1/member/list', {
        method: 'GET',
        headers: {
          'Content-Type': 'application/json',
          Authorization: 'Bearer ' + localStorage.getItem('token'),
        },
      })

      if (_data.status !== 200) {
        throw new Error()
      }

      const data = await _data.json()
      setUsersData(data.members)
    } catch (err) {
      console.error(err)
    }
  }

  const handleDelete = async (id) =&gt; {
    alert('clicked')
    try {
      const _data = await fetch('http://localhost:4000/api/v1/member/remove/' + id, {
        method: 'GET',
        headers: {
          'Content-Type': 'application/json',
          Authorization: 'Bearer ' + localStorage.getItem('token'),
        },
      })
      window.location.reload()

      console.log(_data)
    } catch (err) {
      console.error(err)
    }
  }

  useEffect(() =&gt; {
    handleLoadMembers()
  }, [])

  return (
    &lt;CRow&gt;
      &lt;CCol xs={12}&gt;
        &lt;CCard className="mb-4"&gt;
          &lt;CCardHeader&gt;
            &lt;strong&gt;All Members&lt;/strong&gt;
          &lt;/CCardHeader&gt;

          {usersData.length &gt; 0 ? (
            &lt;CCardBody&gt;
              &lt;p className="text-medium-emphasis small"&gt;Here the all members of your community.&lt;/p&gt;
              &lt;CTable hover bordered&gt;
                &lt;CTableHead color="dark"&gt;
                  &lt;CTableRow&gt;
                    &lt;CTableHeaderCell scope="col"&gt;Member ID&lt;/CTableHeaderCell&gt;
                    &lt;CTableHeaderCell scope="col"&gt;Name&lt;/CTableHeaderCell&gt;
                    &lt;CTableHeaderCell scope="col"&gt;Email&lt;/CTableHeaderCell&gt;
                    &lt;CTableHeaderCell scope="col"&gt;Actions&lt;/CTableHeaderCell&gt;
                  &lt;/CTableRow&gt;
                &lt;/CTableHead&gt;
                &lt;CTableBody&gt;
                  {usersData.map((item, index) =&gt; {
                    return (
                      &lt;CTableRow key={index}&gt;
                        &lt;CTableHeaderCell scope="row"&gt;M_{item.index}&lt;/CTableHeaderCell&gt;
                        &lt;CTableDataCell&gt;{item.name}&lt;/CTableDataCell&gt;
                        &lt;CTableDataCell&gt;{item.email}&lt;/CTableDataCell&gt;
                        &lt;CTableDataCell class="d-flex justify-content-evenly"&gt;
                          &lt;CButton
                            color="danger"
                            size="sm"
                            disabled={disabled}
                            onClick={() =&gt; handleDelete(item._id)}
                          &gt;
                            {disabled ? (
                              &lt;CSpinner
                                component="span"
                                className="me-2"
                                size="sm"
                                aria-hidden="true"
                              /&gt;
                            ) : (
                              &lt;CIcon icon={cilTrash} className="me-2" /&gt;
                            )}
                            Delete
                          &lt;/CButton&gt;
                          &lt;CButton
                            color="warning"
                            size="sm"
                            disabled={disabled}
                            onClick={() =&gt; handleDelete(item._id)}
                          &gt;
                            {disabled ? (
                              &lt;CSpinner
                                component="span"
                                className="me-2"
                                size="sm"
                                aria-hidden="true"
                              /&gt;
                            ) : (
                              &lt;CIcon icon={cilLockLocked} className="me-2" /&gt;
                            )}
                            Disable
                          &lt;/CButton&gt;
                        &lt;/CTableDataCell&gt;
                      &lt;/CTableRow&gt;
                    )
                  })}
                &lt;/CTableBody&gt;
              &lt;/CTable&gt;
            &lt;/CCardBody&gt;
          ) : (
            'No data'
          )}
        &lt;/CCard&gt;
      &lt;/CCol&gt;
    &lt;/CRow&gt;
  )
}

export default ViewAll
</code></pre>
]]></description><link>https://lankadevelopers.lk/topic/889/how-to-update-individually-buttons-icons-got-from-a-same-component-in-react</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/889/how-to-update-individually-buttons-icons-got-from-a-same-component-in-react</guid><dc:creator><![CDATA[nipooNM]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[**Full Stack Developer (Spring Boot, Angular 2)**]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/1761">@sofidig</a></p>
<p dir="auto">not for me , i sent this to my friends if they interested,  they'll contact you</p>
]]></description><link>https://lankadevelopers.lk/topic/880/full-stack-developer-spring-boot-angular-2</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/880/full-stack-developer-spring-boot-angular-2</guid><dc:creator><![CDATA[root]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[සිංහල යුනිකෝඩ් characters තියෙන slug එකක් හදාගන්නේ කොහොමද?]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/1049">@kasun-viduranga</a> 😯 Thank you thank you 🤝</p>
]]></description><link>https://lankadevelopers.lk/topic/869/ස-හල-ය-න-ක-ඩ-characters-ත-ය-න-slug-එකක-හද-ගන-න-ක-හ-මද</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/869/ස-හල-ය-න-ක-ඩ-characters-ත-ය-න-slug-එකක-හද-ගන-න-ක-හ-මද</guid><dc:creator><![CDATA[ushanmithma]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Serverless with JAMstack]]></title><description><![CDATA[<h1>Traditional Approach</h1>
<hr />
<p dir="auto">Traditionally, we’ve built and deployed (Hosted) web applications where we have a 24hrs up and running remote computer called server. Our application runs on that server and we are responsible for provisioning and managing the resources for the severs. There are a few issues with this.</p>
<p dir="auto"><img src="/assets/uploads/files/1619690849748-wofs8.png" alt="wOfS8.png" class=" img-responsive img-markdown" /></p>
<ol>
<li>
<p dir="auto">We are charged for keeping the server up and running even when we are not serving out any requests.</p>
</li>
<li>
<p dir="auto">We are responsible for uptime and maintenance of the server and all its resources.</p>
</li>
<li>
<p dir="auto">We also responsible for applying the appropriate updates and patches to the server.</p>
</li>
</ol>
<p dir="auto">As our usage scales we need to manage scaling up our server as well. And as a result manage scaling it down when we don’t have as much usage.</p>
<p dir="auto">For smaller companies and individual developers this can be a lot to handle. This ends up distracting from the more important job that we have; building and maintaining the actual application. At larger organisations this is handled by the infrastructure team and usually it is not the responsibility of the individual developer. However, the processes necessary to support this can end up slowing down development times. As you cannot just go ahead and build your application without working with the infrastructure team to help you get up and running.  In Other hand we have to do a lot of things to secure the server from viruses plus cyber attacks and also we have to monitor servers 24h, it’s a painless thing for developers. As developers we’ve been looking for a solution to these problems and this is where <strong>Serverless</strong> comes in.</p>
<hr />
<h1>What is Serverless?</h1>
<hr />
<p dir="auto">Serverless computing (or Serverless for short), is an execution model where the cloud provider (AWS, Azure, or Google Cloud) is responsible for executing a piece of code by dynamically allocating the resources. And only charging for the amount of resources used to run the code. The code is typically run inside stateless containers that can be triggered by a variety of events including http requests, database events, queuing services, monitoring alerts, file uploads, scheduled events (cron jobs), etc. The code that is sent to the cloud provider for execution is usually in the form of a function. Hence serverless is sometimes referred to as “Functions as a Service” or “FaaS”.</p>
<p dir="auto"><img src="/assets/uploads/files/1619691118317-laravellampstacki1.png" alt="laravelLampStackI1.png" class=" img-responsive img-markdown" /></p>
<hr />
<h1>What is  JAMstack ?</h1>
<hr />
<p dir="auto">A modern web development architecture based on client-side JavaScripts, reusable APIs, and prebuilt Markup It’s called JAMstack, JAM stands for JavaScript, APIs, Markup. The JAMstack is an approach to frontend web development (the construction of content and interfaces that users interact with). It allows developers to quickly create and efficiently serve static websites to users.</p>
<p dir="auto">A JAMstack website or application is constructed using only above three elements. The static website that the user sees is built out of HTML and CSS markup code. JavaScript is used for any necessary dynamic functionality, and for calling APIs. APIs provide the application's backend.</p>
<p dir="auto"><img src="/assets/uploads/files/1619691440542-uhgkexe8lxjsmj6cznqmiw3bpsezn0mu9eun.png" alt="uHGkEXe8lXJsmj6cZNQmIW3bpsEzn0mU9Eun.png" class=" img-responsive img-markdown" /></p>
<hr />
<h1>JAMstack Example</h1>
<hr />
<p dir="auto">A developer builds a web application that provides updates on European football scores. He creates a backend application that runs on a server he operates and constantly checks the scores of the latest matches. When a user opens up the web application, his server generates HTML pages that display those scores, then sends those pages to the user. However, his web application is somewhat slow: before a user can view those pages, they have to wait for the backend application to run, for the HTML to be generated, and for the HTML to reach their device.</p>
<p dir="auto">Now suppose the developer rebuilds his entire web application using a JAMstack approach. Instead of writing an entire backend application, he creates a series of lightweight HTML pages that he stores in a CDN (content delivery network). When a user opens up the application, the CDN immediately delivers the corresponding HTML pages to the user, since the CDN is far closer to the user than the developer's server. The application also makes an API call in order to fill out the live football match scores on the page. Now the application loads very quickly for the end user, and from this perspective, there is much less need to write code that will handle the backend, server-side work of updating the scores.</p>
<hr />
<h1>What are the main benefits of using JAMstack?</h1>
<hr />
<p dir="auto"><strong>Performance</strong>:  Almost all of the content in a JAMstack application is made up of static HTML files that are served from a CDN. This is the fastest way to deliver web content to end users.</p>
<p dir="auto"><strong>Scalability</strong>: If an application is "scalable," that means that it responds well to large increases in usage. Because the JAMstack frontend is fast and the backend is lightweight, JAMstack applications are often extremely scalable.</p>
<p dir="auto"><strong>Developer experience</strong>: JAMstack enables developers to focus on building a compelling frontend user experience, without worrying about the backend or performance issues.</p>
<hr />
<p dir="auto"><strong>Resources</strong></p>
<p dir="auto"><a href="https://aws.amazon.com/blogs/compute/the-serverless-lamp-stack-part-4-building-a-serverless-laravel-application/" target="_blank" rel="noopener noreferrer nofollow ugc">https://aws.amazon.com/blogs/compute/the-serverless-lamp-stack-part-4-building-a-serverless-laravel-application/</a></p>
<p dir="auto"><a href="https://www.freecodecamp.org/news/an-introduction-to-the-jamstack-the-architecture-of-the-modern-web-c4a0d128d9ca/" target="_blank" rel="noopener noreferrer nofollow ugc">https://www.freecodecamp.org/news/an-introduction-to-the-jamstack-the-architecture-of-the-modern-web-c4a0d128d9ca/</a></p>
<p dir="auto"><a href="https://www.cloudflare.com/learning/performance/what-is-jamstack/" target="_blank" rel="noopener noreferrer nofollow ugc">https://www.cloudflare.com/learning/performance/what-is-jamstack/</a></p>
]]></description><link>https://lankadevelopers.lk/topic/818/serverless-with-jamstack</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/818/serverless-with-jamstack</guid><dc:creator><![CDATA[lkdev]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Introduction to Nest.js — A Progressive node.js framework for backend.]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/27">@root</a> Thanks :)</p>
]]></description><link>https://lankadevelopers.lk/topic/812/introduction-to-nest-js-a-progressive-node-js-framework-for-backend</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/812/introduction-to-nest-js-a-progressive-node-js-framework-for-backend</guid><dc:creator><![CDATA[BuddhikaNelum]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[👷 Full Stack Developer [wanted]]]></title><description><![CDATA[<p dir="auto">Thanks bro</p>
]]></description><link>https://lankadevelopers.lk/topic/758/full-stack-developer-wanted</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/758/full-stack-developer-wanted</guid><dc:creator><![CDATA[Nubelle]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[php seo friendly url]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/1049">@kasun-viduranga</a> edapn inbox karanam</p>
]]></description><link>https://lankadevelopers.lk/topic/751/php-seo-friendly-url</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/751/php-seo-friendly-url</guid><dc:creator><![CDATA[Nubelle]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[FRONTEND&#x2F;ui&#x2F;js&#x2F;mysql&#x2F;php]]></title><description><![CDATA[<p dir="auto">Still open if anyone is interested, mainly frontend work (html5, js, bootstrap4)</p>
]]></description><link>https://lankadevelopers.lk/topic/705/frontend-ui-js-mysql-php</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/705/frontend-ui-js-mysql-php</guid><dc:creator><![CDATA[Fedde]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Laravel Controller eka use karala wena site ehekata POST method eken Data Post]]></title><description><![CDATA[<p dir="auto">kohomd check karanne? :(</p>
]]></description><link>https://lankadevelopers.lk/topic/654/laravel-controller-eka-use-karala-wena-site-ehekata-post-method-eken-data-post</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/654/laravel-controller-eka-use-karala-wena-site-ehekata-post-method-eken-data-post</guid><dc:creator><![CDATA[rithu20]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[arrays සම්බන්ද, මේ JavaScript ගැටලුව විසද ගන්න උදව් ඕන.]]></title><description><![CDATA[<p dir="auto">meken idea ekak ganna puluwan wei <a href="https://stackoverflow.com/questions/62949257/how-to-access-an-array-in-an-array-in-a-collection" target="_blank" rel="noopener noreferrer nofollow ugc">https://stackoverflow.com/questions/62949257/how-to-access-an-array-in-an-array-in-a-collection</a></p>
]]></description><link>https://lankadevelopers.lk/topic/587/arrays-සම-බන-ද-ම-javascript-ග-ටල-ව-ව-සද-ගන-න-උදව-ඕන</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/587/arrays-සම-බන-ද-ම-javascript-ග-ටල-ව-ව-සද-ගන-න-උදව-ඕන</guid><dc:creator><![CDATA[ijseGovindu]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Embedable widget එකක්හ දන්නේ කොහොමද?]]></title><description><![CDATA[<p dir="auto">I could do this using VueJs.</p>
<p dir="auto">Try this &gt; <a href="https://itnext.io/vuidget-how-to-create-an-embeddable-vue-js-widget-with-vue-custom-element-674bdcb96b97" target="_blank" rel="noopener noreferrer nofollow ugc">https://itnext.io/vuidget-how-to-create-an-embeddable-vue-js-widget-with-vue-custom-element-674bdcb96b97</a></p>
]]></description><link>https://lankadevelopers.lk/topic/552/embedable-widget-එකක-හ-දන-න-ක-හ-මද</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/552/embedable-widget-එකක-හ-දන-න-ක-හ-මද</guid><dc:creator><![CDATA[malinga91]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Neutralinojs 2020 — Roadmap]]></title><description><![CDATA[<p dir="auto">can you do an article about this in Sinhala ?</p>
]]></description><link>https://lankadevelopers.lk/topic/500/neutralinojs-2020-roadmap</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/500/neutralinojs-2020-roadmap</guid><dc:creator><![CDATA[root]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Angular වලට use කරන npm packages HTML වලට use කරන්න පුළුවන්ද ?]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/1049">@kasun-viduranga</a></p>
<p dir="auto">Angular walata hadapuwa nam ba , anith ewa puluwan</p>
]]></description><link>https://lankadevelopers.lk/topic/497/angular-වලට-use-කරන-npm-packages-html-වලට-use-කරන-න-ප-ළ-වන-ද</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/497/angular-වලට-use-කරන-npm-packages-html-වලට-use-කරන-න-ප-ළ-වන-ද</guid><dc:creator><![CDATA[root]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[CMBJS 2020: January Edition]]></title><description><![CDATA[<p dir="auto">welcome all</p>
]]></description><link>https://lankadevelopers.lk/topic/492/cmbjs-2020-january-edition</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/492/cmbjs-2020-january-edition</guid><dc:creator><![CDATA[Nubelle]]></dc:creator><pubDate>Invalid Date</pubDate></item><item><title><![CDATA[Send Emails without a server-side code with Angular]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://lankadevelopers.lk/uid/216">@Udith-Indrakantha</a></p>
<p dir="auto">awesome bro , thank you</p>
]]></description><link>https://lankadevelopers.lk/topic/460/send-emails-without-a-server-side-code-with-angular</link><guid isPermaLink="true">https://lankadevelopers.lk/topic/460/send-emails-without-a-server-side-code-with-angular</guid><dc:creator><![CDATA[root]]></dc:creator><pubDate>Invalid Date</pubDate></item></channel></rss>