ajcwebdev
Podcast cover art for What is RedwoodJS

What is RedwoodJS

Published:

Podcast Link: What is RedwoodJS

Anthony Campolo joins Smashing Podcast to discuss RedwoodJS, a fullstack Jamstack framework that enables building sophisticated web applications using Jamstack principles.

Episode Description

An introduction to RedwoodJS, a modern full-stack Jamstack framework for building web applications with React, GraphQL, and serverless deployment.

Episode Summary

This episode explores RedwoodJS, a full-stack Jamstack framework designed to simplify modern web development by combining React, GraphQL, and serverless functions. The conversation begins with an overview of Redwood’s origin, noting its foundations in open source and the experience of well-known developers behind it. Listeners learn how Redwood integrates tools such as Prisma for database management, along with a custom router and concepts like “cells” to streamline data fetching. The discussion details how Redwood accommodates relational databases, while remaining flexible enough to work with alternatives like FaunaDB. It also highlights Redwood’s scaffolding commands that automate common tasks, as well as built-in authentication solutions. By emphasizing a “convention over configuration” philosophy, Redwood seeks to bring the elegance of Rails-like frameworks to the JavaScript ecosystem. Throughout the conversation, the speakers address production readiness, community involvement, and a roadmap leading to Redwood’s 1.0 release, offering practical insights for anyone considering this emerging framework.

Chapters

00:00 - Introduction and Overview

In the opening minutes, the host greets listeners and sets the stage for a conversation about RedwoodJS and modern approaches to full-stack Jamstack development. The guest is introduced, highlighting both his experience with Redwood and his broader engagement in web development. Listeners get a sense of the framework’s origins, including the influence of established open source leaders and the motivation behind Redwood’s creation. This introductory segment provides the necessary context to understand how Redwood merges multiple tools into a cohesive, convention-driven environment.

The conversation also hints at the scope of the episode, outlining how Redwood addresses the complexities of single-page application architecture, database integration, and serverless deployments. By establishing the guest’s background and Redwood’s place in the JavaScript ecosystem, the stage is set for a deep look at its features and the ways it is shaping modern development workflows. These opening moments encourage listeners to think about how Redwood brings together best-of-breed technologies for a simpler, more productive coding experience.

03:09 - RedwoodJS as a Full-Stack Jamstack Solution

Once the premise is set, the focus shifts to defining RedwoodJS and explaining why it’s considered a “full-stack Jamstack” framework. The guest outlines how Redwood handles both client and server logic in a monorepo setup, showcasing how front-end components in React work together with a back-end GraphQL API. This design lets developers manage user interfaces, data fetching, and serverless functions under one cohesive structure, creating an easier onboarding experience for those new to multi-tiered JavaScript development.

The segment also examines Redwood’s “cells,” a feature designed to simplify data retrieval and state management by eliminating boilerplate code. Listeners learn that Redwood favors a declarative style, letting developers describe their application’s data requirements without manually handling complex query logic. These concepts illustrate the framework’s philosophy of making commonly repeated tasks straightforward, all while leaning on a Jamstack approach: pre-rendering content where possible and relying on serverless functions for dynamic behavior.

08:00 - GraphQL Integration and Framework Philosophy

Attention then turns to the role of GraphQL in Redwood’s architecture and how it influences developer workflows. GraphQL is presented as a key technology that allows front-end and back-end to communicate smoothly, giving developers the freedom to request only the data they need. Because Redwood bakes Apollo and its own router into the framework, developers are freed from extensive manual setup. This lowers barriers for those who may have found GraphQL daunting in other contexts.

During this section, the guest underscores the Rails-like philosophy behind Redwood. Rather than piecing together an assortment of tools, Redwood aims to unify best practices with a consistent pattern. The conversation highlights the project’s roots in open source expertise, offering a testament to why Redwood is built with a focus on reliability, clarity, and long-term stability. Through this lens, listeners gain an appreciation for how Redwood’s integrated approach reduces the friction typically found in modern JavaScript stacks.

13:00 - Prisma and Database Considerations

Shifting gears, the discussion covers databases and how Redwood supports relational systems such as Postgres through Prisma. This integration allows developers to define data models at a high level and rely on Prisma to handle migrations and queries, akin to an ORM. Listeners get a picture of how Redwood’s convention-based approach simplifies setting up a production-ready back end, especially when paired with services like Heroku for hosting.

