{"id":47442,"library":"east-couchdb","title":"east-couchdb","description":"An adapter for the East migration tool, providing CouchDB database support. Version 1.0.2 is the current stable release; the package is in maintenance mode with no recent updates. It allows running migrations against CouchDB by configuring connection via environment variables or a `.eastrc` file. Unlike generic database adapters, this is specifically tailored for East's migration workflow and supports CouchDB-specific features. The parsing for e mapping function name was changed in version 0.3.0 (field name changed from 'file' to 'name').","status":"maintenance","version":"1.0.2","language":"javascript","source_language":"en","source_url":"https://github.com/schipiga/east-couchdb","tags":["javascript"],"install":[{"cmd":"npm install east-couchdb","lang":"bash","label":"npm"},{"cmd":"yarn add east-couchdb","lang":"bash","label":"yarn"},{"cmd":"pnpm add east-couchdb","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core migration framework required; this adapter extends east's functionality.","package":"east","optional":false},{"reason":"CouchDB client library used for database operations.","package":"nano","optional":false}],"imports":[{"note":"Package uses CommonJS; no default export available.","wrong":"const eastCouchdb = require('east-couchdb').default;","symbol":"require('east-couchdb')","correct":"const eastCouchdb = require('east-couchdb');"},{"note":"First argument must be the adapter name string.","wrong":"east.registerAdapter(eastCouchdb);","symbol":"east.registerAdapter","correct":"east.registerAdapter('couchdb', eastCouchdb);"},{"note":"Configuration must be nested under \"couchdb\" key.","wrong":"// Using \"couchdb\" key with array instead of object","symbol":"Configuration via .eastrc","correct":"// In .eastrc: { \"couchdb\": { \"url\": \"http://localhost:5984\" } }"}],"quickstart":{"code":"// Install east and east-couchdb\n// npm install east east-couchdb\n\n// .eastrc\n{\n  \"couchdb\": {\n    \"url\": \"http://localhost:5984\"\n  }\n}\n\n// Create a migration\n// east create add-users\n\n// In migrations/20230101000000-add-users.js\nmodule.exports = {\n  up: async (db) => {\n    await db.insert({ _id: 'user:1', name: 'Alice' });\n  },\n  down: async (db) => {\n    await db.destroy('user:1');\n  }\n};\n\n// Run migration\n// east migrate","lang":"javascript","description":"Shows how to configure east-couchdb, create a migration, and run it against a CouchDB instance."},"warnings":[{"fix":"Update any code that reads the 'file' property to use 'name' instead.","message":"In version 0.3.0, the 'file' field in migration result was renamed to 'name'. Existing code reading 'file' will break.","severity":"breaking","affected_versions":">=0.3.0"},{"fix":"Consider alternatives like migrate-couchdb or custom migration scripts.","message":"This package is in maintenance mode with no recent updates. Consider using an alternative if you need active development.","severity":"deprecated","affected_versions":"all"},{"fix":"Ensure consistent configuration; avoid mixing if unintended.","message":"If both environment variables and .eastrc configuration are provided, environment variables take precedence.","severity":"gotcha","affected_versions":"all"},{"fix":"Run: npm install nano","message":"The adapter requires 'nano' to be installed as a peer dependency; it is not automatically installed.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.3.0':78 '1.0.2':16 'adapt':5,51 'allow':33 'chang':75,81 'configur':39 'connect':40 'couchdb':3,12,37,64 'couchdb-specif':63 'current':19 'databas':13,50 'e':70 'east':2,8,57 'east-couchdb':1 'eastrc':46 'environ':42 'featur':66 'field':79 'file':47,83 'function':72 'generic':49 'javascript':86 'mainten':26 'map':71 'migrat':9,35,59 'mode':27 'name':73,80,85 'packag':23 'pars':68 'provid':11 'recent':30 'releas':21 'run':34 'specif':54,65 'stabl':20 'support':14,62 'tailor':55 'tool':10 'unlik':48 'updat':31 'variabl':43 'version':15,77 'via':41 'workflow':60","created_at":"2026-06-07T16:51:32.746551+00:00","updated_at":"2026-06-07T16:51:32.746551+00:00","problems":[{"fix":"Install nano: npm install nano","cause":"Missing required peer dependency nano.","error":"Error: Cannot find module 'nano'"},{"fix":"Ensure east is required and registerAdapter is called on the east object: const east = require('east'); east.registerAdapter('couchdb', ...);","cause":"Trying to register adapter before east is initialized or using wrong import.","error":"TypeError: east.registerAdapter is not a function"},{"fix":"Ensure couchdb configuration is an object, e.g., { \"couchdb\": { \"url\": \"...\" } }","cause":".eastrc has invalid format for couchdb config.","error":"Configuration property 'couchdb' should be an object"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/schipiga/east-couchdb#readme","github":"https://github.com/schipiga/east-couchdb","docs":null,"changelog":null,"pypi":null,"npm":"east-couchdb","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}