explaingit

kocolosk/couchxray

Analysis updated 2026-07-28 · repo last pushed 2021-01-13

Audience · ops devopsComplexity · 2/5DormantSetup · easy

TLDR

Couchxray is a command-line tool that scans CouchDB databases and generates compatibility reports, helping teams identify which databases are safe to move to different CouchDB versions before migrating.

Mindmap

mindmap
  root((repo))
    What it does
      Scans CouchDB databases
      Reports feature usage
      Flags version compatibility
    Inputs
      CouchDB service URL
      Login credentials
      Optional database name
    Outputs
      Detailed JSON report
      CSV spreadsheet for all databases
      Lists blocking features
    Use cases
      Planning CouchDB upgrades
      Cloudant to self-hosted migration
      Capacity planning
    Tech stack
      Node.js
      Command-line tool

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Check if a CouchDB database is compatible before upgrading to a newer version.

USE CASE 2

Scan all databases across a CouchDB service to prioritize which ones need migration attention first.

USE CASE 3

Gather disk usage, document counts, and shard details for capacity planning.

USE CASE 4

Identify legacy features like dbcopy or show/list functions that may block a migration.

What is it built with?

Node.js

How does it compare?

kocolosk/couchxray00kaku/gallery-slider-block04amanrajj/netwatch
Stars0
LanguageJavaScriptRust
Last pushed2021-01-132021-05-19
MaintenanceDormantDormant
Setup difficultyeasyeasymoderate
Complexity2/52/53/5
Audienceops devopsgeneralops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires Node.js to install the tool globally as a command-line utility.

The license for this repository is not specified in the available documentation.

In plain English

Couchxray is a command-line tool that scans a CouchDB database and tells you exactly which features it relies on. The main reason you'd reach for it is to figure out whether a database will work if you move it to a different version of CouchDB. Instead of guessing or discovering problems after a migration, you get a clear compatibility report upfront. You point the tool at your CouchDB service by providing a URL (with login credentials). If you include a specific database name in that URL, couchxray examines just that one database and gives you back a detailed JSON report. If you point it at the service without specifying a database, it scans every database and produces a CSV spreadsheet with one row per database. The report covers things like how many search indexes exist, whether the database is partitioned, which types of query indexes are in use, and whether older features like dbcopy or show/list functions appear. The output includes a "compatibility" section that flags whether the database can run on CouchDB 1.x, 2.x, 3.x, or 4.x. If a database isn't compatible with a given version, the report lists the specific features blocking it. For example, if a database uses Lucene-based search indexes, the tool will tell you that CouchDB 3 or higher is required, and that versions 1 and 2 won't work. This is most useful for teams planning a CouchDB upgrade or migration. Say you're moving a collection of databases from an older Cloudant-hosted setup to a self-hosted CouchDB 3 cluster, you'd run the tool across all your databases to see which ones are ready to move and which ones need attention first. It also reports practical details like document counts, disk usage, and shard recommendations, which help with capacity planning. The tool requires Node.js and installs as a global command, so it's lightweight to set up and run from any terminal.

Copy-paste prompts

Prompt 1
How do I use couchxray to scan a single CouchDB database and get a JSON compatibility report?
Prompt 2
I want to scan all databases on my CouchDB server and export the results to a CSV file. How do I run couchxray for this?
Prompt 3
How can I use couchxray to find out which of my databases use Lucene search indexes and whether they are compatible with CouchDB 3?

Frequently asked questions

What is couchxray?

Couchxray is a command-line tool that scans CouchDB databases and generates compatibility reports, helping teams identify which databases are safe to move to different CouchDB versions before migrating.

Is couchxray actively maintained?

Dormant — no commits in 2+ years (last push 2021-01-13).

What license does couchxray use?

The license for this repository is not specified in the available documentation.

How hard is couchxray to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is couchxray for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.