/inx-chronicle

IOTA permanode implemented using the IOTA Node Extension (INX) interface.

Primary LanguageRustApache License 2.0Apache-2.0

inx-chronicle

ci Canary Coverage Status

Chronicle is the permanode (sometimes also called indexer or scanner) for the IOTA-based networks. It connects to a Hornet via the IOTA Node Extension (INX) interface. Through the INX interface, Chronicle listens to all blocks in the Tangle that are referenced by a milestone and stores them in a MongoDB database.

Documentation

The documentation for Chronicle can be found in our wiki, the supported APIs are documented here.

Development

This project uses conventional commits to automatically generate a CHANGELOG.md which signals breaking changes. The changelog can be created using the following command (requires the conventional-changelog-cli package on NPM):

conventional-changelog -p conventionalcommits -i CHANGELOG.md -s

Docker deployment configuration of credentials through environment variables

Docker compose will automatically load credentials for different services from a .env file that must either be located in the same directory as the docker-compose.yml file, or specified using the --env-file flag. You therefore must create such a file before you do a docker compose up. An example .env file could look like this:

MONGODB_USERNAME=root
MONGODB_PASSWORD=root
INFLUXDB_USERNAME=root
INFLUXDB_PASSWORD=password
JWT_PASSWORD=password
JWT_SALT=saltines