RaisFastRaisFast
Full-Stack Development

概述

无需写任何 Rust 代码 — RaisFast 提供开箱即用的生产级后端。

不需要 Rust

RaisFast 是一个开箱即用的完整后端。你不需要编写、编译或理解任何 Rust 代码。

你需要的一切已经内置:

功能状态
REST API(25 个模块)内置
认证(JWT + 刷新令牌)内置
博客 / CMS内置
媒体上传与存储内置
全文搜索内置
电商(商品、订单、支付)内置
多租户内置
管理后台内置
OpenAPI 文档内置

只要你会 JavaScript,就能开发全栈应用。 用 React、Vue 或 Svelte 连接 REST API 即可。

渐进式开发路径

你不需要在第一天就学会所有东西。RaisFast 遵循渐进式模型:

第一阶段 — 使用内置 API(零代码)

直接用已有的功能。创建文章、上传媒体、管理用户 — 全部通过 REST 端点。

# 启动服务
raisfast

# 创建文章
curl -X POST http://localhost:9898/api/v1/admin/posts \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"My Post","content":"Hello world"}'

第二阶段 — 定义数据模型(TOML,零代码)

当内置模块不够用时,用 TOML 文件定义自定义数据模型。RaisFast 自动创建数据库表和完整的 CRUD API。

name = "Article"
table = "articles"
plural = "articles"

[fields.title]
type = "text"
required = true

[fields.body]
type = "rich_text"

[fields.published]
type = "boolean"
default = false

[fields.author]
type = "relation"
related_type = "users"
relation = "many_to_one"

重启服务即可获得:

  • GET /api/v1/admin/cms/articles — 列表
  • POST /api/v1/admin/cms/articles — 创建
  • GET /api/v1/admin/cms/articles/:id — 详情
  • PUT /api/v1/admin/cms/articles/:id — 更新
  • DELETE /api/v1/admin/cms/articles/:id — 删除

第三阶段 — 插件扩展(只需 JavaScript)

需要自定义业务逻辑时,用 JavaScript 编写插件(也支持 Rhai/Lua/WASM)。无需 Rust。

id = "my-plugin"
name = "My Plugin"
version = "1.0.0"
entrypoint = "index.js"

[[hooks]]
event = "post_created"
handler = "onPostCreated"
function onPostCreated(ctx, post) {
  ctx.log("New post created: " + post.title);
  // 发送通知、更新缓存、触发 webhook...
}

架构

┌─────────────────────────────────────────────┐
│  前端 (React / Vue / Svelte / 原生 JS)      │
│         ↕  REST API (JSON)                  │
├─────────────────────────────────────────────┤
│  RaisFast 后端                              │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐    │
│  │ 内置模块 │ │ 内容类型 │ │  插件    │    │
│  │(25 个API)│ │  (TOML)  │ │JS/Rhai   │    │
│  │          │ │          │ │/Lua/WASM │    │
│  └──────────┘ └──────────┘ └──────────┘    │
│  ┌──────────────────────────────────────┐   │
│  │  SQLite / PostgreSQL / MySQL         │   │
│  └──────────────────────────────────────┘   │
└─────────────────────────────────────────────┘

一个二进制。一个进程。零依赖。

SDK

官方 @raisfast/sdk 框架无关、零依赖:

npm install @raisfast/sdk
import { RaisFast } from "@raisfast/sdk";

const client = new RaisFast({
  baseUrl: "http://localhost:9898",
});

// 登录
const { access_token } = await client.auth.login({
  email: "admin@raisfast.dev",
  password: "admin123",
});

// 使用令牌
client.setToken(access_token);
const posts = await client.posts.list({ page: 1, limit: 10 });

React、Vue、Svelte 或原生 JavaScript 用法完全一致。

你将学到什么

本节带你从零开始构建真实项目:

指南构建内容
项目搭建开发环境、代理配置、热重载
认证集成登录流程、路由守卫、令牌刷新
数据与 CRUD内容类型 → API → 前端数据层
博客实战完整博客:文章、分类、Markdown、SEO
电商实战商城:商品、购物车、结算、支付
生产部署单服务器、Docker、TLS、CI/CD、监控

On this page