1. 16
  1. 4

    Yup, “CouchApps” were one of the selling points back in the day when I was using CouchDB. A very elegant idea.

    CouchDB doesn’t have a granular permission system, and is sort of an all-or-nothing thing - either your database is open for everyone to read and write, or just one group/user

    I thought you could add multiple users to a DB? It’s been a while. The bigger limitation IMO is that giving someone access to a DB gives them access to all docs in it. That was one of the reasons we [Couchbase] moved away from it — the replacement in our ecosystem, the Sync Gateway, uses a JS function to validate docs and assign ACLs to them as they’re written, providing fine grained read and write access.

    1. 1

      Good to hear this point of view. I was always impressed by CouchDB. Does this mean Couchbase is worth more of a look as a spiritual successor?

    2. 3

      CouchDB is the ultimate basic CRUD app back-end. It’s so damn easy to write really basic API backends as Couch apps. The initial dev overhead is so low that it’s just a no brainer even if you know your workloads will get more complex and you’ll need to migrate off eventually.

      1. 1

        Have you considered exploring Marmot instead of LiteStream or LiteFS. You can actually build a CouchDB like multi-master service on top of SQLite (I’ve done demos of PocketBase and KeyStone JS).

        1. 2

          Interesting - I hadn’t heard of this! I’ll definetly add it to my ever growing list.

        2. 1

          I’m glad to hear this has gotten good! I tried it ages ago and had a pretty bad time*, but it clearly had potential.

          *The only thing I specifically remember was that if I had an error in the JS for a view, it said “Error on line 1” and printed a (very wide) whitespace-escaped version of the whole script.