neighbourhoodie-nnh-logo

CouchDB Myths #1: Nobody Uses It Anymore posted Wednesday, July 9, 2025 by The Neighbourhoodie Team couchdb,

“CouchDB’s old and nobody uses it anymore.” Maybe you held this impression yourself, or maybe you came across it through a colleague or over on Stack Overflow. How true is it, or does this belief reveal more about how databases are promoted these days? One thing is for sure — CouchDB users aren’t going anywhere.

Read the article

Why Choose CouchDB in 2025: Annual Apache CouchDB User Survey Results posted Wednesday, June 18, 2025 by CouchDB Team CouchDBNews

It’s been a minute, but we’re back at it! We’re very happy to have resumed this initiative and report on the Annual Apache CouchDB User Survey. We’re as eager as you to learn what everyone is thinking, so without further ado, let’s go!

“I've had 0 production issues in 15 years.”

Read the article

Understanding Parallel Preads in CouchDB posted Wednesday, June 11, 2025 by Jan Lehnardt CouchDBinternalsrelease

CouchDB 3.5.0 has been released and it comes with an exciting new feature: Parallel Preads. But what does that mean? To understand them, we have to dive deep into the core of CouchDB and learn how it works before we find out how it is working even better now.

Read the article

We’re Going to Local-First Conf — Let’s Connect posted Wednesday, May 7, 2025 by CouchDB Team CouchDBoffline-firstannouncementnews

CouchDB and PouchDB sync like magic for offline capable software

Want to see PouchDB and CouchDB do Local-First? The second edition of the Local-First Conference is taking place in Berlin from May 26-28th and kicks off with a Community Day.

Find out what the CouchDB and PouchDB communities will be up to, how you can find us and what goodies await.

Read the article

How to Sync Anything: Building a Sync Engine from Scratch — Part 3 posted Wednesday, April 23, 2025 by Jan Lehnardt CouchDBreplicationsyncdistsysdata

Note: This is part of our series demystifying synchronisation. See our other instalments: How to Sync Anything: Introduction and How to Sync Anything: Building a Sync Engine from Scratch — Part 1 and How to Sync Anything: Building a Sync Engine from Scratch — Part 2

Last time we learned how to efficiently decide what needs syncing. This time we will learn how to version our data.

Read the article

How to Sync Anything: Building a Sync Engine from Scratch — Part 2 posted Wednesday, April 16, 2025 by Jan Lehnardt CouchDBreplicationsyncdistsysdata

Note: This is part of our series demystifying synchronisation. See our other instalments: How to Sync Anything: Introduction, How to Sync Anything: Building a Sync Engine from Scratch — Part 1 and How to Sync Anything: Building a Sync Engine from Scratch — Part 3

In this part, we will learn how to efficiently find out what data needs to be synchronised.

Read the article

How to Sync Anything: Building a Sync Engine from Scratch — Part 1 posted Wednesday, April 9, 2025 by Jan Lehnardt CouchDBreplicationsyncdistsysdata

There’s an old saying I paraphrased in this by now ancient tweet[sic]:

“Friends don’t let friends build their own {CRYPTO, SYNC, DATABASE}.” — @janl

“Friends don’t let friends build their own {CRYPTO, SYNC, DATABASE}.” — @janl on September 24th, 2014

What do I mean by that?

Read the article

How to Sync Anything posted Sunday, April 6, 2025 by James Coglan CouchDBreplicationsyncdistsysdata

In this article I’ll discuss a common naive solution to replication, why it doesn’t work, and what the building blocks of a good solution look like. Having established this theoretical framework, my next article will look at how CouchDB provides many of those building blocks such that replicating from it into any other system is relatively painless.

Read the article

Offline-First with CouchDB and PouchDB in 2025 posted Wednesday, March 26, 2025 by The Neighbourhoodie Team tipCouchDBsyncoffline first

A few weeks ago, we gave you tooling to quickly and easily host your own CouchDB: CouchDB Minihosting! This week, we’re providing a demo application you can deploy on that installation, so you can try that part out with zero hassle. On top of that, consider this an up-to-date, best practises demo app for Offline-First with CouchDB and PouchDB. We’re using Svelte 5 with Vite as build tooling and Pico.css for styles.

Read the article

From Dig Sites to Data Sync: iDAI.field and Offline-First Systems for Archaeology posted Thursday, March 20, 2025 by The Neighbourhoodie Team interviewCouchDBsynccase study

Reliable data collection during archaeological field work in remote locations comes with a multitude of challenges. Even in the most isolated dig sites, capturing, storing and synching need to happen seamlessly and with zero data loss. Offline-First can solve half the problem. What about the half that needs to bring together teams and findings from across the globe?

Read the article

Case Study: 10x CouchDB Performance Gains for a AAA Game Launch posted Tuesday, March 4, 2025 by The Neighbourhoodie Team CouchDBbenchmarkperformancecase study

All software benchmarks and claims of performance are carefully crafted lies and this write-up is no different. Instead of giving you a quick “do steps one, two, three for a magic speedup”, we aim to explain how we arrived at the changes we made and how we rigorously tested those changes to make sure we understand their impact.

All this to give you the tools to follow the process yourself, at the end of which, you might come to very different conclusions that are valid for your particular situation which is very likely different from what our customer was dealing with.