The guest emphasizes that while Redwood defaults to relational databases, it remains flexible enough to work with alternative services like FaunaDB. This reveals Redwood’s broader goal of staying agnostic to specific tooling choices whenever possible. By illustrating real-world projects already leveraging Prisma with Redwood, the segment highlights the framework’s maturity, reassuring developers that they can tap into Redwood’s approach without sacrificing freedom in their data layer decisions.

18:00 - Serverless Deployment and Project Structure

Building upon the database conversation, the episode moves into the subject of serverless deployment. Redwood is described as “serverless by default,” typically deploying front-end files to a content delivery network and bundling the back-end GraphQL handler into functions, often on services like Netlify. This architecture spares developers from managing traditional servers while still allowing them to run dynamic operations.

Listeners learn that Redwood’s project structure is key to this smooth deployment experience. Both front-end and back-end components remain co-located in a single repository, leading to simpler version control and a more coherent workflow. By embracing a seamless integration from code to cloud, Redwood positions itself as an appealing option for teams looking to minimize operational overhead without limiting how they manage business logic and data handling.

23:00 - Scaffolding, Auth, and Built-in Utilities

As the conversation continues, the host and guest dive into Redwood’s scaffolding features and built-in utilities. Code generators for pages, layouts, and entire CRUD interfaces let developers move quickly from a blank slate to a functional application. By automating routine tasks, Redwood reduces mistakes and keeps teams focused on building unique features rather than revisiting setup chores repeatedly.

Authentication also emerges as an important built-in feature, showcasing how Redwood integrates seamlessly with popular identity services like Netlify Identity, Auth0, or Magic Link. This not only reinforces Redwood’s philosophy of giving developers immediate solutions for common tasks but also demonstrates the framework’s commitment to security best practices. Together, scaffolding and auth solutions represent Redwood’s drive to offer everything needed in one place for rapid, reliable application development.

30:00 - Production Readiness and Community Collaboration

In this segment, the episode delves into Redwood’s real-world track record, noting several production applications already benefiting from its full-stack capabilities. The guest shares how teams have found Redwood stable enough for critical projects, even though the framework has yet to reach a formal 1.0 release. The conversation also addresses versioning concerns and how Redwood’s CLI updates applications cleanly, aiming to mitigate the headaches of rapid dependency changes.

The community aspect shines here, as the guest highlights Redwood’s open forums, contributor-friendly culture, and the emphasis on “tutorial-driven development.” By creating thorough, approachable guides, Redwood’s team encourages developers of all levels to try their hand at building something meaningful quickly. This inclusive approach fosters a sense of shared ownership and helps maintain a lively ecosystem, which is essential for a framework that aspires to handle complex, modern web needs.

36:00 - Open Source Approach and Future Goals

Here, the framework’s long-term vision and guiding principles become focal points. The conversation touches on Redwood’s larger goal of building a universal deployment system that remains cloud-agnostic, letting developers move between providers such as Netlify or Vercel with minimal friction. This commitment to flexibility extends beyond hosting, encompassing Redwood’s ability to integrate with various databases and third-party tools.

Listeners also gain insights into the personal journeys of those maintaining Redwood, highlighting how their experiences shape the framework’s decisions. The guest recounts his own path into Redwood, underscoring the supportive nature of the community and the framework’s readiness to welcome newcomers. By showing how Redwood’s growth is underpinned by both strong funding and enthusiastic volunteers, this chapter paints an optimistic picture of a project aiming to stand the test of time.

41:00 - Personal Learning, Practical Use Cases, and Conclusion

In the final chapter, the discussion circles back to practical steps for anyone wanting to get started with Redwood or expand their knowledge of modern JavaScript frameworks. The guest emphasizes the utility of Redwood’s comprehensive tutorial, which walks developers through building a project from scratch and illustrates everything from front-end routing to back-end migrations. This approach allows new adopters to learn GraphQL, Prisma, and React in a unified context, turning Redwood into a classroom for mastering several technologies at once.

The episode closes by reiterating Redwood’s mission to simplify full-stack development, highlighting the wealth of resources available for both beginners and seasoned professionals. Listeners are reminded that they can reach out to contributors directly or explore detailed documentation if they encounter roadblocks. With an open invitation to experiment and a community-driven ethos, RedwoodJS stands out as a compelling framework for those looking to create powerful, scalable applications in a rapidly evolving tech landscape.