Please keep in mind that PocketBase is still under active development and full backward compatibility is not guaranteed before reaching v1.0.0.
PocketBase is an open source backend consisting of embedded database (SQLite) with realtime subscriptions, built-in auth management, convenient dashboard UI and simple REST-ish API.
The easiest way to get started is to download the prebuilt minimal PocketBase app:
- Download v0.16.4 for Linux (~14MB zip)
- Download v0.16.4 for Windows (~14MB zip)
- Download v0.16.4 for macOS x64 (~14MB zip)
- Download v0.16.4 for macOS ARM64 (~14MB zip)
See the GitHub Releases page for other platforms and more details.
Once you've downloaded and extracted the archive, you could start the application by running the following
console command in the extracted directory:
./pocketbase serve
.
And that's it! A web server will be started with the following routes:
-
http://127.0.0.1:8090
- ifpb_public
directory exists, serves the static content from it (html, css, images, etc.) -
http://127.0.0.1:8090/_/
- Admin dashboard UI -
http://127.0.0.1:8090/api/
- REST API
The first time, when you access the Admin dashboard UI, it will prompt you to create your first admin account (email and pass).
The prebuilt PocketBase executable will automatically create and manage 2 new directories alongside the executable:
pb_data
- stores your application data, uploaded files, etc. (usually should be added in.gitignore
).pb_migrations
- contains JS migration files with your collection changes (can be safely commited in your repository).
You can even write custom migration scripts. For more info check the Migrations docs.
You could find all available commands and their options by running
./pocketbase --help
or
./pocketbase [command] --help
For more advanced usage and customizations, you could also use PocketBase as a Go framework ( see the Advanced section ).