If you need help with your CouchDB, Erlang, or just regular Unix networking performance, book a call today.

Hold on to your hats and get ready for a journey of performance discovery! We will learn about CouchDB and Erlang internals, performance tooling and how to find the next bottleneck in your CouchDB cluster setup.

Read the article

How CouchDB Prevents Data Corruption: fsync posted Wednesday, February 26, 2025 by The Neighbourhoodie Team tipproductCouchDBdata

Programming can be exciting when the underlying fundamentals you’ve been operating under suddenly come into question. Especially when it comes to safely storing data. This is a story of how the CouchDB developers had a couple of hours of excitement making sure their fundamentals were solid (and your data was safe).

Read the article

How CouchDB Prevents Data Corruption: Checksums posted Wednesday, January 22, 2025 by The Neighbourhoodie Team tipproductCouchDBdata

CouchDB is your data’s safe place. It does everything in its power not to accidentally lose any of your data. However, sometimes circumstances are not in CouchDB’s power.

One of those circumstances is disk corruption.

Read the article

Resource Locking with CouchDB and Svelte posted Wednesday, January 15, 2025 by Alex tipCouchDBdata

This part four of our blog post series on building a real-time, multi-user Kanban board with CouchDB and Svelte. As mentioned in the previous post, UI or resource locking is one of the most promising mechanisms for avoiding conflicts in the first place: if a card is locked the moment Alice starts editing it, then Bob won’t be able to do anything with it, and therefore won’t be able to introduce a conflict. Sounds like we could have just done this first and not bothered with all the conflict handling in the previous posts! But again, it’s not quite as simple as it seems.

Read the article

Manual Conflict Resolution with CouchDB and Svelte posted Wednesday, December 18, 2024 by Alex tipCouchDBdata

In our previous post, we added automatic conflict resolution to our multi-user, real-time Kanban board. This would silently resolve any conflicts where two users simultaneously modified two different properties of the same Kanban board card, eg. Alice changes the card’s title, and Bob changes the card’s location. While these changes constitute a conflict on a single database record, they don’t actually collide within that record, and thus the conflict can be resolved by a machine.

Regrettably, this doesn’t solve all possible conflicts: two users can still simultaneously modify the same property of the same card, eg. both Alice and Bob edit a card’s title.

Read the article

Automatic Conflict Resolution with CouchDB and Svelte posted Wednesday, December 11, 2024 by Alex tipCouchDBdata

This is the second part of a blog post series on building a real-time, multi-user Kanban board with CouchDB and Svelte. We’ve previously made design decisions that should help reduce the opportunities for conflicts, but since we can’t rule them out completely, we do need to provide ways to resolve them. In this post, we’ll be covering the possibilities of automatic conflict resolution, which means:

  • A machine can resolve the conflict without any user input
  • The resolution happens in the background without anyone even noticing
Read the article

A real-time multi-user Kanban board with CouchDB and Svelte posted Thursday, December 5, 2024 by Alex tipCouchDBdata

A Kanban Board with a number of cards, apparently used to manage various types of rodents. Two users are online, and are working on different cards.

In this first post of a four-part series, we’ll start building a real-time Kanban board, and discuss the challenges and trade-offs.

Read the article

CouchDB 3.4.1 New Feature QuickJS posted Monday, September 23, 2024 by The Neighbourhoodie CouchDB Team CouchDBCouchDB

QuickJS is a JavaScript engine that can do the same work as CouchDB’s existing JavaScript engine SpiderMonkey, but with different trade-offs that have advantages for CouchDB users.

Read the article

CouchDB 3.4.1 New Feature Nouveau posted Monday, September 23, 2024 by The Neighbourhoodie CouchDB Team CouchDBCouchDB

Nouveau is a from-scratch reimplementation of Lucene fulltext search for CouchDB. While in beta, this aims to replace CouchDB’s existing fulltext search option Clouseau / CouchDB Search in the near future.

Read the article

How CouchDB Prevents Data Corruption: Append-Only Database Files posted Wednesday, September 18, 2024 by The Neighbourhoodie Team tipproductCouchDBdata

CouchDB takes keeping your safe very seriously. It does everything in its power not to accidentally lose any of your data. Let’s look at one of the things that keep your data safe: append-only database files.

Read the article

Data Format Compatibility posted Friday, August 2, 2024 by The Neighbourhoodie Team tipproductCouchDBdata

When storing data in CouchDB, you send JSON in one form or another. When you retrieve data from CouchDB it is also in the JSON format.

Read the article

Everything You Need to Know About CouchDB Database Names posted Tuesday, October 13, 2020 by The Neighbourhoodie CouchDB Team tipCouchDBdata

Naming a database does not sound like an exciting activity. But it can be, if you know all the considerations that go into naming a database in CouchDB. Let’s start with the restrictions.

Read the article

An Offline-First Todo List with Svelte, PouchDB and CouchDB posted Friday, May 10, 2019 by alex tipCouchDBdata

Today, we’re combining Svelte, the lean and fast frontend compiler, with PouchDB and CouchDB, and building a lightweight, Offline-First todo list app. It’ll sync your todos between multiple devices for offline use and also keep your data in a central backup database.

Read the article
og-image-preview