Nhost:开源的 Firebase 替代方案,自带 GraphQL

Nhost 是一个开源的后端即服务(BaaS)平台,定位为 Firebase 的替代方案,目前 Star 数接近一万:

正文顶部截图

README区域截图

和 Firebase 不同的是,Nhost 所有组件全部开源。底层使用 PostgreSQL 数据库,通过 Hasura 自动生成 GraphQL API,不用自己写后端接口。

Nhost 的核心组件:

  • 数据库:PostgreSQL
  • GraphQL API:Hasura
  • 认证:Auth(邮箱登录、社交登录、JWT)
  • 存储:Storage(文件上传和管理)
  • 无服务器函数:Node.js(JavaScript 和 TypeScript)
  • 本地开发 CLI

认证模块支持邮箱密码、社交账号、魔法链接等方式。存储模块处理文件上传、访问权限和 CDN 分发。几个组件组合起来,覆盖了大部分常见的后端需求。

使用方式

Nhost 提供两种使用方式。托管平台注册账号就能用,创建应用后直接开始写代码,适合快速验证想法。自托管的话,用 Docker Compose 一键启动整套服务,数据完全自己掌控。

JavaScript SDK

安装 SDK:

npm install @nhost/nhost-js

初始化客户端、登录用户、查询数据,一个文件搞定:

import { createClient } from '@nhost/nhost-js'

const nhost = createClient({
  subdomain: 'your-project',
  region: 'eu-central-1'
})

await nhost.auth.signInEmailPassword({
  email: 'user@example.com',
  password: 'password123'
})

await nhost.graphql.request({
  query: `
    query GetUsers {
      users {
        id
        displayName
        email
      }
    }
  `
})

认证和数据请求加起来不到二十行。SDK 还有 Dart/Flutter 版本,移动端也能用。

前端框架

Nhost 不绑定前端,官方提供了 Next.js、Nuxt.js、React、React Native、Svelte、Vue.js 的集成库。后端逻辑和前端解耦,换框架不用改后端。

本地开发

Nhost CLI 在本地启动完整开发环境,数据库、GraphQL API、认证、存储全部就绪。调试完成后直接部署到线上。

自托管

仓库附带了 Docker Compose 配置:

docker-compose up -d

一条命令拉起整套 Nhost 服务栈,适合对数据主权有要求的团队。

Nhost 采用 MIT 协议开源,有贡献指南和社区讨论区。

up -d


一条命令拉起整套 Nhost 服务栈,适合对数据主权有要求的团队。

Nhost 采用 MIT 协议开源,有贡献指南和社区讨论区。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