'PocketBase' is a free and open source system that allows you to build a backend with a GUI like Firebase, using only one file

An open source system called ' PocketBase ' has been released that allows you to build database and authentication functions provided by backend services such as
PocketBase - Open Source backend in 1 file
https://pocketbase.io/

Visit the PocketBase documentation page and download the ZIP file. This time, to try it in a Windows environment, click 'Download v0.34.0 for Windows x64' to download it.

After extracting the ZIP file, display the folder containing pocketbase.exe in Explorer, type cmd in the address bar, and press Enter to launch the command prompt.

To start the PocketBase server, enter ' pocketbase.exe serve ' and press Enter.

After the server starts, a browser will automatically open and an input form for administrator registration will be displayed.

Enter the email address, password, and confirmation password to register as the administrator account and click 'Create superuser and login.'

The administration screen will be displayed, and you can create users, create data collections, configure authentication functions, and more using the GUI.

The three basic addresses are:
・http://127.0.0.1:8090/
You can place static files such as HTML and CSS.
・http://127.0.0.1:8090/_/
The management screen will be displayed.
・http://127.0.0.1:8090/api/
This is the API endpoint.
◆Functions provided by PocketBase
・Administrative dashboard
The GUI allows you to manage user and database collections, upload files, view log files, and set up email sending.
Database
Data management via an embedded SQLite database.
·certification
Email/password authentication, one-time password, multi-factor authentication, and OAuth2 authentication via Facebook, Google, GitLab, GitHub, API key authentication, and more.
・File storage
Upload photo, audio, and video files to local storage or S3 buckets.
・REST API
A simple REST-style API for CRUD operations, listing, pagination, sorting, and filtering of data.
・Real-time function
Ability to subscribe to real-time database events via API.
・Scalability
Add custom business logic, create new routes, or intercept existing functionality in Go or JavaScript.
◆Performance comparison with similar local backend services
・Design philosophy
PocketBase focuses on ease of use and a polished experience, while TrailBase embraces standard technologies such as SQL and the ES6 runtime, pursuing flexibility and service independence.
・Development language
PocketBase is developed in Go, and TrailBase is developed in Rust.
·performance
TrailBase's API is approximately 10 times faster than PocketBase's, and its custom Rust endpoint is up to 140 times faster than PocketBase's JavaScript endpoint.
・Authentication function
PocketBase prioritizes statelessness and simplicity, managing tokens in localStorage and is suitable for small to medium-sized apps, while TrailBase prioritizes security and flexibility, adopting a hybrid approach of short-lived tokens and long-lived refresh tokens.
・Database access
While modifying the PocketBase schema requires a dedicated procedure, TrailBase has direct access to all of the SQLite features and provides built-in extensions such as recursive CTEs and virtual tables.
・Client library
PocketBase officially supports JavaScript/TypeScript and Dart, while TrailBase supports a wider range of languages, including JavaScript/TypeScript, Dart, C#, Python, and Rust.
·license
PocketBase is completely free to use under the MIT license. TrailBase is licensed under the OSL-3.0 license, which requires the source code to be made public when modified and distributed, but allows commercial use and redistribution in the same way as under MIT.
PocketBase is a great choice if you're looking for a simple, easy-to-use backend system, while TrailBase is a good choice if you value performance and flexibility.
◆Reports and discussions on PocketBase usage examples
・Examples of use include running a home lab on a Raspberry Pi 5 and simultaneously providing two web services using PocketPages and the Gemini protocol.
・A development review revealed that the network management controller OpenSOHO significantly reduced development time.
Kavla , a web collaboration tool, uses PocketBase as its authentication system, and developers report that 'the hooks are excellent and make even relatively complex things like starting up infrastructure easy.'


Some users pointed out that the admin screen is not compatible with smartphones and must be operated on a PC. Others cited the fact that the search form on the admin screen only allows searches on one field and does not allow for complex searches. Some positive aspects of the service included the ability to control which fields to expose, overall stability, S3-compatible storage, automatic backups, and the ease of keeping the system up to date.
PocketBase is a tool that provides the minimum necessary tools, such as user management, authentication functions, data storage functions, and data management via REST API, and allows you to easily build a cost-effective backend system that can run well even on a low-spec VPS.
Related Posts:
in Software, Web Application, Posted by darkhorse_logmk







