Some parts of this page may be machine-translated.

What is Jamstack? [Second Half]

What is Jamstack? [Second Half]

This article is a translation of a blog post from Bejamas, a development company based in Poland.
Original: https://bejamas.io/blog/jamstack/

 

What is Jamstack? [Second Half]

Jamstack is not a specific technology. It is a modern web development architecture that utilizes CDNs and decoupling services.

 

Author: Denis Kostrzewa

 

Table of Contents

1. Limitations of Jamstack

Jamstack is revolutionary in many ways. It allows you to create much better websites compared to competing companies. However, like other technologies, it also has some limitations.

 

1-1 Jamstack is not for beginners

To use Jamstack, general web development skills or specific knowledge (such as interest in React or Vue) are required. However, there are now many tools available that make it easy for anyone to create end products, websites, and apps.

 

1-2 Use of User-Specific Data and/or Real-Time Data

There is also data that cannot be generated in advance, such as user-specific data and real-time data (such as name, avatar, and data of logged-in users). Whether to use Jamstack in projects that require this data depends largely on the use case. In such cases, web development companies like Bejamas have a lot of knowledge.

 

For example, it is possible to build a Twitter clone or a data analysis dashboard, but the true benefits of Jamstack cannot be utilized. However, for projects that simply use data of that kind, such as e-commerce, it is not very difficult to retrieve information requested from an API. Furthermore, there are other benefits to Jamstack.

 

1-3 Complexity of APIs

The complexity of APIs is often cited as a disadvantage. However, this also applies to the WordPress plugin ecosystem. One difference is that while WP plugins can potentially break a live website, APIs will not cause any damage as long as they are only used during development to retrieve data.

 

1-4 Long Building Process

One of the major constraints is the construction time of a large number of pages on a website. As mentioned earlier, even if a small change is made to one page, the entire website needs to be rebuilt. This can be a major disadvantage when running a website with thousands of pages, but this issue has already been resolved.

 

With incremental (differential) builds, only the related pages, meaning the pages that have been changed, can be rebuilt. For example, Gatsby and NextJS can already be built in this way.

 

1-5 Handling Dynamic Parts (Serverless Functionality)

Developing with Jamstack does not mean eliminating the backend. The key aspect of Jamstack is its serverless functionality. Recently, it has become more user-friendly and allows for serverless functions to be executed at the edge, providing static files through a CDN.

 

In other words, the backend of the website or app can be expanded almost infinitely without maintenance, allowing users to retrieve backend data from the nearest geographical data center.

2. When should I use Jamstack?

While we would like to say that Jamstack is suitable for everyone, it is not. We recommend identifying the pros and cons for your business goals, referring to Jamstack case studies, and consulting with your financial team. This is a good way to start thinking about the best approach for web development. Alternatively, we also recommend speaking with experts.

 

There are still some points that should be pointed out.

 

If you are not concerned about performance or cache management, or if you are satisfied with no-code solutions like Webflow, then it is best not to develop with Jamstack.

 

If your team is familiar with WordPress and you want to minimize the risk of wasting time and money despite educating your team on new technologies, it is best to avoid using Jamstack.

 

If your project relies heavily on many users or real-time data, it is better not to use Jamstack.

 

Finally, it may not make much sense to migrate past projects to Jamstack. However, it may be worth considering Jamstack when starting something new.

 

On the other hand, if you want to improve the performance of your website, make it faster for users, and make it safer while keeping developers happy, we recommend Jamstack!

3. Getting Started with Jamstack

 

I think it was difficult to digest all at once if you were not already a Jamstacker, but we will introduce the latest tools that will help you build Jamstack websites in order.

 

Jamstack is a development centered around the front-end. For those who are new to web development and are thinking of starting with Jamstack, it is important to first acquire skills in JavaScript and APIs.

 

To create a Jamstack website, use your preferred JavaScript framework (React, Vue, Angular) or static site generator, and use a headless CMS for content management, and a platform for hosting and deployment.

 

3-1 Static Site Generator

A static site generator is a tool that builds static HTML pages from input files. It retrieves content from a CMS or other location, applies selected templates, generates the structure of static HTML files, and displays the resulting web-ready pages. Currently, there are a vast number of SSGs available that are suitable for almost any programming language. For more details on available options, please refer to the guide for static site generators.

 

3-2 Headless CMS

Older CMS systems like WordPress and Drupal are hosted and served every time a page is requested. In contrast, headless CMS separates content management from the front-end and back-end. This allows for content to be delivered beyond just websites and apps, and enables content to be reused across various front-ends.

 

Most headless CMSs are compatible with the frontend technologies being used. We can demonstrate their importance and usefulness through one of our case studies. We will share our experiences with Contentful, Storyblok, Sanity, Forest, and more.

 

3-3 API

As mentioned before, the dynamic parts of the website are processed through APIs, and it is also possible to develop your own solutions.

 

Today's API ecosystem covers almost everything, from payment processing to form data processing, user authentication, real-time data storage and retrieval, and processing of EC tasks.

 

3-4 Deploy Platform

Once you have built your Jamstack website or app using the above tools, the next step is to find a home for it. Currently, hosting solutions and CDNs provide everything necessary to ship modern websites.

 

Let's also take a look at our favorite solutions like Vercel and Netlify. Or there are also traditional ones like Firebase and AWS (all featured in our Jamstack hosting articles).

 

The greatest appeal of Jamstack is the ability to combine hosting, building, content management, and feature addition tools as desired to create the optimal stack for current projects.

4. What's Next for Jamstack?

Jamstack is not the perfect solution for all use cases. However, the ecosystem is rapidly evolving and many of the tools and resources already available are pushing the limits of what can be done with static websites.

 

A crucial transition from backend to more powerful and effective frontend development is already happening.

 

We are walking the path to create a better internet.

5. Links and Resources

To gain a deeper understanding of the rapidly growing world of Jamstack, please also check out the following links and resources. (English)

 

Global Jamstack Community Home - https://jamstack.org/

 

The Origin Story of JAMstack - https://www.heavybit.com/library/podcasts/jamstack-radio/ep-2-the-jamstack-origin-story/

 

Jamstack Book - https://www.manning.com/books/the-jamstack-book

 

Where is Jamstacker? - https://dev.to/cookieduster_n/jamstack-resources-where-do-jamstackers-hang-out-3bfa

 

Easy Jamstack Tutorial - https://www.youtube.com/watch?v=Y8PXMbr0Kqo

 

Adding Dynamic and Asynchronous Functionality to JAMstack Sites – https://www.smashingmagazine.com/2019/12/dynamic-async-functionality-jamsstack-websites/

 

Conversation about JAMStack - https://anchor.fm/contentful-creators/episodes/E18-A-Conversation-about-JAMStack-Brian-Rinaldi-ehv741-A-Conversation-about-JAMStack-Brian-Rinaldi-ehv741

 

Vercel founder and CEO Guillermo Rauch discusses the post-JAMstack era with hybrid frameworks like Next.js and Nuxt - https://youtu.be/KgTW0xfyr9A?t=3815

 

Jamstack Course by Phil Hawksworth - https://www.youtube.com/watch?v=A_l0qrPUJds

 

[jamstack_blog_tag]

Related Blogs

Popular Article Ranking

For those who want to know more about manual creation and instruction manual creation

Tokyo: +81-3-5321-3111
Nagoya: +81-52-269-8016

Reception hours: 9:30 AM to 5:00 PM JST

Contact Us / Request for Materials