Harshal Patel

Posts by Harshal Patel

Nov 25, 2020

Build a Technical Moat with JAMstack

A “moat” is a pit or trench surrounding a castle, usually filled with water. Historically, moats gave the castle residents a tactical advantage. A moat helps secure the premises acting as a line of defense to become less vulnerable to external attacks, especially during war times. Today’s consumer-driven, competitive world is nothing less than a war, and technology is the new battlefield. Consumers are accessing digital content like never before, and they demand a superior, seamless experience for every interaction. In today’s market, any enterprise without a strong technical “moat” to ensure it has a competitive advantage over its competitors runs the risk of losing customers. While there are several ways to develop a moat, one of the quickest ways is to have a reliable, robust web app or website. Yes, you read that right. Your website can be your technical “moat” if implemented the right way: the “JAMstack” way, using a headless CMS, such as Contentstack, and a static-site generator, such as Gatsby. We will talk about JAMstack in a while, but first, a bit on why your website architecture matters and how it can be your technical “moat.” A business’ website serves as a gateway to new customers. However, even simple website issues, such as a long load time, could cost companies a lot. For example, the BBC loses about 10% of users for every additional second the site takes to load. About 53% of your mobile users exit your site if it takes more than three seconds to load. That’s a lot if your sales funnel relies heavily on incoming website traffic. And it’s not just the site speed but the overall experience that matters. Consumers expect websites to deliver personalized content, straightforward translation, smooth video streaming, and a similar, seamless experience over all devices. Any gap in meeting these expectations translates into direct revenue loss. Poor online experiences end up costing companies to lose about 24% of online revenue. Your website matters a lot. And just by making it right, you can build a strong moat. But how is JAMstack the answer to all this? And what’s JAMstack anyway? Understanding JAMstack The “JAM” in JAMstack represents JavaScript, API, and Markup. It is a modern architecture for building websites and web apps. It helps build apps that are fast, secure, and scalable (at a low cost), making lives a little easier for developers. It makes this possible by handling some of the functionalities on the client-side and letting APIs lift the heavy burden of other functionalities, allowing developers to plug in services of their choice with ease. What Should Be Your Stack? Let’s look at the best tools that you can pick up to create your own JAMstack. For JavaScript, you can use vanilla JavaScript or any front-end framework or library of your choice. However, what you choose for API and Markup makes all the difference. API - Contentstack Headless CMS API (A) is the most critical part of JAMstack. It’s easy to plug in multiple, best-in-class third-party apps via APIs to manage different functions of your apps. But the flip side is that you can end up bundling up several services, thereby increasing your app’s cost and maintenance. Instead, it makes more sense to use an API-based content management system, such as Contentstack, that offers several other functionalities that you may need —apart from content delivery and content management —and then include other services for the other additional services required. Contentstack offers content delivery and GraphQL APIs for delivering content to any device or platform of your choice. It also has a built-in CDN for Content Management APIs for managing content efficiently. It also has Image Delivery APIs you can use to retrieve and manipulate images on the go. Contentstack allows you to set up webhooks on specific events, triggering actions in dependent services, such as Netlify, Gatsby-cloud, or build CI/CD systems easily. It also provides other features such as multilingual and multi-environment support, users and roles management, content workflows, and extensions, and more. Lastly, the headless nature of Contentstack allows you to create content once and reuse it across multiple channels, including web apps, IoT devices, wearables, and any other channel to which content can be delivered using APIs. It future proofs your technology and content. Markup - Gatsby Static-site Generator In JAMstack, Markup is generally applied as a templating engine for building pages. It is essential to connect markup languages with templating that should be pre-built during deployment. For example, static site generators include a build process to put JavaScript, APIs, and Markup together. Gatsby is a free, React-based, open-source framework that helps developers build blazing-fast websites using JAMstack. You get all the React framework benefits, such as faster DOM rendering, a supportive community, ease of learning, and so on. Gatsby has a wide range of data source plugins that you can choose from to build your website from different source nodes. You can get data from any third-party APIs/SaaS service, headless CMS, database, or markdown files into your pages using GraphQL API, which can act as a query language for your data. Sites built with Gatsby are easily scalable as there are no complicated deployments with databases and servers. This eventually reduces the time, complexity, and cost spent in maintaining the apps. Builds generated by Gatsby can be served by any CDN service, allowing you to scale at a minimal cost. Gatsby uses the latest web technologies, such as Webpack, React.js, CSS, modern JavaScript, and more to keep your site up-to-date with the most modern technologies. It is also possible to develop PWA (Progressive Web Apps) with Gatsby, which is the future of the web on mobiles and other devices. How Does This Translate Into a Technical Moat? While JAMstack offers many advantages, the JAMstack model combining JavaScript, Contentstack, and Gatsby is the one that helps you build the moat. This model allows you to build blazing fast web apps and deliver superior performance and scalability at a low cost. The decoupled architecture provides enough flexibility to remove or replace any component without impacting other components. Contentstack provides all the APIs you need for superior content management and an effortless content editor experience. Gatsby ensures that your apps are fast, using the latest technologies, paving the way to accommodate future needs. Next Steps We have made it easier for you to build a technical moat. Check out this starter app that uses Contentstack and Gatsby, enabling you to build static sites in minutes.