Jan 10th, 2020
What are an API and SPA and Why You Should Care
There are numerous terms and abbreviations thrown around in many industries, and the internet is riddled with these abbreviations, they’re built directly in the code languages themselves. If you have a website or run an e-commerce platform you may or may not have heard of an SPA and an API. These terms, like many others in the industry, are tossed around and added into key discussions too often and simply for the sake of sounding more advanced than they really are. If your company has custom made software or is looking to integrate some new software into your business flow, you should be aware of what these terms mean and how they can impact your business.
Do I have an API?
API stands for Application Programming Interface, which is fundamentally the accessible portion of your application. There are many platforms out there which offer API access in order to integrate with their systems, so its very likely you already utilize or host some APIs in your business. These public facing components have various policies which dictate the best methods for authentication, and throttling usage. A term that often coincides with API is REST, meaning Representational State Transfer, in a nutshell, it’s a generalized format for building an API, which has become relatively ubiquitous to the process. The most popular use case for building an API is a desire to integrate your system with another. A key benefit to building a quality API is that they often require less maintenance than a full-stack application. They also provide a great backbone for building SPAs or mobile applications which integrate with your systems.
What’s a SPA?
SPA on the other hand stands for Single Page Application, which has become much more popular in the past few years. We all have experiences with SPA based web applications. These are applications which load data dynamically rather than by visiting new URLs in the browser. Though the URLs often change even when using SPA frameworks the actual content is loaded dynamically from an API. SPA frameworks became popular as a means of splitting work loads and focus for developers. Allowing backend engineers to focus on APIs and server components and allowing front-end developers to create entire applications which integrate with these APIs. They are a great toolset if you expect to have an API integrated throughout your business or the potential of having multiple Themes for your web applications. The challenge with building SPA based applications is that they often require focus and will increase a project’s budget. However, if your business needs long term solutions and wants to be able to expand into multiple platforms then a SPA based application can be a great step in that direction.
Building applications with full stack frameworks is incredibly common, and is in most cases the status quo. Though there are many use cases for building both APIs and SPAs there is nothing saying you cannot build a full stack application and then add on an API and an SPA app which integrate with it. The key argument in building platforms with APIs and SPAs is avoiding the idea of monolithic applications which are complex full stack applications which have many overlapping responsibilities. As mentioned there are use cases for these components but understanding what they are and what your business wants to do over time is crucial to deciding if they are the right tools for you. If you’re in the market to build onto your technological stack or are looking for new ways to improve your business’s workflow, we’re just an email away.