@fireproof/netlify
TypeScript icon, indicating that this package has built-in type declarations

0.19.118 • Public • Published

@fireproof/netlify

Fireproof is an embedded JavaScript document database that runs in the browser (or anywhere with JavaScript) and connects to any cloud.

This module, @fireproof/netlify, allows you to connect your Fireproof database to Netlify, enabling you to sync your data across multiple users in real-time.

Get started

We assume you already have an app that uses Fireproof in the browser, and you want to setup collaboration among multiple users via the cloud. To write your first Fireproof app, see the Fireproof quickstart, otherwise read on.

1. Install

In your existing Fireproof app install the connector:

npm install @fireproof/netlify

In your netlify project, install the @netlify/blobs package:

npm install @netlify/blobs

And finally, copy the server.ts file from this repo into your project:

cp node_modules/@fireproof/netlify/server.ts netlify/edge-functions/fireproof.ts

2. Connect

You're all done on the server, and ready to develop locally and then deploy with no further changes. Now you just need to connect to the Netlify in your client code:

// you already have this in your app
import { useFireproof } from "use-fireproof";
// add this line
import { connect } from "@fireproof/netlify";

Now later in your app connect to the party (be sure to do this a component that runs on every render, like your root component or layout):

const { database } = useFireproof('my-app-database-name')
const connection = connect(database, '', process.env.NEXT_PUBLIC_NETLIFY_HOST!)

The connect function is idempotent and designed to be safe to call on every render.

3. Collaborate

Now you can use Fireproof as you normally would, and it will sync in realtime with other users. Any existing apps you have that use the live query or subscription APIs will automatically render multi-user updates.

Package Sidebar

Install

npm i @fireproof/netlify

Weekly Downloads

6

Version

0.19.118

License

Apache-2.0 OR MIT

Unpacked Size

595 kB

Total Files

15

Last publish

Collaborators

  • jchris
  • fastandfearless