Skip to main content

Produce comprehensive financial reports for your on-chain org

Project description

DAO Treasury is a comprehensive financial reporting and treasury management solution designed specifically for decentralized organizations. Built as an extension to eth-portfolio's Portfolio Exporter, DAO Treasury automates the collection and visualization of financial data, enabling organizations to monitor and report on treasury activities with clarity and transparency.

Key Features

  • Financial Reporting for DAOs: Extends core portfolio functionalities to generate detailed reports tailored for on-chain organizations.
  • Dashboard Provisioning: Utilizes Grafana dashboards—defined in JSON files within the .grafana/provisioning directories—to offer real-time, dynamic visualizations of treasury data.
  • Automated Data Export: Features a treasury export tool that, once configured (with a supported brownie network and Docker), continuously captures financial snapshots at set intervals.
  • Ease of Contribution: Non-technical users can easily update or create dashboard visuals using Grafana’s intuitive UI. The Contributing Guidelines document provides a step-by-step guide to defining new visuals and dashboards and integrating those changes into the repository, ensuring that anyone can contribute to the visual reporting aspect of the project.

Requirements

  • Python 3.10 or higher.
  • At least 16GB of RAM.
  • All dependencies installed as specified in the project’s pyproject.toml file.

Prerequisites

  • First, you will need to bring your own archive node. This can be one you run yourself, or one from one of the common providers (Tenderly, Alchemy, QuickNode, etc.). Your archive node must have tracing enabled (free-tier Alchemy nodes do not support this option).
  • You must configure a brownie network to use your RPC.
  • You will need an auth token for Etherscan's API. Follow their guide to get your key, and set env var ETHERSCAN_TOKEN with its value.
  • You'll also need Docker installed on your system. If on MacOS, you will need to leave Docker Desktop open while Yearn Treasury is running.

Installation

pip install dao-treasury

Usage

Run the treasury export tool:

# For pip installations:
dao-treasury run --wallet 0x123 --network mainnet --interval 12h

For local development (from source installation), use:

poetry run dao-treasury run --wallet 0x123 --network mainnet --interval 12h

CLI Options:

  • --network: The id of the brownie network the exporter will connect to (default: mainnet)
  • --interval: The time interval between each data snapshot (default: 12h)
  • --concurrency: The max number of historical blocks to export concurrently. (default: 30)
  • --daemon: Run the export process in the background (default: False) (NOTE: currently unsupported)
  • --grafana-port: Set the port for the Grafana dashboard where you can view data (default: 3004)
  • --renderer-port: Set the port for the report rendering service (default: 8091)
  • --victoria-port: Set the port for the Victoria metrics reporting endpoint (default: 8430)
  • --start-renderer: If set, both the Grafana and renderer containers will be started for dashboard image export. By default, only the grafana container is started.

After running the command, the export script will run continuously until you close your terminal. To view the dashboards, just open your browser and navigate to http://localhost:3004!

Docker

When you run DAO Treasury, eth-portfolio will build and start 4 required Docker containers on your system. Additionally, DAO Treasury will build and start 2 more required containers:

  • grafana

    • Provides a web-based dashboard for visualizing your treasury data.
    • Pre-configured with dashboards and plugins for real-time monitoring.
    • Uses persistent storage to retain dashboard settings and data.
    • Accessible locally (default port 3004, configurable via --grafana-port).
    • Supports anonymous access for convenience.
    • Integrates with the renderer container for dashboard image export.
    • Loads dashboards and data sources automatically via provisioning files.
  • renderer

    • Runs the official Grafana image renderer service.
    • Enables Grafana to export dashboards as images for reporting or sharing.
    • Operates on port 8091 by default (configurable via --renderer-port).
    • Tightly integrated with the Grafana container for seamless image rendering.
    • Note: The renderer container is only started if you pass the --start-renderer CLI flag.

How it works:

  1. DAO Treasury collects and exports treasury data.
  2. Grafana displays this data in pre-built dashboards for analysis and reporting.
  3. The renderer container allows dashboards to be exported as images directly from Grafana (if enabled).

Additional Information:

  • All containers are orchestrated via Docker Compose and started automatically as needed.
  • Grafana provisioning ensures dashboards and data sources are set up out-of-the-box.
  • All dashboard data and settings are persisted for durability.
  • Dashboard images can be generated for reporting via the renderer (if enabled).

Screenshots

DAO Transactions Dashboard

