来源github.com/pocketbase/pocketbase今天给大家介绍一款正在GitHub上爆火的开源项目——PocketBase。它是一个用Go语言编写的开源后端平台却将数据库、用户认证、文件存储、实时API等复杂功能全部浓缩进一个可执行文件中五分钟就可以搭建一个完整的后端服务。简介PocketBase是一个由嵌入式数据库SQLite、实时订阅、内置身份验证管理、便捷的管理仪表板和简单 REST API 组成的开源后端。它本质上是一个极简的、可本地部署的 Backend-as-a-Service (BaaS) 解决方案目标是让开发者尤其是前端或全栈开发者能够瞬间获得一个功能完备的后端从而将精力完全聚焦于业务逻辑和用户体验。核心功能内置数据库内置嵌入式 SQLite 数据库数据以单一文件存储无需独立数据库服务器。身份认证支持邮箱/密码、OAuth2Google/Facebook/GitHub 等用户认证集成 JWT 令牌和密码重置流程。文件存储支持本地存储或 S3 云存储提供访问控制策略。实时数据同步基于 WebSocket 和 SSE 实现实时订阅客户端可监听特定记录或全集合变更如新增、更新、删除。内置管理界面内置 Admin UI可视化管理数据集合、用户权限、文件及 API 日志支持直接生成 API 文档。自动化 API基于已有的数据模型自动生成 RESTful API。前端框架集成提供 JavaScript 和 Dart SDK可以轻松集成主流前端框架Angular/React/Vue/Flutter/Svelte 等。快速使用从官网或GitHub Releases页面下载对应平台的预编译可执行文件一个单独的二进制文件。解压后在终端中执行一条命令./pocketbase serve服务启动后首次运行会自动在浏览器中打开安装页面引导你创建第一个超级管理员账户。至此一个拥有数据库、API和管理后台的后端服务已经运行在本地默认 http://127.0.0.1:8090。如果你希望将其作为库集成一个Go程序的最小示例同样简洁明了package main import ( log github.com/pocketbase/pocketbase ) funcmain() { app : pocketbase.New() // 在此处添加自定义路由或钩子 if err : app.Start(); err ! nil { log.Fatal(err) } }界面预览用户管理API配置与预览文件存储备份及恢复开源地址https://github.com/pocketbase/pocketbaseEND