Every organization and developer wants their websites to load rapidly and look polished on any device. Even a slight delay in loading can cause users to exit a page quickly, lowering website conversions. Website speed also plays into search engine ranking. And as the threat landscape becomes more complex, with bad bots to fend off and user data to protect from attackers, organizations are looking for ways to improve site security.
Traditionally, building a website that is inclusive of speed, security, availability, and scalability is an undertaking and comes with negative implications for the developer. With disparity amongst the need for and the availability of developer resources, finding ways to improve website development can ease the strain for the organization and the bottom line.
One way to do this is through the elimination of the time-consuming tasks we find in the development process, including:
Ensuring a website can manage traffic spikes without downtime — while minimizing spend on infrastructure or cloud services
Unexpected surprises when updating pages and having to react quickly when a page breaks or fails to render properly
Stitching together the backend and frontend parts of a website
Complex workflows, including amassing feedback from stakeholders
Organizations can mitigate all of these problems with a new architectural approach to building websites called Jamstack.
Jamstack starts with the idea of a static site — pre-building as much of a site as practical — and incorporates dynamic elements to achieve fast websites with fewer attack vectors. The term, which was coined in 2015 as “JAMstack,” derives from:
A = APIs, which enable dynamic content on an otherwise static page
M = Markup, which is the HTML and CSS code that provides formatting instructions to the browser
By combining these three elements, Jamstack allows developers to quickly create and maintain websites that can be served efficiently to users. Launching a static site that will render well for mobile, web, and video and relying on APIsfor dynamic features accelerates the process. High page speed is achievable by pre-building as much of a site as possible, and then using a content delivery network (CDN) to deliver the page to users around the world. When a user visits a website, they see a pre-rendered page delivered by the CDN — with no dedicated server needed.
Notably, the page’s static nature does not require the content to be static. Third-party APIs, like those that allow logging in to a site with credentials from Google or Facebook, enable dynamic content such as search, payment processing, and real-time data. This modular approach allows for flexibility and avoids vendor lock-in — swapping out different APIs as technology changes and new tools become available is easy. The ability to integrate with serverless functions also lends to Jamstack sites becoming more dynamic.
Without the need for web application servers and database servers, Jamstack pages scale well as visitors increase, improving both the experience of the visitor and the organization’s bottom line.
In essence, a Jamstack site has no backend that needs to be managed by a developer. The static nature of the page means there is no link between the website and a database, which reduces security vulnerabilities. Since all site elements are delivered from the CDN or an API, potential attackers aren’t able to access web application servers or database servers.
When an organization creates a website with this approach, there are no servers to maintain and no staging environments to create, so there is less of a need for complex DevOps resources. Jamstack’s simplicity means there are fewer moving parts than in a traditional site and thus less room for error. Because of this decoupling between the frontend and backend, Jamstack sites are faster to launch and more reliable.
Another advantage of the static setup is that reverting to an earlier version of a page is simple. This is possible through the concept of atomic deploys, where the entire site is updated at once, creating a new version. With Jamstack, developers have more freedom to experiment and avoid the tiring trial and error of traditional sites — if something does not render as intended, switching the entire site back to a previous version is painless.
Jamstack’s tools, processes, and best practices are evolving rapidly, and an important part of diving in is remaining open to experimentation and tracking emerging developments. Getting started is simple since Jamstack integrates with existing workflows and many organizations have established relationships with vendors already in place for key technologies, speeding up the decision-making process. These technologies include:
CDN: To deliver pages from locations close to users — a requirement for achieving fast performance.
Static site generator (SSG): To generate the site using raw data and templates — automating the process of coding pages and ensuring they are pre-built and ready for users.
Content management system (CMS): To act as a content repository. A CMS for a Jamstack website is described as “headless,” which means that content is stored outside of the codebase and delivered via APIs for seamless display across different devices.
We are still in the early years of Jamstack’s maturation, and not all deployments are equally effective. For example, many Jamstack platforms are hosted out of centralized data centers, which slows performance relative to delivering sites from the edge. Some also charge more to add developer seats, which discourages collaboration among large teams and can result in unpredictable pricing.
Cloudflare is solving these problems and is also seeking ways to introduce more security to the collaboration process, such as through using protected shared preview links. Cloudflare Pages is a Jamstack deployment platform that makes the process of building and hosting a site as simple as writing code and performing a git push. From there, Pages handles the deployment on the Cloudflare global edge network, where sites run within milliseconds of users worldwide. It is built with frontend developers in mind, including by minimizing configurations and improving collaboration to speed up iteration.
The primary benefits of Cloudflare Pages include:
Unlimited free collaborators, with secure access to previews
Webhooks for automatic deployments
Built-in free web analytics
The ability to create custom APIs through the integration of Cloudflare Workers, a global serverless platform that provides automatic scaling
A global CDN with data centers in 250+ cities
이 글은 오늘날의 기술 의사 결정자에 영향을 주는 최신 동향 및 주제에 대한 시리즈 중 일부입니다.
이 글을 읽고 나면 다음을 이해할 수 있습니다.
Understand how Jamstack can improve the developer experience
Explain how this architectural approach simplifies site responsiveness across mobile, web, and video
Describe why Jamstack sites are quick to launch
Understand how organizations’ approaches to Jamstack are changing
See how Cloudflare compares to eight other cloud edge development platforms by downloading the Forrester New Wave™: Edge Development Platforms, Q4 2021 report.Get the report