Thor (@thorwebdev) is a Developer Advocate at Stripe working with many different technologies on the web to grow the GDP of the internet. Having spent most of his time with Stripe's users in Europe, he recently moved to Singapore to learn from and all about APAC's developer communities.
Critics have often made the argument that the JAMstack doesn’t scale well, despite its many benefits like improved site performance and better security. This criticism isn’t without reason. In the worst of cases, frontloading your build process can result in lengthy build times. It can also mean compromising on core implementation details and specific functionality by relying on external APIs, not to mention having to trust that an API will be available and consistent in the long run. However valid these criticisms may be, the power of the JAMstack, and its ability to scale, comes from its flexibility.
In this jam-packed talk we want to explore this flexibility using eCommerce as an example use case by looking at different approaches for handling product information, cart state, customer authentication, payment, and fulfillment. Will it stack up?
Next.js 9 is a feature-rich framework for building full-stack web applications in React. With its zero-config approach it allows you to get up and running quickly while being fully extensible.
Complete with zero-config TypeScript support, we will be able to cover a lot of elements of serverless full-stack web development with a delightful developer experience, using custom donation payments as an example.
- Frontend: Next.js 9 for SSR | react-stripe-js for Checkout and Elements
- Backend: Next.js 9 API routes | stripe-node with TypeScript
- Getting started with Next.js
- Fetching data in SSR apps
- Implementation of a StripeProvider component that sets up Stripe.js and Elements for usage with SSR hooks.
- Building a custom amount donation input component
- Creating a Checkout Session and redirecting to Checkout
- Creating a custom on-site Checkout form with Stripe Elements
- Handling and verifying webhook events
- Basic knowledge of React.
- Laptop that can access internet & with the following software / tools installed:
* VS Code or similar IDE
* Node.js >= 10.0.0 (comes with npm)
- No prior knowledge of TypeScript required.