Linkedrecords
Graph-Based Firebase Alternative with Real-Time Sync
Last verified:
What is Linkedrecords?
LinkedRecords is a Backend-as-a-Service for collaborative SaaS applications that lets a single-page app connect directly to a backend without writing traditional backend code. It is designed around a server-sovereign model, so the frontend talks to the backend directly while authentication, authorization, persistence, and collaboration are handled by LinkedRecords.
A core idea of the platform is that authorization is embedded into the data model itself. When you create data, you can define who can access it, and the default is secure: if you do not specify permissions, only the creator can access the data. That makes it aimed at applications where security and fine-grained sharing matter.
LinkedRecords also focuses on real-time collaboration. It uses CRDTs for JSON-like key-value data, Operational Transform for long text, and versioned blobs for binary content, so concurrent edits merge instead of simply overwriting each other. The getting-started guide frames this as useful for collaborative editors, shared productivity apps, and other multi-user tools.
The product is also positioned for cloud sovereignty and BYOB, or Bring Your Own Backend. In that model, a vendor can ship the app as static frontend code while each customer keeps data on infrastructure they control, which is intended to support data residency, compliance, and customer ownership.
It is a good fit for teams building collaborative SaaS, especially where users need to share data, keep it under their own control, and avoid building a separate API, database layer, or sync engine. The tutorial specifically walks through a React and Vite example, but says LinkedRecords is not limited to those tools.
Linkedrecords pricing
Pricing model: Freemium
The website content provided does not list any pricing, free tier, paid plan, or subscription details. The getting-started page focuses on product capabilities, local development setup, and usage patterns, but does not describe commercial pricing or plan inclusions.
Linkedrecords pros
- No backend code required
- Direct SPA-to-backend architecture
- Authentication via OpenID Connect
- Authorization built into data operations
- Secure default permissions for new data
- User-scoped data access
- Built-in sharing between users
- Persistent storage out of the box
- Real-time collaboration support
- CRDT support for JSON data
- Operational Transform for long text
- Versioned blob handling
- Multi-tab synchronization
- Works with any standard OIDC provider
- BYOB data ownership model
- Customer-controlled data residency
- Compatible with collaborative SaaS apps
- Minimal surface area API
- Reactive declarative data model
- Frontend-only application pattern
- Built for AI-assisted development
- Facts and attributes model for app logic
- Can run with a local Docker Compose setup
- Mock OIDC provider for quick local testing
Linkedrecords cons
- Not offline-first
- Requires Docker for the local quick start
- Local Compose setup is for development only
- Mock OIDC provider is not for production
- Requires an existing OIDC identity provider for real deployments
- Shared items may need explicit re-sharing after permission model changes
- Terms must be declared before use
- Permission model can be non-intuitive at first
- Tutorial example is React-focused
- Requires understanding of facts and predicates
- No separate backend logic layer for custom server workflows
Frequently asked questions about Linkedrecords
What is LinkedRecords?
LinkedRecords is a Backend-as-a-Service for collaborative SaaS applications. It lets a single-page application connect directly to a backend while handling authentication, authorization, persistence, and real-time collaboration without requiring traditional backend code.
Do I need to write a backend to use it?
No. The getting-started guide says you can build a working app with authentication, authorization, sharing, and persistent storage without writing any backend code. The app can talk directly to the LinkedRecords backend from the frontend.
What frontend stack does the tutorial use?
The tutorial uses Vite and React for the example application. It also says LinkedRecords is not limited to those tools, and that the linkedrecords-react module provides helpful hooks for React apps.
How does authentication work?
LinkedRecords uses OpenID Connect for authentication. The site says you can use providers such as Auth0, Keycloak, and other standard OIDC providers, so you do not need to implement custom login flows yourself.
How does authorization work?
Authorization is embedded into the data model itself. The secure default is that if you do not specify permissions, only the creator can access the data, and permissions are stored as facts rather than kept in a separate rules file.
What kinds of collaboration features are built in?
LinkedRecords supports real-time collaboration with conflict handling. The site describes CRDT-based merging for key-value data, Operational Transform for long text, and versioned blobs for binary files, which helps concurrent edits merge instead of overwrite one another.
Can multiple users share the same data?
Yes. The getting-started tutorial includes a sharing feature where a user can share a todo with another signed-up user. Shared users can read and modify the todo data, and additional permissions can be granted for actions like archiving.
How do terms work in LinkedRecords?
The tutorial says any term used in a fact must be declared first using $isATermFor. Terms are meant for shared vocabulary such as states, types, and categories, and once declared they can be referenced as objects in facts.
What is the local quick start setup?
The quick start uses Docker Compose to run LinkedRecords locally on port 6543. It includes a built-in mock OIDC provider with one-click test logins, and the page clearly says it is for local development only, not production.
How is LinkedRecords different from local-first tools?
The site contrasts LinkedRecords with local-first systems by saying LinkedRecords stores data on the server instead of the client and does not work offline. It is positioned as server-sovereign, with server-enforced authorization and central governance over data.