# rwynn/monstache

a go daemon that syncs MongoDB to Elasticsearch in realtime. you know, for search.

Repository: https://github.com/rwynn/monstache
Canonical: https://ross.abutalabs.com/products/monstache
Homepage: https://rwynn.github.io/monstache-site/
Language: Go
License: MIT
License Family: permissive
Topics: elasticsearch, go, golang, mongodb, daemon, sync, oplog, realtime, river, synchronization, tail, connector, change-streams, etl, opensearch
Last push: 2025-08-22T23:37:48+00:00

## Health v2 (maintenance only)
Score: 48/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 38, release rhythm 32, longevity 100
- inputs: {"age_days": 3763, "days_push": 376, "days_rel": 376, "gap_med": 59, "n_releases_24m": 6}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1331, forks 195 (observed 2026-08-28T04:04:24.269729+00:00)

## What it is
Monstache is a Go daemon that continuously syncs MongoDB collections into Elasticsearch (or OpenSearch) in realtime using change streams. It enables full-text search, aggregations, and Kibana dashboards over MongoDB data.

## Use cases
- keep elasticsearch index in sync with mongodb in realtime
- add full-text search to a mongodb application
- build kibana dashboards over mongodb data
- run a one-time full sync of mongodb collections to elasticsearch
- transform or filter documents before indexing into elasticsearch
- track document changes over time for auditing

## When to choose
- you use MongoDB as your primary store and need Elasticsearch for search or analytics
- you want a single lightweight binary with change-stream-based realtime sync
- you need HA clustering, resume, or sharded-cluster support out of the box

## When to avoid
- you don't use MongoDB or Elasticsearch/OpenSearch
- you need a sync tool with a GUI or managed cloud service
- you need custom logic beyond what Go plugins or JavaScript transforms provide

## Facets
- artifact type: service
- maturity: active
- function: etl, search-engine, database, streaming
- domain: databases, developer-tools
- platform: windows, go, self-hosted
- tags: mongodb, elasticsearch, opensearch, change-streams, realtime-sync, connector, daemon, indexing, search, data-engineering, linux, macos, docker

## Member repositories
- rwynn/monstache (main) score 48

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:24.269729+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:45:20.090303+00:00, confidence not recorded.
  - readme: https://github.com/rwynn/monstache (fetched 2026-08-28T04:04:24.269729+00:00, sha 02681a0ee833)
  - homepage: https://rwynn.github.io/monstache-site/ (fetched 2026-08-29T12:04:23.400406+00:00, sha a2dccc09d548)
- Data as of 2026-08-30T08:39:29.467469+00:00.
