A Year That Accelerated Everything

2020 was a year of acceleration. The pandemic pushed businesses online faster than anyone anticipated, creating enormous demand for web applications, e-commerce platforms, and digital services. For web developers, this meant more work but also a rapid evolution of the tools and patterns we use to build for the web.

At StrikingWeb, we shipped more projects in 2020 than in any previous year, and the technology landscape shifted significantly under our feet. Here is our review of the technologies and trends that defined 2020 for web development.

Jamstack Went Mainstream

The Jamstack architecture — JavaScript, APIs, and Markup — moved from a niche developer community into mainstream adoption in 2020. The core idea is simple: pre-render pages at build time, serve them from a CDN, and use APIs for dynamic functionality. The result is faster sites, better security, and easier scaling.

Several factors drove Jamstack adoption this year. The maturation of static site generators like Gatsby and Next.js made the architecture accessible to teams without deep infrastructure expertise. Services like Netlify and Vercel simplified deployment to the point where pushing a commit triggers a build and deploy in minutes. And the growing ecosystem of headless APIs — from CMS platforms like Contentful and Sanity to commerce engines like Shopify's Storefront API — provided the dynamic functionality that Jamstack sites need.

We adopted Jamstack for several client projects in 2020, particularly for content-heavy marketing sites and documentation portals. The performance improvements were dramatic — page load times dropped from 2-3 seconds to under 500 milliseconds, and hosting costs fell significantly because serving static files from a CDN is far cheaper than running application servers.

Next.js Became the React Framework

If 2019 was the year Next.js gained attention, 2020 was the year it became the default choice for React applications. The release of Next.js 10 in October brought features that solidified its position: automatic image optimization, internationalization routing, and Next.js Analytics for real-world performance measurement.

What makes Next.js compelling is its flexibility. It supports static site generation, server-side rendering, and client-side rendering within the same application. You can pre-render marketing pages for performance while server-rendering authenticated dashboards for dynamic content — all in one codebase. The introduction of Incremental Static Regeneration (ISR) bridged the gap between static and dynamic content, allowing pages to be regenerated in the background without a full rebuild.

At StrikingWeb, Next.js became our primary React framework in 2020. We used it for everything from e-commerce storefronts to SaaS dashboards. The developer experience, combined with Vercel's deployment platform, created the most productive React development workflow we have ever used.

Tailwind CSS Changed How We Style

Tailwind CSS had a breakout year in 2020. The utility-first CSS framework divided opinions — some developers loved the speed of development, while others found the approach of applying styles directly in HTML to be messy. After using Tailwind on multiple projects this year, we landed firmly in the enthusiast camp.

The key insight behind Tailwind is that most CSS is repetitive. Instead of writing custom classes for every component, you compose utility classes to build any design. This eliminates the naming problem, reduces CSS file sizes (because Tailwind purges unused utilities in production), and makes it easy to maintain consistency across a project.

Tailwind v2.0, released in November, added dark mode support, an extended color palette, and improved performance. We wrote about our experience with Tailwind earlier this year and have since adopted it as our default CSS approach for new projects.

Serverless Continued Its Rise

Serverless computing — where you deploy functions rather than managing servers — continued to gain adoption in 2020. AWS Lambda, Google Cloud Functions, and Azure Functions all saw significant growth. For web applications, serverless is particularly well-suited to API endpoints, form handlers, webhook processors, and scheduled tasks.

The combination of serverless functions with Jamstack sites created a powerful pattern. Your frontend is static files on a CDN, and your backend is a collection of serverless functions that scale automatically. No servers to patch, no capacity planning, and you only pay for what you use.

We used serverless extensively in 2020 for API backends, data processing pipelines, and integrating third-party services. The operational simplicity is the primary benefit — our team focuses on writing code rather than managing infrastructure.

Headless CMS Adoption Accelerated

The separation of content management from content presentation — the headless CMS pattern — accelerated dramatically in 2020. Traditional CMS platforms like WordPress, while still dominant, increasingly served as headless backends rather than full-stack solutions.

Purpose-built headless CMS platforms like Contentful, Sanity, Strapi, and Prismic gained significant market share. These platforms provide structured content APIs that can feed websites, mobile apps, digital signage, and any other channel. For teams that need to publish content across multiple platforms, the headless approach eliminates content duplication and ensures consistency.

We worked with both WordPress as a headless CMS (using the REST API or WPGraphQL) and dedicated headless platforms. The choice depends on the client's existing infrastructure, content team expertise, and the number of channels they need to support.

Vue 3 Arrived

Vue.js 3.0, codenamed "One Piece," was released in September 2020 after two years of development. The new version brought the Composition API (inspired by React Hooks), significantly better TypeScript support, improved performance through a rewritten virtual DOM, and smaller bundle sizes thanks to tree-shaking.

While Vue 3 was a major milestone, the ecosystem took time to catch up. Popular libraries like Vuex, Vue Router, and Nuxt needed updates to support the new version. By year's end, most critical libraries had Vue 3 support, and the migration path from Vue 2 became clearer.

TypeScript Became Non-Negotiable

2020 was the year TypeScript stopped being optional for serious JavaScript projects. Major frameworks like Angular already required it, and both React and Vue 3 significantly improved their TypeScript support. The State of JavaScript 2020 survey showed TypeScript satisfaction at all-time highs, with the vast majority of respondents saying they would use it again.

At StrikingWeb, we moved all new projects to TypeScript in 2020. The investment in type annotations pays for itself through better IDE support (autocompletion, refactoring, navigation), earlier error detection, and improved code documentation. For teams working on codebases that will be maintained for years, TypeScript is no longer a nice-to-have — it is a requirement.

Other Notable Trends

2020 was the year the web development ecosystem consolidated around a set of patterns — Jamstack architecture, React with Next.js, utility-first CSS, serverless backends, and TypeScript everywhere — that will define how we build for the web for years to come.

What We Expect in 2021

Looking ahead, we anticipate continued convergence around full-stack React frameworks, deeper serverless adoption, growing interest in edge computing, and the mainstreaming of AI-powered development tools. The web platform itself will continue to evolve with new CSS features, improved performance APIs, and better developer tooling built into browsers. It is an exciting time to be building for the web.

Share: