ajcwebdev
Video cover art for RedwoodJS, the Universal Deployment Machine | Mintbean

RedwoodJS, the Universal Deployment Machine | Mintbean

Published:

Anthony Campolo discusses the origins of RedwoodJS and its goal to become a Universal Deployment Machine. He demos how to simultaneously deploy to Netlify and Vercel.

Episode Summary

In this talk, Anthony Campolo introduces RedwoodJS, a full-stack serverless framework for the Jamstack. He explains Redwood’s goal of becoming a “Universal Deployment Machine” that allows developers to write code and deploy it seamlessly across multiple platforms. Anthony demonstrates this by creating a simple Redwood application with two pages and deploying it to both Netlify and Vercel in under 30 minutes. He highlights Redwood’s developer-friendly features like code generation, built-in routing, and deployment automation. Throughout the presentation, Anthony touches on Redwood’s architecture, its use of GraphQL, and its potential as a teaching tool for web development. He also discusses a project he built integrating Redwood with FaunaDB, showcasing the framework’s flexibility and power for distributed applications.

Chapters

00:00 - Introduction to RedwoodJS

Anthony Campolo introduces himself and provides an overview of RedwoodJS, a full-stack serverless framework for the Jamstack. He discusses the core team behind Redwood, including Tom Preston-Werner and Peter Pistorius, and explains the framework’s goals. Anthony emphasizes Redwood’s potential as a teaching tool for web development, noting how it can make complex technologies more comprehensible when integrated together. He also mentions that Redwood is approaching its 1.0 release, making it an exciting time to get involved with the project.

02:56 - RedwoodJS Architecture Overview

Anthony explains the architecture of RedwoodJS, explaining its key components and how they work together. He discusses the web frontend, which uses React, and the API backend, which uses GraphQL. He shows how Redwood’s folder structure is organized and demonstrates some of its built-in features, such as routing and layouts. Anthony also touches on Redwood’s use of Prisma for database management and explains how the framework simplifies the process of connecting the frontend to the backend. This chapter provides a high-level understanding of how a Redwood application is structured and functions.

08:00 - Creating a Simple Redwood Application

Anthony begins a live demonstration of creating a simple Redwood application. He starts by generating a new Redwood project and then creates two pages: a home page and an about page. He shows how to use Redwood’s generators to quickly scaffold these pages and add navigation between them. Anthony explains each step of the process, demonstrating how Redwood’s developer experience is designed to be intuitive and efficient. This practical demonstration helps viewers understand how quickly a basic web application can be set up using Redwood.

18:16 - Deploying to Netlify and Vercel

Anthony moves on to demonstrate Redwood’s “Universal Deployment Machine” concept by deploying the simple application to both Netlify and Vercel. He explains the process of setting up the project on GitHub and then using Redwood’s deployment generators to create the necessary configuration files for each platform. Anthony walks through the deployment process for both services, highlighting how Redwood simplifies the deployment workflow. This chapter showcases one of Redwood’s key features: the ability to easily deploy to multiple platforms without significant changes to the codebase.

28:27 - Q&A and Additional Redwood Projects

In the final chapter, Anthony answers questions from the audience and discusses some of his own projects built with Redwood. He goes into detail about a project integrating Redwood with FaunaDB, explaining how this combination allows for globally distributed databases. Anthony touches on more advanced topics like GraphQL integration and Fauna’s query language. He also addresses questions about use cases for multiple deployments and discusses the benefits of Redwood’s flexibility in this regard. This chapter provides deeper insights into Redwood’s capabilities and potential applications.