Have they fixed all the keyboard bugs introducted in iOS 26.0 yet? I’m not sure how much longer I can put up with issues like this - I might need to switch back to Android if they don't fix these soon.
Seriously, how hard is it to correctly measure the keyboard height and not render important UI elements, such as submit buttons, underneath it so you can’t click “Send”? It's getting close to unusable.
So many bugs in this version of iOS, ive never seen anything like it. The UI for so many websites is mildly broken or misaligned now, keyboard randomly has a noticeable lag, audio does not return to normal volume if a background app makes a noise for a moment, and many more. Really awful, I’ve never wanted to downgrade iOS back to the old version until now.
I am quite surprised that most languages do not have an ORM and migrations as powerful as Django. I get that it's Python's dynamic Meta programming that makes it such as clean API - but I am still surprised that there isn't much that comes close.
Have used pmtiles to self-host a “find your nearest store” map, which only needed to cover Australia. Created two sources: (1) a low-detail worldwide map to fill out the view (about 50 MB), and (2) a medium-to-high detail source for Australia only, up to zoom level 15 (about 900 MB). In this case, there’s no need for up-to-date maps, so we were able to upload these two files to S3 and forget about them. Works great!
It's very cool! If you want to get higher cache hit rates from a CDN or redis etc. and lower the amount of S3 reads, you can get set up a proxy to convert `/{z}/{x}/{y}.mvt` requests into the byte-range requests: https://docs.protomaps.com/deploy/
Brandon has some example code you can lift to dump it into a Cloudflare Worker or other platforms on that page.
Thank you.
I'm going to try this on a different project that we have. Our current deployment is designed to work directly through s3/api gateway which reduces the number of moving parts.
We update the tiles frequently, so the setup has been amazing for us.
I am still using an LG UltraFine 5k since launch. I experienced flickering in the first month and had the monitor replaced by supplier - and it's been amazing ever since! Also, this DPI is perfect for having both crisp text and correct sized elements on screen (in MacOS).
Yes — PMTiles is exactly that: a production-ready, single-file, static container for vector tiles built around HTTP range requests.
I’ve used it in production to self-host Australia-only maps on S3. We generated a single ~900 MB PMTiles file from OpenStreetMap (Australia only, up to Z14) and uploaded it to S3. Clients then fetch just the required byte ranges for each vector tile via HTTP range requests.
It’s fast, scales well, and bandwidth costs are negligible because clients only download the exact data they need.
Hadn't seen PMTiles before, but that matches the mental model exactly! I chose physical file sharding over Range Requests on a single db because it felt safer for 'dumb' static hosts like CF. - less risk of a single 22GB file getting stuck or cached weirdly. Maybe it would work
My only gripe is that the tile metadata is stored as JSON, which I get is for compatibility reasons with existing software, but for e.g. a simple C program to implement the full spec you need to ship a JSON parser on top of the PMTiles parser itself.
At that point you're just io bound, no? I can easily parse json at 100+GB/s on commodity hardware, but I'm gonna have a much harder time actually delivering that much data to parse.
Look into using duckdb with remote http/s3 parquet files. The parquet files are organized as columnar vectors, grouped into chunks of rows. Each row group stores metadata about the set it contains that can be used to prune out data that doesn’t need to be scanned by the query engine. https://duckdb.org/docs/stable/guides/performance/indexing
LanceDB has a similar mechanism for operating on remote vector embeddings/text search.
> Look into using duckdb with remote http/s3 parquet files. The parquet files are organized as columnar vectors, grouped into chunks of rows. Each row group stores metadata about the set it contains that can be used to prune out data that doesn’t need to be scanned by the query engine. https://duckdb.org/docs/stable/guides/performance/indexing
But, when using this on frontend, are portions of files fetched specifically with http range requests? I tried to search for it but couldn't find details
Yes, you should be able to see the byte range requests and 206 responses from an s3 compatible bucket or http server that supports those access patterns.
I love the simplicity! Does this store state in the browser?
Have you considered adding an export/import data option? I was actually expecting "Copy link" to have my months worth of event data encoded in the url after the # (so it would never be sent to the server, but means I could share the month with a friend). Just an idea.
Thanks! Yes, everything is stored locally in the browser — no backend at all.
And that’s a great idea.
I’ve been thinking about adding an export/import option, and encoding the data into the URL hash actually fits the “offline + privacy-first” vibe really well.
I’ll explore it — would be super useful for sharing or backup without requiring any server.
A small suggestion that immediately came to my mind, why not try making it a JSON serialized data and base64 encode it just like JWT. So that it can be shared and loaded effectively.
Switching DBs is very invasive. Switching your application base even more so. As long as you're happy happy with PocketBase and there's nothing you're critically missing, the answer will almost certainly be: no. Is there anything you're looking for?
I've been trying out Pocketbase on a side project idea. I'm super impressed!
Having worked for many years on Django projects, Pocketbase seems like a perfect fit for those small to medium sized projects for which you don't want to create and maintain a traditional backend for.
SQLite only. I haven't come across any GIS integration. I think you should choose Pocketbase when it "not having features" and being lightweight is the feature you need.
I haven't tried this... but Pocketbase is opinionated in how it's schema is structured - and it needs to be the tool managing your schema.
Therefore if it was me, I would use the Admin UI to create a new db with a similar data structure, and then use a third-party tool to select data and insert into the new database.
It's meant to build apps with. If you want to build a knowledge base, sure. But why would you build a Knowledge Base when you can use Confluence, Notion, https://www.getoutline.com/, https://clickup.com/, etc that already exist? There's free self-hosted ones too.
I’ve been using on a personal side project - but found that LLMs seem to be permanently confused over how to interact with pocketbase - to the point where I’ve even tried creating a Claude Skill to try and reduce the confusion.
Wondering if anyone else has had a similar experience?
> If you don't have the time to at least skim through the documentation and you plan to solely rely on some AI tool, then please do NOT use PocketBase!
It's a niche little product that's alpha-level quality and changes frequently, I don't know why you would expect LLMs to be good at it.
I tried to use LLMs to help me with server-side pb coding, but it was mostly a flop. LLMs don't have an up-to-date state of pb's API. 2 out of 3 times the LLM would give at least a hint how to go about something and the rest is me manually editing the code, reading the docs or looking at pb's source code. All in all, I consider it a nice "pair-programming" type of experience but one can't rely on LLMs to do the pb work for you.
This is what worked for me… clone the pb repo and stick reference to it in my agents.md. I put additional notes in my own addendum.md in the line cloned repo. ChatGPT-codex variants handle it nearly flawlessly and no issues with being out of date. I use the same pattern for all “niche” libraries
Not with Pocketbase - as I haven't found I've needed to look into the docs too much. But I have come across a whole bunch of areas LLM's seem to always answer incorrectly for. For example, ChatGPT has almost never corrected told me how to use the UI in Davinci Resolve.
Seriously, how hard is it to correctly measure the keyboard height and not render important UI elements, such as submit buttons, underneath it so you can’t click “Send”? It's getting close to unusable.
Update: No they haven't
reply