{"componentChunkName":"component---src-templates-blog-list-template-js","path":"/150","result":{"data":{"allMarkdownRemark":{"edges":[{"node":{"excerpt":"Cocoapod is a package dependency manager for Objective-C and Swift projects with XCode. Those Languages are used to make applications that…","fields":{"slug":"/engineering/what-is-cocoapods-and-installation/"},"html":"<p>Cocoapod is a package dependency manager for Objective-C and Swift projects with XCode. Those Languages are used to make applications that run iOS, macOS, watchOS and tvOS. Cocoapods also acts as a coding hub to share your code with other people. That way we as a community of coders don’t have to “re-invent the wheel” to tackle problems that have already been solved.</p>\n<h4 id=\"installing-cocoapods\" style=\"position:relative;\"><a href=\"#installing-cocoapods\" aria-label=\"installing cocoapods permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Installing Cocoapods</h4>\n<p>Cocoapods is built on top of Ruby, so you would need to install that in your system before using Cocoapods.<br>\nThen, you can install using this command:<br>\n<code>sudo gem install cocoapods</code></p>\n<h4 id=\"using-cocoapods\" style=\"position:relative;\"><a href=\"#using-cocoapods\" aria-label=\"using cocoapods permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Using Cocoapods</h4>\n<p>Open Terminal and go to your XCode project directory.<br>\nAfterwards, run this command:<br>\n<code>pod init</code></p>\n<p>Then a Podfile is generated, configure the file, like so:  </p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">platform :ios, &#39;8.0&#39;  </span>\n<span class=\"grvsc-line\">use_frameworks!  </span>\n<span class=\"grvsc-line\">target &#39;MyApp&#39; do  </span>\n<span class=\"grvsc-line\"> pod &#39;AFNetworking&#39;, &#39;~&gt; 2.6&#39;   pod &#39;ORStackView&#39;, &#39;~&gt; 3.0&#39;  </span>\n<span class=\"grvsc-line\"> pod &#39;SwiftyJSON&#39;, &#39;~&gt; 2.3&#39;</span>\n<span class=\"grvsc-line\">end</span></code></pre>\n<p>Where ‘MyApp’ is your application project and the ‘pod’ inside it are the libraries that you want to use! If you need to control which version of those libraries you can manipulate it on the right side of the config.</p>\n<h4 id=\"updating-cocoapods\" style=\"position:relative;\"><a href=\"#updating-cocoapods\" aria-label=\"updating cocoapods permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Updating Cocoapods</h4>\n<p>If you want to keep up to date with the codes shared in cocoapods you can run the command:<br>\n<code>pod update</code></p>\n<p>That way any latest bug fixes, enhancement and features on the new version will be downloaded!<br>\nTo see which Libraries that you want to utilize, head over to <a href=\"https://cocoapods.org/\">cocoapods</a> and search over there!</p>\n<h4 id=\"personal-favorites-pods\" style=\"position:relative;\"><a href=\"#personal-favorites-pods\" aria-label=\"personal favorites pods permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Personal favorites pods</h4>\n<p><a href=\"https://cocoapods.org/pods/Realm\">Realm</a> : For Managing Databases in iOS application</p>\n<p><a href=\"https://cocoapods.org/pods/Alamofire\">Alamofire</a> : For All of your Networking Needs</p>\n<p><a href=\"https://github.com/xmartlabs/Eureka\">Eureka</a> : For Simplified UI and Forms</p>\n<p>And of course our:<br>\n<a href=\"https://github.com/LoginRadius/ios-sdk\">LoginRadiusSDK</a> : For our API Calls to Manage your Login System</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n</style>","frontmatter":{"date":"September 06, 2017","updated_date":null,"description":null,"title":"Cocoapods : What It Is And How To Install?","tags":["Swift","Objective-C","xcode"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.4184397163120568,"src":"/static/44cf00aba943bff992ac72c888078a70/58556/cocoapods-orange-on-grey.webp","srcSet":"/static/44cf00aba943bff992ac72c888078a70/61e93/cocoapods-orange-on-grey.webp 200w,\n/static/44cf00aba943bff992ac72c888078a70/1f5c5/cocoapods-orange-on-grey.webp 400w,\n/static/44cf00aba943bff992ac72c888078a70/58556/cocoapods-orange-on-grey.webp 800w,\n/static/44cf00aba943bff992ac72c888078a70/99238/cocoapods-orange-on-grey.webp 1200w,\n/static/44cf00aba943bff992ac72c888078a70/7c22d/cocoapods-orange-on-grey.webp 1600w,\n/static/44cf00aba943bff992ac72c888078a70/5d27a/cocoapods-orange-on-grey.webp 2338w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Thompson Sanjoto","github":null,"avatar":null}}}},{"node":{"excerpt":"the guide to NPMWhat is This, and Why Should I Care? NPM is a package manager for javascript. It is used to share and distribute code…","fields":{"slug":"/engineering/node-package-manager-npm/"},"html":"<h5 id=\"the-guide-to-npmwhat-is-this-and-why-should-i-care\" style=\"position:relative;\"><a href=\"#the-guide-to-npmwhat-is-this-and-why-should-i-care\" aria-label=\"the guide to npmwhat is this and why should i care permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><img src=\"/4caf8328a2c92711c224c09a0b6c405f/the-guide-to-NPM.webp\" alt=\"the guide to NPM\">What is This, and Why Should I Care?</h5>\n<p>NPM is a package manager for javascript. It is used to share and distribute code amongst the coding community. There are over half a million packages for free developed and shared to help your JavaScript development.</p>\n<p>To discover packages click <a href=\"http://www.npmjs.com\">here</a></p>\n<h5 id=\"how-do-i-install-npm\" style=\"position:relative;\"><a href=\"#how-do-i-install-npm\" aria-label=\"how do i install npm permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>How Do I Install NPM?</h5>\n<p>NPM can easily be installed by going to the node.js website. Just click on the link to download an executable file which will install the package manager for you.</p>\n<p>(If you have brew on Mac or Chocolatey on Windows installed, it is even easier just run the command:</p>\n<p>[code]brew install npm[/code]</p>\n<p>Or</p>\n<p>[code]choco install nodejs[/code]</p>\n<h5 id=\"how-do-i-install-packages\" style=\"position:relative;\"><a href=\"#how-do-i-install-packages\" aria-label=\"how do i install packages permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>How Do I Install Packages?</h5>\n<p>Head over here to search for your package. Once you’ve found it, type in your console:</p>\n<p>[code]npm install -g[/code]</p>\n<p>Since NPM packages are open-source, be wary that some of the packages may not be built correctly. A good way to tell would be viewing the top of the page for any errors.</p>\n<p><img src=\"/0f0b906cfb24facfe56af23ea22ec3fd/image1.webp\"></p>\n<h5 id=\"how-do-i-keep-my-packages-up-to-date\" style=\"position:relative;\"><a href=\"#how-do-i-keep-my-packages-up-to-date\" aria-label=\"how do i keep my packages up to date permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>How Do I Keep My Packages Up-To-Date?</h5>\n<p>To update the npm packages, simply run:</p>\n<p>[code]npm update -g[/code]</p>\n<p>This will update all your outdated packages to the latest.</p>\n<h5 id=\"some-recommended-packages\" style=\"position:relative;\"><a href=\"#some-recommended-packages\" aria-label=\"some recommended packages permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Some Recommended Packages</h5>\n<ul>\n<li><a href=\"https://www.npmjs.com/package/http-server\">Http-server</a></li>\n</ul>\n<p>Detail: Emulates a web-server for client-side testing</p>\n<hr>\n<ul>\n<li><a href=\"https://www.npmjs.com/package/restify\">Restify</a></li>\n</ul>\n<p>Detail: Assists in setting up a REST APIs to test on your local server</p>\n<hr>\n<ul>\n<li><a href=\"https://www.npmjs.com/package/mocha\">Mocha</a></li>\n</ul>\n<p>Detail: Unit testing for web-development. Very useful in testing “code coverage” (It tells you where your code is not being tested in a nice HTML file)</p>\n<hr>\n<ul>\n<li><a href=\"https://www.npmjs.com/package/loginradius-sdk\">LoginRadius-SDK</a></li>\n</ul>\n<p>Detail: For existing customers, simplifies calls to our server for easy customizability</p>\n<hr>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"August 04, 2017","updated_date":null,"description":null,"title":"Node Package Manager (NPM)","tags":["NodeJs","NPM"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.5037593984962405,"src":"/static/4caf8328a2c92711c224c09a0b6c405f/58556/the-guide-to-NPM.webp","srcSet":"/static/4caf8328a2c92711c224c09a0b6c405f/61e93/the-guide-to-NPM.webp 200w,\n/static/4caf8328a2c92711c224c09a0b6c405f/1f5c5/the-guide-to-NPM.webp 400w,\n/static/4caf8328a2c92711c224c09a0b6c405f/58556/the-guide-to-NPM.webp 800w,\n/static/4caf8328a2c92711c224c09a0b6c405f/99238/the-guide-to-NPM.webp 1200w,\n/static/4caf8328a2c92711c224c09a0b6c405f/90fb1/the-guide-to-NPM.webp 1500w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Eric Chan","github":null,"avatar":null}}}},{"node":{"excerpt":"Preparing accurate test cases for payment gateway is a general task for a tester working in a service industry. In this post, I have…","fields":{"slug":"/growth/test-cases-for-your-e-commerce-payment-gateway-page/"},"html":"<p>Preparing accurate test cases for payment gateway is a general task for a tester working in a service industry. In this post, I have discussed some important scenarios that are inevitable while performing payment gateway testing. Also, I have discussed about the important points one should keep in mind while writing test cases for payment gateway.</p>\n<p><strong><em>Note</em></strong><em>:- Also, if you want to know how to write the best test cases for a perfect UI for your website, go through this</em> <a href=\"https://www.loginradius.com/blog/fuel/2017/07/test-cases-for-your-e-commerce-payment-gateway-page/\"><em>article</em></a><em>.</em></p>\n<h3 id=\"what-is-a-payment-gateway\" style=\"position:relative;\"><a href=\"#what-is-a-payment-gateway\" aria-label=\"what is a payment gateway permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>What Is A Payment Gateway?</strong></h3>\n<p>A payment gateway is a processing unit that approves online payments (debit cards, credit cards, e-wallets, netbanking) for online purchases. The gateways protect highly sensitive details like account holder details, card details, and so on. The data is transferred securely between the two groups: merchant site and customer.</p>\n<h3 id=\"different-kinds-of-payment-gateways\" style=\"position:relative;\"><a href=\"#different-kinds-of-payment-gateways\" aria-label=\"different kinds of payment gateways permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Different Kinds Of Payment Gateways</strong></h3>\n<p>There are two types of payment gateways. They are as follows:-</p>\n<ul>\n<li><strong>Shared Gateway:-</strong> In this type of gateway, the payment is processed while keeping customer on the merchant site page. As soon as the detail is filled by the customer, a transaction is processed. Shared gateway is the most preferable gateway as it provides the convenience of staying in the merchant site. Some of the examples are <em>Authorize.net CIM and Stripe.</em></li>\n<li><strong>Hosted Gateway:-</strong> Hosted Gateway is the payment process where the customer is directed to the payment gateway website. Afterwards, when the transaction is completed, he or she is redirected to the merchant site.Example:- <em>Setcom, Paypal Standard, Payza</em></li>\n</ul>\n<p>As you have known the basics about payment gateway, let me tell you what aspects you should keep in mind while creating test cases for check out page:-</p>\n<ul>\n<li><strong>Functionality:-</strong> You have to make sure that your payment gateway functions the way it is supposed to do. Check your page rigorously to find the flaws in the functionality.</li>\n<li><strong>Integration:-</strong> You have to check the integration of card and other banking services with the payment gateway. Though, integration is a part of functionality, it requires an exclusive check. The payment gateway should perform the task with high precision whether it bills or pays back.</li>\n<li><strong>Security:-</strong>   It is one of the most important aspects while testing a payment gateway. Other than buffer overruns, one needs to take care of other troubling security threats. Some of the resources you can take help from while testing security on payment gateway are <a href=\"https://www.owasp.org/index.php/Top_10_2013-Top_10\">OWASP Top 10</a>, <a href=\"https://blogs.msdn.microsoft.com/michael_howard/\">Web Blog by Michael Howard</a> and <a href=\"https://security.googleblog.com/\">Google Online Security Blog</a>.</li>\n<li><strong>Performance:-</strong> Performance is another KPI for your payment gateway. Hence, you should make sure about things like number of users your payment gateway page can handle, number of users who are simultaneously using your page. One of the resources you can refer is <a href=\"https://www.guru99.com/performance-testing.html\">guru99</a> articles.</li>\n</ul>\n<h3 id=\"checklists-while-preparing-test-cases-for-payment-gateway\" style=\"position:relative;\"><a href=\"#checklists-while-preparing-test-cases-for-payment-gateway\" aria-label=\"checklists while preparing test cases for payment gateway permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Checklists While Preparing Test Cases For Payment Gateway</strong></h3>\n<ul>\n<li>You should perform tests and collect data from dummy cards from different card issuers like Master card, Visa and Maestro and payment gateways like PayPal and Google Wallet.</li>\n<li>Research about all the error codes related to payment gateways and keep them handy for reference.</li>\n<li>Keep a good understanding about payment gateways workflow.</li>\n<li>Also understand payment gateway’s settings like currency format.</li>\n</ul>\n<h3 id=\"areas-where-payment-gateway-are-used\" style=\"position:relative;\"><a href=\"#areas-where-payment-gateway-are-used\" aria-label=\"areas where payment gateway are used permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Areas Where Payment Gateway Are Used</strong></h3>\n<ol>\n<li>Ecommerce</li>\n<li>Travelling websites</li>\n<li>Others sites like government sites accepting taxes, sites containing paid application forms etc.</li>\n</ol>\n<p>Here, let’s discuss the example of an E-commerce website’s payment gateway page.</p>\n<h3 id=\"test-cases-for-an-ecommerce-sites-payment-gateway\" style=\"position:relative;\"><a href=\"#test-cases-for-an-ecommerce-sites-payment-gateway\" aria-label=\"test cases for an ecommerce sites payment gateway permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Test cases for An Ecommerce Site’s Payment Gateway</strong></h3>\n<p><strong>Test Cases</strong></p>\n<p><strong>Process</strong></p>\n<p><strong>Steps To Execute</strong></p>\n<p><strong>Expected Results</strong></p>\n<p>TC-001</p>\n<p>Adding to Cart</p>\n<p>1. Select Items 2. Click on Add to cart</p>\n<p>1. Selected Items should be displayed on checkout page 2. Total amount should be calculated</p>\n<p>TC-002</p>\n<p>Adding to Cart</p>\n<p>1. Select Items 2. Select quantity 3. Click on Add to cart</p>\n<p>1. Selected items should be displayed with its quantity 2. Total amount should be calculated accordingly</p>\n<p>TC-003</p>\n<p>Adding Coupon code</p>\n<p>1. Select item 2. Apply coupon code 3. Click on Add to cart</p>\n<p>Applying a valid coupon code will deduct the amount accordingly</p>\n<p>TC-004</p>\n<p>Adding Invalid Coupon code</p>\n<p>1. Select item 2. Apply coupon code 3. Click on Add to cart</p>\n<p>Applying an invalid coupon code will give an error message- \"Invalid Coupon\" and will not deduct the amount</p>\n<p>TC-005</p>\n<p>Keeping the site idle for sometime after adding products to cart</p>\n<p>1. Select Items 2. Click on Add to Cart 3. leave the site for sometime</p>\n<p>After coming back, items should be still visible in the cart</p>\n<p>TC-006</p>\n<p>Check that Checkout Address Page consist of all the details of product such as Name, Quantity, Amount, etc.</p>\n<p>1. Select Items 2. Click on Add to Cart</p>\n<p>All the information should show on cart page</p>\n<p>TC-007</p>\n<p>Check the Name, Street Address, City, State, Country, Postal code are mandatory field in the Checkout Address page.</p>\n<p>1. Select Items 2. Click on Add to cart 3. Check the Address field</p>\n<p>All the fields should required</p>\n<p>TC-008</p>\n<p>Remove items from the cart</p>\n<p>1. Select 2-3 Items 2. Click on Add to Cart 3. On cart page remove one item</p>\n<p>After removing one item payment should update</p>\n<p>TC-009</p>\n<p>Check Cancel Button</p>\n<p>1. Select 2-3 Items 2. Click on Add to Cart 3. Click on cancel button</p>\n<p>1. It should not redirect to payment 2. Item should not remove from cart</p>\n<p>TC-010</p>\n<p>Check the Name on Card, Card Number,Expiration date, CVV are mandatory fields in the</p>\n<p>1. Select the card type 2. Do not fill any information 3. Click on Submit button</p>\n<p>It should show the validation message for all the required fields</p>\n<p>TC-011</p>\n<p>Check the error message when enter invalid input for mandatory fields</p>\n<p>1. Select the card type 2. Enter invalid card number [Check for CVV, Expiration date] 3. Click on submit button</p>\n<p>It should show error message for invalid details</p>\n<p>TC-012</p>\n<p>Check the redirection after successful payment</p>\n<p>1. Select the card type 2. Enter valid details 3. Click on submit button</p>\n<p>1. Payment should done successfully. 2. It should redirect to site home page with proper details. 3. It should show order no on thank you page.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"July 21, 2017","updated_date":null,"description":"Trying to make test cases to build a flawless payment gateway page for your ecommerce website? Here are some factors you need to take seriously before creating test cases for payment gateway page.","title":"Test Cases For Your E-commerce Payment Gateway Page","tags":["payment gateway","technology","ecommerce"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.7699115044247788,"src":"/static/6ac116c00356e121023bdc61acd4f965/5239a/Test-Cases-for-your-Ecommerce-Payment-Gateway-Page.webp","srcSet":"/static/6ac116c00356e121023bdc61acd4f965/61e93/Test-Cases-for-your-Ecommerce-Payment-Gateway-Page.webp 200w,\n/static/6ac116c00356e121023bdc61acd4f965/1f5c5/Test-Cases-for-your-Ecommerce-Payment-Gateway-Page.webp 400w,\n/static/6ac116c00356e121023bdc61acd4f965/5239a/Test-Cases-for-your-Ecommerce-Payment-Gateway-Page.webp 560w","sizes":"(max-width: 560px) 100vw, 560px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},{"node":{"excerpt":"These days SSL is a must-have element for websites, but SSL certificates are costly and range from $30 to $500 per year for a single website…","fields":{"slug":"/engineering/get-your-free-ssl-certificate/"},"html":"<p>These days SSL is a must-have element for websites, but SSL certificates are costly and range from $30 to $500 per year for a single website. Don’t fret! You can get a FREE SSL certificate! Through “<a href=\"https://letsencrypt.org/\">Let's Encrypt</a>\", a free, automated, and open certificate authority, you will be able to acquire the necessary certificate to enable SSL on your website. Check out the below steps you can follow to get an SSL certificate for your site today.</p>\n<p>To obtain this certificate, you will first need to prove ownership of the domain. There are two requirements that you need to meet in order to generate a certificate from “Let's Encrypt”:</p>\n<p><strong>Http-01</strong>:<br>\nYou will need to setup a directory on your web server's root, and the name of this directory should be “.well-know” and with a “acme-validation” directory included within this. Inside these directories, create a file containing the random string that was provided by the ACME server and this file should serve content which is the random string included in the doc.</p>\n<p><strong>Sample Structure</strong></p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">/.well-known/acme-validation/&amp;amp;lt;random file name provided by ACME&amp;amp;gt;</span></code></pre>\n<p><strong>Dns-01:</strong></p>\n<p>You will need to create a .TXT record on the subdomain _acme-challenge. For instance, if you would like to obtain an SSL for the domain “example.com”, then you will need to setup a subdomain on this domain - _acme-challenge.example.com - and the content of the .TXT record will be a random string provided by the ACME server.</p>\n<p>Now that you have everything setup, how do you get your FREE SSL? Below, we will go over the various ways to enable SSL for free on your website:</p>\n<p><strong>1. Certbot</strong> : <a href=\"https://certbot.eff.org/\">certbot</a> is a Linux utility that is simple yet powerful. This tool doesn't share private keys with any servers, and it keeps your private key on the client that is being used to generate the cert.  You can install certbot with the following command on ubuntu:</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"1\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">$ sudo add-apt-repository ppa:certbot/certbot</span>\n<span class=\"grvsc-line\">$ sudo apt-get update</span>\n<span class=\"grvsc-line\">$ sudo apt-get install certbot</span></code></pre>\n<p>The <a href=\"https://certbot.eff.org/\">certbot site</a> has even more details and information for installing this on other systems.</p>\n<p>Once installed, open the DNS Manager (must do!) and call the following command to get the SSL certificate for your domain.</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"2\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">sudo certbot --text --agree-tos --email &amp;amp;lt;YOUR EMAIL ID&amp;amp;gt; -d &amp;amp;lt;YOUR DOMAIN&amp;amp;gt; --manual --preferred-challenges dns --expand --renew-by-default  --manual public-ip-logging-ok certonly</span></code></pre>\n<p>This command will request that you add the .TXT record on the subdomain _acme-challenge. Once this is added, simply press any key to generate the SSL certificate. It will show the locations of the certified file.</p>\n<p><strong>2. Online using</strong> <a href=\"https://www.sslforfree.com/\"><strong>https://www.sslforfree.com/</strong></a> : This is also a non-profit site and you can get SSL without any installation; just follow the steps to set up the ACME compliant site structure. They provide an easy step-by-step guide for generating the SSL certificate. Once you work through the guide, you will be able to download a copy of your certificate and include on your webserver.</p>\n<p><strong>3. Other ways</strong> : There are lots of other ways to get the “Let's Encrypt” SSL. <a href=\"https://letsencrypt.org/docs/client-options/\">This page</a> contains a list of ACME clients and libraries, so you can choose to work with whichever one that best suits your needs.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n</style>","frontmatter":{"date":"July 13, 2017","updated_date":null,"description":null,"title":"Get your FREE SSL Certificate!","tags":["Engineering","SSL"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1,"src":"/static/9dac90102c33db64e0dc88c91e3138a2/a3e81/letsencrypt.webp","srcSet":"/static/9dac90102c33db64e0dc88c91e3138a2/61e93/letsencrypt.webp 200w,\n/static/9dac90102c33db64e0dc88c91e3138a2/1f5c5/letsencrypt.webp 400w,\n/static/9dac90102c33db64e0dc88c91e3138a2/a3e81/letsencrypt.webp 512w","sizes":"(max-width: 512px) 100vw, 512px"}}},"author":{"id":"Kundan Singh","github":null,"avatar":null}}}},{"node":{"excerpt":"jCenter is the public repository hosted at bintray that is free to use for open source library publishers. It is the largest repository in…","fields":{"slug":"/engineering/how-to-use-jcenter-dependencies-in-android-studio/"},"html":"<p>jCenter is the public repository hosted at <a href=\"https://bintray.com/\">bintray</a> that is free to use for open source library publishers. It is the largest repository in the world for Java and Android OSS libraries, packages and components. All the content in JCenter is served over a CDN, with a secure HTTPS connection. In this article, we’ll discuss how to make use of jCenter dependencies in Android Studio.</p>\n<p>Prerequisites</p>\n<ul>\n<li>Android Studio</li>\n<li>Existing project in Android Studio</li>\n<li>Active internet connection</li>\n</ul>\n<p>If you don’t have Android Studio installed, you can download from the following link:</p>\n<p><a href=\"https://developer.android.com/studio/index.html\">Android Studio</a></p>\n<p>After successfully installing Android Studio, you can open an existing project or create a new project to start with.</p>\n<p><strong>Usage</strong></p>\n<p>After opening or creating a new project, you can find two files named “build.gradle” under Gradle Scripts section in the left pane. The first one will be suffixed with “Project” and another with “Module”. We’ll start with the “Project” one.</p>\n<p>Add jCenter repository in project’s build.gradle file as shown below and sync your project:</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">allprojects {</span>\n<span class=\"grvsc-line\">   repositories {</span>\n<span class=\"grvsc-line\">       jcenter()</span>\n<span class=\"grvsc-line\">\t   . . .</span>\n<span class=\"grvsc-line\">   }</span>\n<span class=\"grvsc-line\">}</span></code></pre>\n<p>On successful sync, you’re now able to add any Android dependency hosted on jCenter repository. The dependency will be added to “Module” build.gradle. It’s also known as app’s build.gradle.</p>\n<p>For example, if you want to add LoginRadius dependency/library, you can add in app’s build.gradle as follows and sync your project:</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"1\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">compile &#39;com.loginradius.android:androidsdk:3.3.1&#39;</span></code></pre>\n<p>If all the steps are followed successfully, you’re now able to add a jCenter dependency in Android Studio.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n</style>","frontmatter":{"date":"July 11, 2017","updated_date":null,"description":"Learn how to make use of jCenter dependencies in Android Studio.","title":"jCenter Dependencies in Android Studio","tags":["JCenter","Android"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.7699115044247788,"src":"/static/a9a8e082bff7f37ce001b37deba19d8c/58556/jCenter.webp","srcSet":"/static/a9a8e082bff7f37ce001b37deba19d8c/61e93/jCenter.webp 200w,\n/static/a9a8e082bff7f37ce001b37deba19d8c/1f5c5/jCenter.webp 400w,\n/static/a9a8e082bff7f37ce001b37deba19d8c/58556/jCenter.webp 800w,\n/static/a9a8e082bff7f37ce001b37deba19d8c/99238/jCenter.webp 1200w,\n/static/a9a8e082bff7f37ce001b37deba19d8c/135cd/jCenter.webp 1280w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Hitesh Pamnani","github":null,"avatar":null}}}},{"node":{"excerpt":"Maven is a project build management software, it means it Let's you define your project dependencies, features, and behaviors. To do this…","fields":{"slug":"/engineering/how-to-use-maven-dependency-in-eclipse/"},"html":"<p>Maven is a project build management software, it means it Let's you define your project dependencies, features, and behaviors. To do this, Maven downloads plugins and dependencies for various online repositories. People who want to share their libraries, develop using Maven and upload the binaries in a repository. In this article, we’ll discuss how to configure and use Maven dependency.</p>\n<p>Prerequisites:</p>\n<ul>\n<li>Eclipse IDE</li>\n<li>Active internet connection</li>\n</ul>\n<p><strong>Install the Maven support for Eclipse (m2e)</strong></p>\n<p>Most Eclipse downloads include the Maven tooling already. If it is missing in your installation, you can install it via the main update of your release via Help > Install New Software. The following listing contains the update site for the Neon release and an update site maintained by the m2e project.</p>\n<ul>\n<li>Neon update site:<br>\n<a href=\"http://download.eclipse.org/releases/neon\">Neon Update</a></li>\n<li>Update site provided by m2e project:<br>\n<a href=\"http://download.eclipse.org/technology/m2e/releases\">Eclipse Downloads</a></li>\n</ul>\n<p>For the usage of Maven for Java projects, you only need the m2e component. For Java web development you also want the m2e-wtp entry.</p>\n<p><strong>Download the Maven index</strong></p>\n<p>By default, the Maven tooling does not download the Maven index for the Eclipse IDE. Via the Maven index, you can search for dependencies, select them and add them to your pom file. To download the index, select Windows > Preferences > Maven and enable the <em>Download repository index updates on startup</em> option.</p>\n<p>After changing this setting, restart Eclipse. This triggers the download of the Maven index. You may want to remove this flag after restarting to avoid network traffic at every start of Eclipse.</p>\n<p><strong>Create Maven project</strong></p>\n<p>Create a new Maven project via File > New > Other… > Maven > Maven Project.</p>\n<p>On the first wizard page, you can select if you want to create a simple project.</p>\n<p>After creating the Maven project, a pom.xml is generated. You can find the file in Project Explorer. A Project Object Model or POM is the fundamental unit of work in Maven. It is an XML file that contains information about the project and configuration details used by Maven to build the project. It contains default values for most projects.</p>\n<p>Now, you can add a dependency in pom.xml. For example, if you want to add LoginRadius for Java library/dependency, you can add as follows:</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">&lt;dependencies&gt;</span>\n<span class=\"grvsc-line\">    &lt;dependency&gt;</span>\n<span class=\"grvsc-line\">        &lt;groupId&gt;com.loginradius.sdk&lt;/groupId&gt;</span>\n<span class=\"grvsc-line\">        &lt;artifactId&gt;java-sdk&lt;/artifactId&gt;</span>\n<span class=\"grvsc-line\">        &lt;version&gt;11.0.0&lt;/version&gt;</span>\n<span class=\"grvsc-line\">    &lt;/dependency&gt;</span>\n<span class=\"grvsc-line\">    ......</span>\n<span class=\"grvsc-line\">&lt;/dependencies&gt;</span></code></pre>\n<p>You should now be able to quickly import any libraries that you want o use in your project via Maven.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n</style>","frontmatter":{"date":"July 11, 2017","updated_date":null,"description":"Learn step by step setting up and resolution of maven dependency using eclipse IDE.","title":"Maven Dependency in Eclipse","tags":["Java","Maven","Eclipse"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.7699115044247788,"src":"/static/6df6019580145a8674f864bc824a80fc/58556/maven.webp","srcSet":"/static/6df6019580145a8674f864bc824a80fc/61e93/maven.webp 200w,\n/static/6df6019580145a8674f864bc824a80fc/1f5c5/maven.webp 400w,\n/static/6df6019580145a8674f864bc824a80fc/58556/maven.webp 800w,\n/static/6df6019580145a8674f864bc824a80fc/99238/maven.webp 1200w,\n/static/6df6019580145a8674f864bc824a80fc/135cd/maven.webp 1280w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Giriraj Yadav","github":null,"avatar":null}}}}]},"markdownRemark":{"excerpt":"Identity is evolving, and developers are at the forefront of this transformation. Every day brings a new learning—adapting to new standards…","fields":{"slug":"/identity/developer-first-identity-provider-loginradius/"},"html":"<p>Identity is evolving, and developers are at the forefront of this transformation. Every day brings a new learning—adapting to new standards and refining approaches to building secure, seamless experiences.</p>\n<p>We’re here to support developers on that journey. We know how important simplicity, efficiency, and well-structured documentation are when working with identity and access management solutions. That’s why we’ve redesigned the <a href=\"https://www.loginradius.com/\">LoginRadius website</a>—to be faster, more intuitive, and developer-first in every way.</p>\n<p>The goal? Having them spend less time searching and more time building.</p>\n<h2 id=\"whats-new-and-improved-on-the-loginradius-website\" style=\"position:relative;\"><a href=\"#whats-new-and-improved-on-the-loginradius-website\" aria-label=\"whats new and improved on the loginradius website permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What’s New and Improved on the LoginRadius Website?</h2>\n<p>LoginRadius’ vision is to give developers a product that simplifies identity management so they can focus on building, deploying, and scaling their applications. To enhance this experience, we’ve spent the last few months redesigning our interface— making navigation more intuitive and reassuring that essential resources are easily accessible.</p>\n<p>Here’s a closer look at what’s new and why it’s important:</p>\n<h3 id=\"a-developer-friendly-dark-theme\" style=\"position:relative;\"><a href=\"#a-developer-friendly-dark-theme\" aria-label=\"a developer friendly dark theme permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>A Developer-Friendly Dark Theme</h3>\n<p><img src=\"/f46881583c7518a93bb24e94c32320de/a-developer-friendly-dark-theme.webp\" alt=\"This image shows how LoginRadius offers several authentication methods like traditional login, social login, passwordless login, passkeys and more in a dark mode.\">    </p>\n<p>Developers spend long hours working in dark-themed IDEs and terminals, so we’ve designed the LoginRadius experience to be developer-friendly and align with that preference.</p>\n<p>The new dark mode reduces eye strain, enhances readability, and provides a seamless transition between a coding environment and our platform. Our new design features a clean, modern aesthetic with a consistent color scheme and Barlow typography, ensuring better readability. High-quality graphics and icons are thoughtfully placed to enhance the content without adding visual clutter.</p>\n<p>So, whether you’re navigating our API docs or configuring authentication into your system, our improved interface will make those extended development hours more comfortable and efficient.</p>\n<h3 id=\"clear-categorization-for-loginradius-capabilities\" style=\"position:relative;\"><a href=\"#clear-categorization-for-loginradius-capabilities\" aria-label=\"clear categorization for loginradius capabilities permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Clear Categorization for LoginRadius Capabilities</h3>\n<p><img src=\"/e5358b82be414940f3fb146013845933/capabilities.webp\" alt=\"This image shows a breakdown of all the LoginRadius CIAM capabilities, including authentication, security, UX, scalability and multi-brand management.\"></p>\n<p>We’ve restructured our website to provide a straightforward breakdown of our customer identity and access management platform capabilities, helping you quickly find what you need:</p>\n<ul>\n<li>Authentication: Easily understand <a href=\"https://www.loginradius.com/blog/identity/authentication-option-for-your-product/\">how to choose the right login method</a>, from traditional passwords and OTPs to social login, federated SSO, and passkeys with few lines of code.</li>\n<li>Security: Implement no-code security features like bot detection, IP throttling, breached password alerts, DDoS protection, and adaptive MFA to safeguard user accounts.</li>\n<li>User Experience: Leverage AI builder, hosted pages, and drag-and-drop workflows to create smooth, branded sign-up and login experiences.</li>\n<li>High Performance &#x26; Scalability: Confidently scale with sub-100ms API response times, 100% uptime, 240K+ RPS, and 28+ global data center regions.</li>\n<li>Multi-Brand Management: Efficiently manage multiple identity apps, choosing isolated or shared data stores based on your brand’s unique needs.</li>\n</ul>\n<p>This structured layout ensures you can quickly understand each capability and how it integrates into your identity ecosystem.</p>\n<h3 id=\"developer-first-navigation\" style=\"position:relative;\"><a href=\"#developer-first-navigation\" aria-label=\"developer first navigation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Developer-First Navigation</h3>\n<p><img src=\"/a8c155c2b6faf3d5f4b4de4e2b14d763/developers-menu.webp\" alt=\"This image shows the LoginRadius menu bar, highlighting the developer dropdown.\">   </p>\n<p>We’ve been analyzing developer workflows to identify how you access key resources. That’s why we redesigned our navigation with one goal in mind: to reduce clicks and make essential resources readily available.</p>\n<p>The new LoginRadius structure puts APIs, SDKs, and integration guides right at the menu bar under the Developers dropdown so you can get started faster. Our Products, Solutions, and Customer Services are also clearly categorized, helping development teams quickly find the right tools and make informed decisions.</p>\n<h3 id=\"quick-understanding-of-integration-benefits\" style=\"position:relative;\"><a href=\"#quick-understanding-of-integration-benefits\" aria-label=\"quick understanding of integration benefits permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Quick Understanding of Integration Benefits</h3>\n<p><img src=\"/b2f9a964a2da0ea83e2f8596b833bba7/we-support-your-tech-stack.webp\" alt=\"This image shows a list of popular programming languages and frameworks offered by LoginRadius.\"></p>\n<p>Developers now have a clear view of the tech stack available with LoginRadius, designed to support diverse business needs.</p>\n<p>Our platform offers pre-built SDKs for Node.js, Python, Java, and more, making CIAM integration seamless across popular programming languages and frameworks.</p>\n<h2 id=\"over-to-you-now\" style=\"position:relative;\"><a href=\"#over-to-you-now\" aria-label=\"over to you now permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Over to You Now!</h2>\n<p>Check out our <a href=\"https://www.loginradius.com/\">revamped LoginRadius website</a> and see how the improved experience makes it easier to build, scale, and secure your applications.</p>\n<p>Do not forget to explore the improved navigation and API documentation, and get started with our free trial today. We’re excited to see what you’ll build with LoginRadius!</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"February 21, 2025","updated_date":null,"description":"LoginRadius’ vision is to give developers a product that simplifies identity management so they can focus on building, deploying, and scaling their applications. To enhance this experience, we’ve redesigned our website interface, making navigation more intuitive and reassuring that essential resources are easily accessible.","title":"Revamped & Ready: Introducing the New Developer-First LoginRadius Website","tags":["Developer tools","API","Identity Management","User Authentication"],"pinned":true,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.7857142857142858,"src":"/static/80b4e4fbe176a10a327d273504607f32/58556/hero-section.webp","srcSet":"/static/80b4e4fbe176a10a327d273504607f32/61e93/hero-section.webp 200w,\n/static/80b4e4fbe176a10a327d273504607f32/1f5c5/hero-section.webp 400w,\n/static/80b4e4fbe176a10a327d273504607f32/58556/hero-section.webp 800w,\n/static/80b4e4fbe176a10a327d273504607f32/99238/hero-section.webp 1200w,\n/static/80b4e4fbe176a10a327d273504607f32/7c22d/hero-section.webp 1600w,\n/static/80b4e4fbe176a10a327d273504607f32/1258b/hero-section.webp 2732w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},"pageContext":{"limit":6,"skip":894,"currentPage":150,"type":"///","numPages":164,"pinned":"ee8a4479-3471-53b1-bf62-d0d8dc3faaeb"}},"staticQueryHashes":["1171199041","1384082988","2100481360","23180105","528864852"]}