📄️ Basics
Learn to use Fireproof in a few simple steps.
📄️ Database
Fireproof database operations include creating, reading, updating, and deleting documents, as well as querying and indexing.
📄️ Documents
Fireproof uses JSON documents to store data. Documents are stored in a single collection, and each document has a unique ID. Documents can be read, written, and deleted. Validation functions can prevent unwanted changes from being written to the database.
📄️ Querying Data
Fireproof provides a powerful querying API that allows you to search and retrieve data quickly. This is done using the db.query(mapFn, params) method. The mapFn is a synchronous function that defines the mapping of your data, and params is an optional object that can be used to specify query parameters.
📄️ Sync
To sync between devices, first choose a cloud connector. Fireproof supports a variety of cloud connectors, including PartyKit and IPFS.
📄️ Replication
Replication allows you to store data in multiple locations for backup or performance reasons. Replication is also how traditional client/server experiences can be built with Fireproof.
📄️ Storage
Read about storage in the Concept Guide and Scalability sections.
📄️ Encryption
Fireproof encryption operates at the block level. The process is end-to-end, meaning that data is encrypted as soon as it's written and remains encrypted until it's explicitly decrypted for reading, ensuring that the data is always secure during transit and at rest. The encryption is symmetric, meaning the same shared secret key is used for both encryption and decryption of data. Encryption keys are shared over the database's metadata endpoint, which is where applications can manage access control.