Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
randomwebdev
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
1.
▲
by
randomwebdev
2y ago
> As to 4x, my concurrency levels are significantly lower which could certainly explain it. Yes I noticed that too so that it is very likely the reason. In all cases my initial comment wasn't intended to "dispute", argue o
2.
▲
by
randomwebdev
2y ago
> I'm not sure this is expected but it didn't seem to make much of a difference with my setup I expect it to be faster but it is also possible that maybe in your specific collection and execution scenario it somehow perform wor
3.
▲
by
randomwebdev
2y ago
(Disclaimer: I'm PocketBase author) It is nice to see more backends utilizing SQLite. The benchmarks and the Comparisions section also seem well done. Just a nitpick - list the versions of the tested platforms. Based on your benchmarks
4.
▲
by
randomwebdev
2y ago
Hi, PocketBase author here. Keep in mind that PocketBase do a lot more than just executing a raw DB query. We perform data validation, normalization, serialization, enriching, auto fail-retry to handle additional SQLITE_BUSY errors, etc. Al
5.
▲
by
randomwebdev
3y ago
I'm sorry but that doesn't make sense to me (especially your last sentence regarding TypeScript). During development vite has HMR and you don't need to run build after every change. This is no different when using SSR. But I
6.
▲
by
randomwebdev
3y ago
I don't understand your concern with it and why this is a problem. I haven't personally noticed the vite/esbuild memory consumption, but I also run build only once at the end before deployment or generating the prod artifacts
7.
▲
by
randomwebdev
3y ago
Why? I think most modern bundlers and spa routers supports code splitting out of the box by just using dynamic imports, aka: `const myComponent = await import("/path/to/component")`
8.
▲
by
randomwebdev
3y ago
It is really a cool project. We are using it as a default driver in PocketBase and although it is not a "drop-in" replacement of the CGO alternative `mattn/go-sqlite3` (different dsn format, some differences in the error mes
9.
▲
by
randomwebdev
4y ago
Its not schema free (although you can create a json field and put whatever you want in it). You can define schema via migrations or through the admin UI (see https://pocketbase.io/docs/manage-collections/ ).
10.
▲
by
randomwebdev
4y ago
Currently you cannot create indexes through the admin UI, but it's in my todo. As an alternative, you can always create indexes through DB migrations or add the index directly via the `sqlite3` cli.
11.
▲
by
randomwebdev
4y ago
There is already a JavaScript SDK ( https://github.com/pocketbase/js-sdk ) that works both in the browser and node. Dart SDK (targeting mainly Flutter) is also on the way. Unfortunately I'm not very uptodate with An
12.
▲
by
randomwebdev
4y ago
The existing admin interface could be used as a very rudimentary content management, but it was really intended for quick internal data explorations and edits. Additionally, currently there are no roles for admins so permission controls wit
13.
▲
by
randomwebdev
4y ago
Currently any additional data transformation is left to the developers to extend via event hooks or custom client side handling. I've worked with CRDT in the past (yjs), but it may not be very useful in PocketBase considering that the
14.
▲
by
randomwebdev
4y ago
Yes, you can subscribe to individual records or collections. User defined filters for the subscriptions are not supported, but it's a good idea and I may consider it in the future. Currently the subscriptions are filtered through the c
15.
▲
by
randomwebdev
4y ago
I guess there will be differences from use case to use case, but in general migrating from PocketBase to a more common horizontal supported stack is not different from rewriting your application. Internally, each Collection creates a standa
16.
▲
by
randomwebdev
4y ago
Yes, built-in sounds better. I'll update it.
17.
▲
by
randomwebdev
4y ago
The documentation is not auto generated and is part of the static landing site (built with SvelteKit). I didn't bother open source it because it is kinda messy and a little complicated to be edited by users not familiar with the codeba
18.
▲
by
randomwebdev
4y ago
Uploaded files and your database are stored outside of the binary.
19.
▲
by
randomwebdev
4y ago
You may want to check Supabase or Nhost in that case. PocketBase was specifically designed to be self-contained and running only on a single server.
20.
▲
by
randomwebdev
4y ago
"Collections" stores a single records table meta data (eg. name, fields, validators, etc.), so when you create a new collection a new related table will be created (see https://github.com/pocketbase/pocketbase
21.
▲
by
randomwebdev
4y ago
Hm, there is nothing preventing you to start multiple services from a single binary. I'm not sure that PocketBase would be suitable for your use case, but it is distributed also as a Go package (see https://pocketbase.io
22.
▲
by
randomwebdev
4y ago
By default PocketBase uses the local filesystem, but you could also configure a S3 compatible storage (AWS, DigitalOcean, Vultr, etc.) from "Settings > Files Storage > Use S3 storage". I've started working on the projec
23.
▲
by
randomwebdev
4y ago
It's implemented in the application, it's not a feature of SQLite, but its very simple and robust - when a record is created/updated/deleted I'm broadcasting the change to all subscribers that are allowed to receive
24.
▲
by
randomwebdev
4y ago
Go's default `net/http` package will serve HTTP2 when a https configuration is provided (also most web browsers don't support h2c, aka. HTTP2 without tls). The default limit of ~100 connections should be more than enough for
25.
▲
by
randomwebdev
4y ago
Other than some json functions, PocketBase doesn't use too much SQLite specific features, but I don't plan adding support for other databases at the moment. Please also note that PocketBase is designed to be deployed only on a sin
26.
▲
by
randomwebdev
4y ago
Yes, I'm aware of this limitation, but PocketBase uses HTTP2 when combined with the --https flag (this is by go's default net/http implementation) so it shouldn't be too much of a concern.
27.
▲
by
randomwebdev
4y ago
Thanks! It was initially created to be the backend for the next version of my other open source project - Presentator v3 ( https://github.com/presentator/presentator ). You could read more at https://github.co
28.
▲
by
randomwebdev
4y ago
PocketBase is a small open source project that I've been working for the last couple of months. You could think of PocketBase as a lightweight Firebase/Supabase alternative. In short, it is an open source Go backend (framework and
29.
▲
Show HN: PocketBase – Open Source realtime backend in one file
(github.com)
563 points
by
randomwebdev
4y ago
|
111 comments