image

Contributing

We welcome contributions to DAO Treasury! For detailed guidelines on how to contribute, please see the Contributing Guidelines.

Enjoy!

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dao_treasury-0.0.62.tar.gz (70.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dao_treasury-0.0.62-cp312-cp312-win_amd64.whl (338.2 kB view details)

Uploaded CPython 3.12Windows x86-64

dao_treasury-0.0.62-cp312-cp312-win32.whl (303.1 kB view details)

Uploaded CPython 3.12Windows x86

dao_treasury-0.0.62-cp312-cp312-musllinux_1_2_x86_64.whl (656.5 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dao_treasury-0.0.62-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (660.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

dao_treasury-0.0.62-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (689.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

dao_treasury-0.0.62-cp312-cp312-macosx_11_0_arm64.whl (413.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dao_treasury-0.0.62-cp311-cp311-win_amd64.whl (334.2 kB view details)

Uploaded CPython 3.11Windows x86-64

dao_treasury-0.0.62-cp311-cp311-win32.whl (299.5 kB view details)

Uploaded CPython 3.11Windows x86

dao_treasury-0.0.62-cp311-cp311-musllinux_1_2_x86_64.whl (622.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

dao_treasury-0.0.62-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (627.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

dao_treasury-0.0.62-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (636.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

dao_treasury-0.0.62-cp311-cp311-macosx_11_0_arm64.whl (409.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dao_treasury-0.0.62-cp310-cp310-win_amd64.whl (335.0 kB view details)

Uploaded CPython 3.10Windows x86-64

dao_treasury-0.0.62-cp310-cp310-win32.whl (300.3 kB view details)

Uploaded CPython 3.10Windows x86

dao_treasury-0.0.62-cp310-cp310-musllinux_1_2_x86_64.whl (633.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dao_treasury-0.0.62-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (638.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

dao_treasury-0.0.62-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (648.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ i686manylinux: glibc 2.5+ i686

dao_treasury-0.0.62-cp310-cp310-macosx_11_0_arm64.whl (413.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file dao_treasury-0.0.62.tar.gz.

File metadata

  • Download URL: dao_treasury-0.0.62.tar.gz
  • Upload date:
  • Size: 70.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dao_treasury-0.0.62.tar.gz
Algorithm Hash digest
SHA256 17947f23bee5980d1901a668a59a308bbb883e10a633fdc9e4382d8226d17dcd
MD5 d533141e9cc6e9e7f98e0fc9d16c1b25
BLAKE2b-256 d2fadc14bb2da4c4d3403b590c83b90315ebaad8e70d82c29944ccdba9456d7b

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4c14556141a28aa34e3edf38548e41562017284a72fa52ae04eb5f52a7c2dc93
MD5 ff75a09fe4fb7412d89935e2f105b20a
BLAKE2b-256 5b83f96a1a00629f1c469e9358c53e6d61fff332b855a0b667fc7ca98a699ff0

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-win32.whl.

File metadata

  • Download URL: dao_treasury-0.0.62-cp312-cp312-win32.whl
  • Upload date:
  • Size: 303.1 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 af52f4b89b8a7f32e3293e1a96eda95ece76175026d803b56b7e81897c0ac9b7
MD5 65737a936130e1a6e6ee2acae20caa74
BLAKE2b-256 719a42676b0db666a09a1fdfd1fb69e36f038f1065da237729380b28c534f71c

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2bed12d0ae653c4eeb757498e90cbb21a4f63780f136535ff3544e0ac3f74870
MD5 c7adf4d2d5bdeed3bed050581869de38
BLAKE2b-256 3c2bd2f5fe778676897823d4500090ecdad867f629eb53e5004c90484a268eca

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8539a344553a8e3433c95e1db05c2e844c17b601596b6af827a2cd5b49116c0f
MD5 acca8cbefbb52a2715769bd6970b2940
BLAKE2b-256 6897d7b71b90255e7f237cccc88f1787e21ad72edeb176a36988fececdfee574

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 e87dc89fd39f931431d47b4c636f5fb608b300d287b4b3e928487c60efd83307
MD5 56f71459001b03086313015ea442a312
BLAKE2b-256 ceef810d92e1b83246e6c3164583dfc3e1f9f3313cb3b392ca0e41686f5dfec8

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4e7f16ddf2d1e58bbbb901f01b324bc5e211af00ff3541be6f05feb9f9f30191
MD5 e4a523671d8bf71fdc9bec8564ecc526
BLAKE2b-256 fc8721c62219b564a6cfe621a89af3468174d6979f6c701b99ea68659f1c9039

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bac3c66680924e168d22522da684af4fd3fc84b7377eb32933321d6a593ec684
MD5 4b0a6cfef1218bf358fc90fc68a27410
BLAKE2b-256 096f2c5b0e49a93c766779a711b1d2d4c1fdddae7f0a7f1b52b875f70e60ea06

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-win32.whl.

File metadata

  • Download URL: dao_treasury-0.0.62-cp311-cp311-win32.whl
  • Upload date:
  • Size: 299.5 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 00a990020c0dfdaddf32bc47d8fdc5d56b7138b57176ec7683a691fa89efb264
MD5 39ce394a0972f628f46bdda67013a455
BLAKE2b-256 666a66f41304b7b514967c7ee0ce1ecfd6a1187a99f196c730a6d79832bb50b1

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4e1b24ac97c010e360874df052a18c0ebdaefe2cd3657a56d193670ed6f182d2
MD5 c66f7d70b69ddfa0741f3d803599ffd2
BLAKE2b-256 1d798eee8f74279e5f5a79278fa8b89a4a1f896fc087255f2d40351fcf5dba4b

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 827ad3c58f3b0adb8a83f32491a8ef9018b89c0104ea74a3a662c45aac15dbff
MD5 d6fa54d33a8ddbc2031a8ef48d65b991
BLAKE2b-256 7ffff21ecb00e0bb7f168222c0ada0a69645d2fb9d8b651913b91988c1b4d0f2

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 6ab9a984663e7f151f02cda640afaaca297a5ea5eb6f81495b9972679234708a
MD5 4627e307ff770eb3a5cf402a93e64cea
BLAKE2b-256 23c3f4f78751cf211027f2f1130cb2c33c17a383e9128a83d4b4ea9d5ccb1f50

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 47804268847a033243b37e8d60dd9dad37759f6bc3ca5f906ac6a2fb57e38c23
MD5 b5554d2e21b6e9a49e0cc08fb7fa9d21
BLAKE2b-256 9a72264dbb08eed2860a4884d97c3cfc8704e86af5938a0ea8910d05ea906e37

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a69894708fb973c50c9517d292e6aae10118abce84a93c67f5e99819e2b2d64e
MD5 d2a43cea8179e32f059e34f370d5f5cf
BLAKE2b-256 ad6bfe26fc3fc029052f27a2d0b934a1be8966a7f3b893b66b04d8aaa0b4654c

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-win32.whl.

File metadata

  • Download URL: dao_treasury-0.0.62-cp310-cp310-win32.whl
  • Upload date:
  • Size: 300.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 5fed1eeb65ae6cce02d04f0acf2dc982f5990b3adb8571e70fc2d0799413da85
MD5 663bc276efaa8eb8cc125fcbff1c7d93
BLAKE2b-256 115e841f8c595e0d507e164175fc3b3251adc567ad24d5359f73000627fdb1a0

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 db35f873d4a7da357f24e277adf8c166aef52703bc012902ab850de5e13902ca
MD5 0ac1b218206e38f54dd303c4b4c392df
BLAKE2b-256 38f74cb21511e59e2ce993cc4ab8c87a87a8ec278fb8f48a7eb3ecf38b1eb496

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a58a82ad297ac403605fe6599c6091106c74a9d28bd1692b695d42af89f1b421
MD5 55f08fd57bdde533bf5017d424f5ef57
BLAKE2b-256 82a67433ca7afdf4183832a92cdca27f3e35f972f9f7347b419c58c0cba4d057

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 f5f6b693b61296b3f99f5f339116d77f95f4336714fb07623b691ea5989b85e1
MD5 f3cc51742bad7daee1a08ef06781718c
BLAKE2b-256 f26406147ad6c61f37e2a9693c6f5b3f6e4b1004688e306eba6ddc520ee487a4

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.62-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dao_treasury-0.0.62-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b05d24121f9a8562801e7e21384204ad505ef6ffcc505288409fd345e3fccf1
MD5 e9e32c7b2ef201a50c1f7e46b69b7afd
BLAKE2b-256 a3d8f3d354d3a7ed9c5de47fe002a51f8f0c789f0c8b4889a23dc87a128b0524

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page