Search the site
DARTVEL VS POCKETBASE
PocketBase packages its backend in one executable: download one file, run it, and you have a database, an admin panel, auth, file storage and realtime. Dartvel arrives at the same place from the other direction: dartvel build web-server produces one executable that creates its SQLite database beside itself on first run. PocketBase can serve a built frontend from its pb_public folder, and that frontend is still a separate project talking to its API. In Dartvel the app and its backend are one project, compiled into one file.
dartvel build web-server
scp build/server user@host:/srv/app
ssh user@host /srv/app/server
# the site, the API and Studio, on one portCopy code to clipboard
SIDE BY SIDE
Deployment
PocketBase: One Go binary
Dartvel: One binary from dartvel build web-server
Database
PocketBase: SQLite, embedded
Dartvel: SQLite beside the binary; Postgres and MySQL adapters
Admin
PocketBase: Built in, with collections designed in it
Dartvel: Studio, built in: data models designed in it, records, and your pages
Auth
PocketBase: Built in: password, one-time codes, OAuth2 and MFA
Dartvel: Sessions, passwords, magic links and one-time codes, passkeys, OAuth, SAML, LDAP, second factors
Realtime
PocketBase: Subscriptions over SSE, in both SDKs
Dartvel: Model change streams in one process. Delivery to devices is not built yet
Offline
PocketBase: Left to the client
Dartvel: @DVModel(offline: ...): save() writes the device copy at once, and the queue is sent when the server can be reached
Custom logic
PocketBase: Go hooks, or JavaScript
Dartvel: @DVBackendFunction, in Dart, in the same repository
The client app
PocketBase: Official JavaScript and Dart SDKs, in a project you build separately
Dartvel: Generated and typed, and it is the same project
Other targets
PocketBase: None. It is a backend
Dartvel: Android, iOS, desktop, TVs, browser extensions
Maturity
PocketBase: v0.40, before 1.0. Its docs do not yet recommend it for production critical apps
Dartvel: v0.11.5. Built capabilities and planned work are listed per spec section
THE DIFFERENCE
With PocketBase you still choose a frontend framework, wire up its JavaScript or Dart SDK, write the screens, and ship that separately. That is a real choice and sometimes the right one. In Dartvel the page and the function it calls are compiled together, so a renamed field is a build failure instead of a support ticket, and the same page renders on the web and on a phone.
Studio covers more than records: it has a data model designer, a page builder, a frontend function builder, a backend function builder and a Deploy menu that lists every target with its status.
The page builder writes to the same running binary, so a page edited there is served immediately.
Deploy to phones only and the website keeps its compiled page.
HONESTLY
It is smaller and more focused. Download, run, done, with no build step at all.
Its admin has been used in anger by far more people than Studio has.
Its realtime subscriptions reach browsers and phones today, through the SDKs. Dartvel's model changes do not reach a device yet.
If you want a backend for a React, Svelte or Flutter app you already have, PocketBase and its Dart SDK are the answer and Dartvel is not.
Is this a fair comparison?
PocketBase is excellent and the overlap is real: one file, SQLite, an admin, realtime. The honest split is that PocketBase serves an app you build elsewhere, and Dartvel builds the app.
ALSO
FSL-1.1-MIT licensed. Built with Dartvel.
Dartvel is made by
To the bottom