Official Dart SDK for interacting with the PocketBase backend API, supporting authentication, realtime subscriptions, and file operations.
PocketBase Dart SDK is the official Dart client library for interacting with PocketBase, an open-source backend server. It provides a comprehensive set of methods to perform CRUD operations, manage authentication, handle file uploads, and subscribe to realtime updates via PocketBase's web API. It enables Dart and Flutter developers to easily integrate PocketBase as their backend solution.
Dart and Flutter developers building applications that require a backend with realtime capabilities, user authentication, and database management. It's ideal for mobile, web, and desktop apps using PocketBase as their backend service.
Developers choose this SDK because it's the officially maintained client for PocketBase, ensuring compatibility and full feature support. It offers a type-safe, idiomatic Dart API, handles complex tasks like realtime subscriptions and auth persistence, and simplifies integration with PocketBase's extensive service ecosystem.
PocketBase Dart SDK
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides access to all PocketBase services including Records, Auth, Files, Collections, and more, ensuring full backend functionality from Dart as detailed in the Services section.
Allows subscribing to collection changes with filters and callbacks for create, update, and delete events, enabling live data updates without manual polling.
Includes utilities like RecordModel with typed getters and helpers for creating custom DTOs from JSON, reducing runtime errors and improving developer experience.
Supports multiple auth methods like password, OAuth2, OTP, and provides hooks for custom persistent auth stores, adaptable to various app needs as shown in the AuthStore caveat.
The default AuthStore is not persistent, requiring developers to implement custom storage solutions like AsyncAuthStore with shared_preferences for auth state survival across app sessions.
On Android 15+, the all-in-one OAuth2 flow may fail due to background network restrictions, necessitating fallback to manual code exchange or Foreground Services, adding complexity.
Inherits limitations from dart-lang/http, lacking support for aborting or canceling requests, which can be a drawback for dynamic user interactions as noted in the Limitations section.