Client Design
FoundationDB supports language bindings for application development using the ordered key-value store. The following documents cover use of the bindings, from getting started and design principles to best practices and data modeling. The latest changes are detailed in Release Notes.
Getting Started on macOS explains how to install a local FoundationDB server suitable for development on macOS.
Getting Started on Linux explains how to install a local FoundationDB server suitable for development on Linux.
Downloads describes the FoundationDB packages available on our website.
Developer Guide explains principles of application development applicable across all language bindings.
Data Modeling explains recommended techniques for representing application data in the key-value store.
Client Testing Explains how one can use workloads to test client code.
Using FoundationDB Clients contains information on FoundationDB clients applicable across all language bindings.
Transaction Tagging contains information about using transaction tags in your client code to enable targeted transaction throttling.
API Version Upgrade Guide contains information about upgrading client code to a new API version.
Transaction profiling and analyzing contains information about enabling transaction profiling and analyzing.
Known Limitations describes both long-term design limitations of FoundationDB and short-term limitations applicable to the current version.
Tenants describes the use of the tenants feature to define named transaction domains.
Automatic Idempotency describes the use of a transaction option to prevent transactions from failing with
commit_unknown_result
.