
后端前端Web框架开发工具【免费下载链接】redwoodRedwoodGraphQL项目地址https://gitcode.com/gh_mirrors/re/redwood点击查看免费下载RedwoodJS 是一个面向全栈应用的 React 框架它将前端React GraphQL、后端GraphQL API Prisma ORM与一套强大的 CLI 工具整合在一起让开发者可以从零开始快速构建数据驱动的应用。本文以 RedwoodJS v5 的官方 Quick Start 文档为核心带你走完从创建项目、配置数据库模型、生成 CRUD 脚手架到使用 Storybook 进行前端优先开发、用 Jest 覆盖测试、最终完成部署与认证配置的完整流程。读完本文你将掌握 RedwoodJS 的核心开发闭环一条命令创建项目、一条命令生成全栈 CRUD、一套 CLI 贯穿开发到部署。前置条件Node.js 与 Yarn在开始之前请确认你的开发环境满足 RedwoodJS v5 的要求Node.jsRedwoodJS 需要 Node.js18.x当前仓库主线模板的package.json中engines字段为node: 20.xtemplates/ts/package.json但 v5 文档对应的版本要求是 18.x请以你使用的 Redwood 版本要求为准Yarn版本1.15。如果你使用的是 Windows 系统为了获得最佳体验建议先阅读 Redwood 官方的 Windows 开发环境搭建指南。值得一提的是yarn create redwood-app在创建项目时会自动执行一次环境兼容性检查。从当前仓库源码看CLI 会读取模板package.json中的engines字段并调用check-node-version进行校验见 create-redwood-app.js如果 Node 版本过低会直接终止安装并提示你使用 nvm 或 corepack 切换到兼容版本如果版本过高超出支持范围则会弹出警告询问你是强制继续还是退出。这意味着你无需手动比对版本号工具会帮你把关。创建你的第一个 Redwood 项目使用yarn create redwood-app即可创建一个全新的 Redwood 项目yarn create redwood-app my-redwood-project偏好 TypeScript一条命令搞定RedwoodJS 从第一版就内置了完整的 TypeScript 支持创建项目时加上--typescript标志即可yarn create redwood-app my-redwood-project --typescript从当前仓库的模板结构看create-redwood-app/templates 下同时维护了js与ts两套完整模板两者在目录结构上完全一致区别仅在文件扩展名与tsconfig等配置上因此无论选择哪种语言后续开发体验和文档指引都是通用的。交互式引导CLI 会问什么如果不在命令行中指定全部参数create redwood-app会以交互方式引导你完成配置。结合 create-redwood-app.js 的源码实现你可以预期以下流程目标目录询问在哪里创建应用默认my-redwood-app支持用.表示当前目录语言选择TypeScript还是JavaScript默认 TypeScript是否初始化 Git 仓库默认Yes会执行git init git add . git commit是否执行yarn installYarn 2 环境下才会询问如果目标目录已存在且非空还会提示你是退出、覆盖还是换个目录。所有交互都可以通过命令行参数跳过常用参数包括参数别名说明--typescript--ts生成 TypeScript 项目--yes-y跳过所有提示使用默认值--overwrite无目标目录非空时也强制创建--git-init--git是否初始化 Git 仓库--commit-message-m初始提交的 commit message默认Initial commit--telemetry无是否发送遥测数据可用环境变量REDWOOD_DISABLE_TELEMETRY1关闭--yarn-install无是否安装依赖Yarn 2 可用可用--no-yarn-install跳过创建完成后工具还会在项目内生成.redwood/telemetry.txt用于记录匿名使用数据并自动执行yarn rw-gen生成类型文件见 createProjectFiles 与 generateTypes。启动开发服务器创建好项目后进入目录、安装依赖并启动开发服务器cd my-redwood-project yarn install yarn redwood dev浏览器会自动打开 http://localhost:8910你会看到 Redwood 的 Welcome Page其中链接了大量学习资源。看到这个页面意味着你已经成功运行了第一条 Redwood CLI 命令。关于端口和启动行为可以从新项目的 redwood.toml 配置中一探究竟[web] title Redwood App port 8910 apiUrl /.redwood/functions [api] port 8911 [browser] open true也就是说yarn redwood dev会同时启动两个服务Web 前端运行在 8910 端口React ViteAPI 后端GraphQL运行在 8911 端口[browser] open true正是浏览器自动打开这一行为的来源。前后端端口都可以在这里自由修改apiUrl则定义了前端请求 API 的路径前缀。探索 CLIyarn redwood --help从开发到部署Redwood 的 CLI 会一路陪伴你。你可以随时查看全部可用命令yarn redwood --help完整的命令参考见 CLI 命令参考文档。另外记住一个常用技巧rw是redwood的简写例如yarn rw dev与yarn redwood dev完全等价后续文档将大量使用更简洁的yarn rw形式。接入数据库从 Prisma Schema 开始一个没有数据库的全栈框架是不完整的。在 Redwood 中一切从 Schema 开始。打开api/db/schema.prisma将模板自带的UserExample模型替换为下面的Post模型model Post { id Int id default(autoincrement()) title String body String createdAt DateTime default(now()) }Prisma声明式的数据建模Redwood 使用 Prismadatasource db { provider sqlite url env(DATABASE_URL) } generator client { provider prisma-client-js binaryTargets native } model UserExample { id Int id default(autoincrement()) email String unique name String? }注意数据库连接字符串是通过环境变量DATABASE_URL提供的——这也是 Redwood 管理环境变量的通用方式可参考 环境变量文档。如果切换到 PostgreSQL 或 MySQL只需修改provider与DATABASE_URL即可。执行数据库迁移Prisma Migrate 会基于 Schema 帮你无痛地生成数据库迁移。运行yarn rw prisma migrate dev # ... ? Enter a name for the new migration: › create posts工具会提示你为迁移命名输入create posts即可。该命令会对比 Schema 与数据库当前状态生成迁移 SQL、创建迁移记录并同步更新 Prisma Client。生成 CRUD 脚手架generate scaffold接下来用一条命令生成对Post模型进行完整 CRUDCreate、Retrieve、Update、Delete操作所需的全部代码yarn redwood generate scaffold post执行完毕后导航到 http://localhost:8910/posts/new填写 title 和 body点击 Save——没错你已经在数据库里创建了一条 postyarn rw generate scaffold model会一次性生成页面Pages列表页、详情页、新建页、编辑页组件Components表单、单元格等 UI 组件服务层Services封装 CRUD 逻辑的 GraphQL 查询与变更路由Routes自动注册到Routes.tsx中。从源码结构看脚手架生成器位于 packages/cli/src/commands/generate/scaffold/scaffold.js它会基于你定义的 Prisma 模型自动推导字段并生成对应的表单、验证与类型。这是 Redwood 的核心生产力特性之一数据模型即 API 蓝图模型定义好后完整的前后端 CRUD 在几秒内即可落地。前端先行用 Storybook 隔离开发 UI还没想好数据模型长什么样完全没关系——Redwood 深度集成了 Storybook让你可以在完全脱离后端的情况下对 React 组件进行设计稿原型化、构建与验证yarn rw storybook如果你的页面提示 Couldnt find any stories那是因为项目里还没有*.stories.{tsx,jsx}文件。最简单的方式是生成一个 CellRedwood 的数据获取抽象详见 Cells 文档CLI 会顺带生成对应的 story 文件yarn rw generate cell examplePostsStorybook 服务器会热重载此时你就能得到几个可直接操作的 story 了。它们可能看起来有些朴素因为没有引入样式库——不妨看看 Redwood CLI 的setup ui命令是否支持你心仪的样式库yarn rw setup ui --help从当前仓库源码看setup ui已内置了对主流样式方案的一键接入例如 tailwindcss.js、chakra-ui.js 与 mantine.js运行对应子命令即可自动完成依赖安装与配置。用 Jest 覆盖全栈测试从个人项目走向创业公司测试是规模化路上绕不开的一环。Redwood 在前端与后端都深度集成了 Jest并且在生成组件和服务时会自动生成对应的测试文件让整个应用保持测试覆盖变得非常轻松yarn rw test为了让集成体验更无缝Redwood 还对 Jest 做了两方面的增强数据库场景Scenarios允许你在测试中定义带关联数据的场景服务层测试可以直接基于真实数据库进行详见 测试文档中的 Scenarios 章节GraphQL Mocking在前端组件测试中模拟 GraphQL 调用无需真实后端即可验证组件行为详见 测试文档中的 GraphQL Mocking 章节。部署与认证上线前的最后一步选择部署目标Redwood 同时面向**无服务器Serverless与传统服务器Serverful**两类部署形态例如 Netlify、Vercel以及 Render、AWS 等。查看支持的部署目标并生成部署配置yarn rw setup deploy --help别忘了认证上线前务必加上认证Redwood 提供了两条路径dbAuth框架内置的、基于数据库的认证系统无需任何第三方服务即可完成邮箱密码注册登录详见 dbAuth 安装与配置第三方认证提供商可集成近十余种主流第三方认证服务。查看可用的认证方案yarn rw setup auth --help从仓库结构看各认证提供商的实现以独立包形式维护在 packages/auth-providers 下包含 auth0、azureActiveDirectory、clerk、dbAuth、firebase、netlify、supabase、supertokens 等每个包都带有对应的模板、文档与测试。下一步深入学习学习 RedwoodJS 的最佳方式是通读官方完整的 Redwood 教程它将带你构建一个完整的真实应用覆盖路由、页面、服务、认证、部署等全部环节。当你熟悉了本文的快速启动流程后还可以继续探索 路由、GraphQL、服务层 与 单元格Cells 等进阶主题把 Redwood 的全栈能力真正用起来。以上就是从零到部署的完整 RedwoodJS 快速启动路径创建项目 → 定义数据模型 → 生成 CRUD → Storybook 打磨 UI → Jest 保障质量 → 配置部署与认证。现在打开终端运行你的第一条yarn create redwood-app吧。赞分享后端前端Web框架开发工具【免费下载链接】redwoodRedwoodGraphQL项目地址https://gitcode.com/gh_mirrors/re/redwood点击查看免费下载相关推荐RedwoodJS 快速上手指南创建全栈项目、接入数据库 CRUD、Storybook 与 Jest 测试实战RedwoodJS 快速上手指南创建全栈项目、接入数据库 CRUD、Storybook 与 Jest 测试实战 RedwoodJS 是一个面向全栈 Web 应后端前端Web框架开发工具RedwoodJS 入门实战指南从脚手架到全栈 CRUD、Storybook 与部署的完整工作流RedwoodJS 入门实战指南从脚手架到全栈 CRUD、Storybook 与部署的完整工作流 导读 本文基于 RedwoodJS 官方 test pro后端前端Web框架开发工具RedwoodJS 完整上手指南从脚手架、Prisma 数据库到 Storybook、Jest 与部署RedwoodJS 完整上手指南从脚手架、Prisma 数据库到 Storybook、Jest 与部署 导读 本文基于 RedwoodJS 官方脚手架项目 f后端前端Web框架开发工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考