SQLite is cool and all, but using ever with the caveat most cases really is indicative of that it is not ever. Additionally, I would contest not even most cases. The post is correct in that SQLite often is fine though.
> SQLite is cool and all, but using ever with the caveat most cases really is indicative of that it is not ever.
I think the "ever" is about "will I ever need to upgrade to a server-based database in this particular case". I.e., in cases A and B, you might do OK for a year or two with SQLite, but if your project grows, eventually you'll have to upgrade to Postgres; in these cases, SQLite is not the only database you'll ever need. But in cases C, D, E, and F, you'll never have to upgrade; in these cases, SQLite is the only database you'll ever need. The cases where SQLite is the only database you'll ever need outnumber the cases where SQLite is not the only database you'll ever need; thus, "SQLite is the only database you'll ever need in most cases."
If the data changes, it's nearly unconditionally a better idea to use SQLite over those things. CSV and JSON are serialization formats for data exchange between systems, not something suitable as application storage.
SQLite is also much more convenient for anyone who later wants to explore your application's data than JSON structures.