Indeed David, those examples are just a template, and a very small example.
Not a real small app of any kind, like for a example a TODO app or a small recipe app, something that actually would benefit from the stable data structures and has now the advantage of not needing the pre-upgrade and post-upgrade calls for data persistence.
In that case you for example, maybe, have a look to Internet Identity and the Bitcoin canisters repo. They both use the stable structures. Hope that helps.
There are also stable (in terms of using stable memory directly) BTrees in Motoko. Not sure though you well tested/maintained this library is @sardariuss
Also you might want to consider using the ic-wasi-polyfill and compiling to wasm32-wasi, if I’m not mistaken you get a file-system for free, either in memory or stable.
I wouldn’t consider implementing one from scratch.