{"id":13709830,"url":"https://github.com/graphprotocol/firehose-cosmos","last_synced_at":"2025-04-08T21:31:36.967Z","repository":{"id":37478836,"uuid":"462898147","full_name":"graphprotocol/firehose-cosmos","owner":"graphprotocol","description":"Cosmos Firehose integration","archived":false,"fork":false,"pushed_at":"2023-12-08T16:37:12.000Z","size":312,"stargazers_count":11,"open_issues_count":2,"forks_count":17,"subscribers_count":22,"default_branch":"main","last_synced_at":"2025-03-23T18:51:47.008Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/graphprotocol.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-23T20:39:30.000Z","updated_at":"2023-10-24T03:03:48.000Z","dependencies_parsed_at":"2024-06-19T01:55:40.732Z","dependency_job_id":"8ba2be51-f5d6-44fd-89b4-3e58f23d11a5","html_url":"https://github.com/graphprotocol/firehose-cosmos","commit_stats":null,"previous_names":["figment-networks/firehose-tendermint","figment-networks/firehose-cosmos"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/graphprotocol%2Ffirehose-cosmos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/graphprotocol%2Ffirehose-cosmos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/graphprotocol%2Ffirehose-cosmos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/graphprotocol%2Ffirehose-cosmos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/graphprotocol","download_url":"https://codeload.github.com/graphprotocol/firehose-cosmos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247931452,"owners_count":21020238,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T23:00:46.797Z","updated_at":"2025-04-08T21:31:32.157Z","avatar_url":"https://github.com/graphprotocol.png","language":"Go","funding_links":[],"categories":["Blockchains"],"sub_categories":["Firehose"],"readme":"# firehose-cosmos\n\nFirehose integration for Cosmos chains\n\n## Getting Started\n\nTo get started, first clone the repository and install all dependencies:\n\n```bash\ngit clone https://github.com/graphprotocol/firehose-cosmos.git\ngo mod download\n```\n\nOnce done, let's build the development binary:\n\n```bash\nmake build\n```\n\nYou should be able to use the `./build/firecosmos` binary moving forward.\n\nTo install the binary globally, run:\n\n```bash\nmake install\n```\n\nAlternatively, use a prebuilt binary from [Releases Page](https://github.com/graphprotocol/firehose-cosmos/releases)\n\n### Docker\n\nYou can use our official Docker images: https://hub.docker.com/r/graphprotocol/firehose-cosmos/tags\n\n```\ndocker pull graphprotocol/firehose-cosmos:0.4.0\n```\n\nExecute with:\n\n```\ndocker run --rm -it graphprotocol/firehose-cosmos:0.4.0 /app/firehose help\n```\n\n## Usage\n\nTo view usage and flags, run: `./build/firecosmos help`.\n\n```\nUsage:\n  firecosmos [command]\n\nAvailable Commands:\n  completion  Generate the autocompletion script for the specified shell\n  help        Help about any command\n  init        Initialize local configuration\n  reset       Reset local data directory\n  start       Starts all services at once\n  tools       Developer tools\n\nFlags:\n      --common-auth-plugin string            Auth plugin URI, see streamingfast/dauth repository (default \"null://\")\n      --common-merged-blocks-store-url string       Store URL (with prefix) where to read/write (default \"file://{fh-data-dir}/storage/merged-blocks\")\n      --common-live-blocks-addr string       GRPC endpoint to get real-time blocks (default \"0.0.0.0:9010\")\n      --common-first-streamable-block uint   First streamable block number\n      --common-metering-plugin string        Metering plugin URI, see streamingfast/dmetering repository (default \"null://\")\n      --common-oneblock-store-url string     Store URL (with prefix) to read/write one-block files (default \"file://{fh-data-dir}/storage/one-blocks\")\n      --common-shutdown-delay duration       Add a delay between receiving SIGTERM signal and shutting down apps. Apps will respond negatively to /healthz during this period (default 5ns)\n      --common-startup-delay duration        Delay before launching firehose process\n  -c, --config string                        Configuration file for the firehose (default \"firehose.yml\")\n  -d, --data-dir string                      Path to data storage for all components of firehose (default \"./fh-data\")\n  -h, --help                                 help for firecosmos\n      --log-format string                    Logging format (default \"text\")\n      --metrics-listen-addr string           If non-empty, the process will listen on this address to server Prometheus metrics (default \"0.0.0.0:9102\")\n      --pprof-listen-addr string             If non-empty, the process will listen on this address for pprof analysis (see https://golang.org/pkg/net/http/pprof/)\n  -v, --verbose int                          Enables verbose output (-vvvv for max verbosity) (default 3)\n\nUse \"firecosmos [command] --help\" for more information about a command.\n```\n\n## Configuration\n\nIf you wish to use a configuration file instead of setting all CLI flags, you may create a new `firehose.yml`\nfile in your current working directory.\n\nExample:\n\n```yml\nstart:\n  args:\n    - reader\n    - merger\n    - relayer\n    - firehose\n  flags:\n    # Common flags\n    common-first-streamable-block: 1\n\n    # Reader specific flags\n    reader-mode: node\n    reader-node-path: path/to/node/bin\n    reader-node-args: start --x-crisis-skip-assert-invariants\n    reader-node-env: \"KEY=VALUE,KEY=VALUE\"\n```\n\n### Logs input mode\n\nIt's possible to run the firehose reader from the static logs, mostly for development/testing purposes.\n\nExample config:\n\n```yml\nstart:\n  args:\n    - reader\n    # ... other services\n  flags:\n    # ... other config options\n\n    # reader specific flags\n    reader-mode: logs\n    reader-logs-dir: /path/to/logs/dir\n\n    # Configure the pattern if not using .log extension\n    # reader-logs-pattern: *.log\n```\n\n## Supported networks\n\nWe provide scripts for running firehose for these networks:\n\n- [Coreum1](devel/coreum1/)\n- [Cosmoshub4](devel/cosmoshub4/)\n- [Osmosis1](devel/osmosis1/)\n\n### Service Ports\n\nBy default, `firecosmos` will start all available services, each providing a GRPC interface.\n\n- `9000` - Reader\n- `9010` - Relayer\n- `9020` - Merger\n- `9030` - Firehose\n\n## License\n\nApache License 2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgraphprotocol%2Ffirehose-cosmos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgraphprotocol%2Ffirehose-cosmos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgraphprotocol%2Ffirehose-cosmos/lists"}