个人和小型
SQLite
Duckdb
PocketBase
PocketBase 就像是 Firebase 的“本地离线迷你版”
PocketBase 是一款开源的实时后端解决方案,基于 Go 语言 开发,
通过单一可执行文件集成数据库、实时订阅、用户管理和文件存储等功能,适用于快速构建后端服务
PocketBase — 单文件后端
requests 库是 Python 网络请求领域的 “元老”,以简单易用、API 设计友好而被广大开发者熟知并广泛使用,
httpx 则像是站在巨人肩膀上的革新者 。httpx 继承了 requests 库简洁易用的优点,其 API 设计与 requests 非常相似,
这使得熟悉 requests 库的开发者能够轻松上手 httpx,无缝切换 基于 Python 的 asyncio 库
企业级
PostgreSQL
Supabase 作为一个开源的 Firebase 替代方案,通过提供类似的功能和更好的技术栈控制权,吸引了众多开发者的关注。
开源的后端即服务平台
Firebase 作为一款知名的后端即服务(BaaS)平台,为开发者提供了便捷的后端解决方案,但也存在供应商锁定和成本较高等问题。
步骤
在前端主导型项目中替代传统 Node.js 后端
在无需依赖数据库、云平台的前提下即具备构建中型应用的 API 能力体系
1.下载安装 ./pocketBase --help
pocketBase 在端口上运行8090。但您可以通过在 serve 命令后附加--http和--https参数将其绑定到任何端口。
./pocketbase serve --http 0.0.0.0:8080
项目运行时会在当前工作目录自动生成以下资源文件:
pb_data/
├── data.db # SQLite 主数据库文件
├── auxiliary.db
├── backups/ # 文件上传目录
└── types.d.ts/
pb_migrations/
├── .js
└── .js # 数据模型迁移记录(可选)
据迁移脚本可自动记录在本地 migrations 中,并支持 Git 管理
2.
然后在浏览器中输入以下地址打开管理页面:
http://127.0.0.1:8090/_/
3.概念 record and collection
3 collection types: Base, View and Auth.
用户认证机制
PocketBase 默认支持两类账户体系:
Admin 用户:用于管理后台、创建集合、访问全部数据;
普通用户(User Collection):可自定义字段与注册流程,支持邮箱/密码、OAuth 等多种认证方式
OAuth 是用于授权用户的技术标准,它有助于使 SSO 成为可能
视频
小米、萤石 海康威视
神眸主打三款机型:面向室内的云台版C3(售价299元)、户外防水款W2(499元)以及旗舰款X1(899元)
取消传统SD卡存储,强制使用云端服务,年费从198元到398元不等。
fastapi
⚡ FastAPI 用于Python后端API.
🧰 SQLModel 用于Python和SQL数据库的集成(ORM)。
🔍 Pydantic FastAPI的依赖项之一,用于数据验证和配置管理。
💾 PostgreSQL 作为SQL数据库。
Supabase安装步骤
https://github.com/supabase/supabase.git
Supabase 提供了和Firebase一样的功能。
# Get the code
git clone --depth 1 https://github.com/supabase/supabase
# Go to the docker folder
cd supabase/docker
# Copy the fake env vars
cp .env.example .env
# Pull the latest images
docker compose pull
# Start the services (in detached mode)
docker compose up -d
你可以通过这条命令查看supabase是否在运行中:
docker compose ps
Pocketbase
client = PocketBase('http://127.0.0.1:8090')
client = PocketBase('http://0.0.0.0:8090')
git
: GnuTLS recv error (-110): The TLS connection was non-properly terminated.
sudo add-apt-repository ppa:git-core/ppa
sudo apt update
sudo apt install git
GnuTLS recv error (-110): The TLS connection was non-properly terminated
PocketBase 的文件访问服务本质上是由嵌入式 Go HTTP 服务提供,因此可进行缓存策略、自定义响应头、安全控制等机制的拓展与优化
PocketBase 的架构和部署模型极其适合这种“轻型本地后端 + 前端独立 UI”模式
IMU 是惯性测量单元(Inertial Measurement Unit) Ins 惯性导航系统(Inertial Navigation System)
Svelte
Echo 框架之所以在众多 Go Web
运行在PockerBase和浏览器之间的服务端非常有必要
Gradio是Hugging Face发布的简易WebUI开发框架,它基于FastAPI和svelte
基于Web技术的跨平台桌面应用开发框架:
Electron 本身是基于 Node.js 的
基于原生技术的跨平台桌面应用开发框架
原生技术的跨平台桌面应用开发框架包括Qt、wxWidgets、JavaFX等
Tauri 是一个跨平台的桌面应用程序框架
参考
安装 Docker 并配置镜像加速源
https://cloud.tencent.com/document/product/1207/45596
快收藏这些开源的SaaS杀手,可Docker私有部署(一)
https://zhuanlan.zhihu.com/p/737101647
https://github.com/samyxdev/fastapi-supabase-template.git
https://github.com/supabase/supabase/blob/master/i18n/README.zh-cn.md
https://github.com/codewithmpia/flask_pocket/blob/main/flask_pocket.py
https://fastapi.tiangolo.com/zh/tutorial/path-params/#enum
https://github.com/benallfree/awesome-pocketbase
全栈开发者利器 PocketBase 实战解析 https://blog.csdn.net/sinat_28461591/article/details/148054437
用PocketBase实现网站评论 https://zak.ee/writing/2023/pocketbase-comment/
https://github.com/Track3/pocketbase-comment/tree/legacy
https://pocketbase.io/docs/authentication/
https://github.com/pocketbase/pocketbase
https://github.com/vaphes/pocketbase
https://hub.docker.com/r/elestio/pocketbase
https://blog.csdn.net/sinat_28461591/article/details/148054437