esdbcat


Nameesdbcat JSON
Version 0.2.0 PyPI version JSON
download
home_pageNone
SummaryEventStore CLI tool for reading and following streams
upload_time2024-12-04 14:09:23
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseBSL-1.0
keywords cli events eventstore streaming
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # esdbcat

[![PyPI version](https://badge.fury.io/py/esdbcat.svg)](https://badge.fury.io/py/esdbcat)
[![License](https://img.shields.io/badge/License-BSL--1.0-blue.svg)](https://opensource.org/licenses/BSL-1.0)
[![Python Versions](https://img.shields.io/pypi/pyversions/esdbcat.svg)](https://pypi.org/project/esdbcat/)

A command-line tool for reading EventStore streams, inspired by kafkacat.

## AI Code Notice

This repository was near-entirely created by Claude 3.5 Sonnet. Good job Sonnet!

## Installation

```bash
pip install esdbcat
```

## Usage

Read all events from a stream:
```bash
esdbcat my-stream
```

The output will be JSON lines with event data and metadata (by default):
```json
{
  "data": {
    "message": "Hello World"
  },
  "metadata": {
    "id": "1234-5678-90ab-cdef",
    "type": "TestEvent",
    "stream": "my-stream"
  }
}
```

Follow a stream for new events:
```bash
esdbcat -f my-stream
```

Start reading from the end of the stream:
```bash
esdbcat -o end -f my-stream
```

Read only the last event:
```bash
esdbcat -o last my-stream
```

Exit after consuming 10 events:
```bash
esdbcat -c 10 my-stream
```

Filter events by type:
```bash
esdbcat -t UserCreated my-stream
```

Read the special $all stream:
```bash
esdbcat $all
```

Quiet mode (suppress informational messages):
```bash
esdbcat -q my-stream
```

Verbose mode for debugging:
```bash
esdbcat -v my-stream
```

Connect to a specific EventStore instance:
```bash
esdbcat --host eventstore.example.com:2113 my-stream
```

Or use a full connection URL:
```bash
esdbcat --url "esdb://eventstore.example.com:2113?tls=false" my-stream
```

Read events without metadata:
```bash
esdbcat --no-metadata my-stream
```

Connect with authentication:
```bash
esdbcat --url "esdb://admin:changeit@localhost:2113?tls=false" my-stream
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "esdbcat",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "cli, events, eventstore, streaming",
    "author": null,
    "author_email": "Mathis Beer <mathis_beer@funkwerk.com>",
    "download_url": "https://files.pythonhosted.org/packages/0d/d9/ec8338d9786c217e260244c4e5ce21bdbc4cfb15037f14396b3bf823b3ac/esdbcat-0.2.0.tar.gz",
    "platform": null,
    "description": "# esdbcat\n\n[![PyPI version](https://badge.fury.io/py/esdbcat.svg)](https://badge.fury.io/py/esdbcat)\n[![License](https://img.shields.io/badge/License-BSL--1.0-blue.svg)](https://opensource.org/licenses/BSL-1.0)\n[![Python Versions](https://img.shields.io/pypi/pyversions/esdbcat.svg)](https://pypi.org/project/esdbcat/)\n\nA command-line tool for reading EventStore streams, inspired by kafkacat.\n\n## AI Code Notice\n\nThis repository was near-entirely created by Claude 3.5 Sonnet. Good job Sonnet!\n\n## Installation\n\n```bash\npip install esdbcat\n```\n\n## Usage\n\nRead all events from a stream:\n```bash\nesdbcat my-stream\n```\n\nThe output will be JSON lines with event data and metadata (by default):\n```json\n{\n  \"data\": {\n    \"message\": \"Hello World\"\n  },\n  \"metadata\": {\n    \"id\": \"1234-5678-90ab-cdef\",\n    \"type\": \"TestEvent\",\n    \"stream\": \"my-stream\"\n  }\n}\n```\n\nFollow a stream for new events:\n```bash\nesdbcat -f my-stream\n```\n\nStart reading from the end of the stream:\n```bash\nesdbcat -o end -f my-stream\n```\n\nRead only the last event:\n```bash\nesdbcat -o last my-stream\n```\n\nExit after consuming 10 events:\n```bash\nesdbcat -c 10 my-stream\n```\n\nFilter events by type:\n```bash\nesdbcat -t UserCreated my-stream\n```\n\nRead the special $all stream:\n```bash\nesdbcat $all\n```\n\nQuiet mode (suppress informational messages):\n```bash\nesdbcat -q my-stream\n```\n\nVerbose mode for debugging:\n```bash\nesdbcat -v my-stream\n```\n\nConnect to a specific EventStore instance:\n```bash\nesdbcat --host eventstore.example.com:2113 my-stream\n```\n\nOr use a full connection URL:\n```bash\nesdbcat --url \"esdb://eventstore.example.com:2113?tls=false\" my-stream\n```\n\nRead events without metadata:\n```bash\nesdbcat --no-metadata my-stream\n```\n\nConnect with authentication:\n```bash\nesdbcat --url \"esdb://admin:changeit@localhost:2113?tls=false\" my-stream\n```\n",
    "bugtrack_url": null,
    "license": "BSL-1.0",
    "summary": "EventStore CLI tool for reading and following streams",
    "version": "0.2.0",
    "project_urls": {
        "Documentation": "https://github.com/funkwerk-mobility/esdbcat#readme",
        "Homepage": "https://github.com/funkwerk-mobility/esdbcat",
        "Repository": "https://github.com/funkwerk-mobility/esdbcat.git"
    },
    "split_keywords": [
        "cli",
        " events",
        " eventstore",
        " streaming"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c58c4a03e5cf4de94a85f4e5f95bd9193fd056748675444f608596c9f4216706",
                "md5": "8381e453dfddab2a2af50041e8915444",
                "sha256": "e4ab7967ae01aa1f0f9bfccfde645824717d3ff0c05c9c5f75ce6547dad6e6b0"
            },
            "downloads": -1,
            "filename": "esdbcat-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8381e453dfddab2a2af50041e8915444",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 5484,
            "upload_time": "2024-12-04T14:09:21",
            "upload_time_iso_8601": "2024-12-04T14:09:21.970697Z",
            "url": "https://files.pythonhosted.org/packages/c5/8c/4a03e5cf4de94a85f4e5f95bd9193fd056748675444f608596c9f4216706/esdbcat-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0dd9ec8338d9786c217e260244c4e5ce21bdbc4cfb15037f14396b3bf823b3ac",
                "md5": "fa3a18f03f626ac9eaf2ec9f72e38465",
                "sha256": "22cf783e9b5716aa46c395df1328810f22dc78867976e6e6ddb6850ab25132e7"
            },
            "downloads": -1,
            "filename": "esdbcat-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "fa3a18f03f626ac9eaf2ec9f72e38465",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 17640,
            "upload_time": "2024-12-04T14:09:23",
            "upload_time_iso_8601": "2024-12-04T14:09:23.674629Z",
            "url": "https://files.pythonhosted.org/packages/0d/d9/ec8338d9786c217e260244c4e5ce21bdbc4cfb15037f14396b3bf823b3ac/esdbcat-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-04 14:09:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "funkwerk-mobility",
    "github_project": "esdbcat#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "esdbcat"
}
        
Elapsed time: 1.13156s