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)
  • --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.55.tar.gz (66.9 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.55-cp312-cp312-win_amd64.whl (335.9 kB view details)

Uploaded CPython 3.12Windows x86-64

dao_treasury-0.0.55-cp312-cp312-win32.whl (300.9 kB view details)

Uploaded CPython 3.12Windows x86

dao_treasury-0.0.55-cp312-cp312-musllinux_1_2_x86_64.whl (654.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dao_treasury-0.0.55-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (658.1 kB view details)

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

dao_treasury-0.0.55-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (686.8 kB view details)

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

dao_treasury-0.0.55-cp312-cp312-macosx_11_0_arm64.whl (410.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dao_treasury-0.0.55-cp311-cp311-win_amd64.whl (331.9 kB view details)

Uploaded CPython 3.11Windows x86-64

dao_treasury-0.0.55-cp311-cp311-win32.whl (297.4 kB view details)

Uploaded CPython 3.11Windows x86

dao_treasury-0.0.55-cp311-cp311-musllinux_1_2_x86_64.whl (620.0 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

dao_treasury-0.0.55-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (624.9 kB view details)

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

dao_treasury-0.0.55-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (634.8 kB view details)

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

dao_treasury-0.0.55-cp311-cp311-macosx_11_0_arm64.whl (407.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dao_treasury-0.0.55-cp310-cp310-win_amd64.whl (332.7 kB view details)

Uploaded CPython 3.10Windows x86-64

dao_treasury-0.0.55-cp310-cp310-win32.whl (298.2 kB view details)

Uploaded CPython 3.10Windows x86

dao_treasury-0.0.55-cp310-cp310-musllinux_1_2_x86_64.whl (631.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dao_treasury-0.0.55-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (635.4 kB view details)

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

dao_treasury-0.0.55-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (646.4 kB view details)

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

dao_treasury-0.0.55-cp310-cp310-macosx_11_0_arm64.whl (411.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for dao_treasury-0.0.55.tar.gz
Algorithm Hash digest
SHA256 2b348fcba0b6d5921746ece6e8d2ffe48f3df19b7071c99a0e801baaf4840cf9
MD5 94d0d5dca7402f3d364db073bec85121
BLAKE2b-256 581288494d9d2466cbc4b020506ce00b43deddbe0c466996380aa4269a892deb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 145521e5389f13c390cc4790f36105e99d5531e7828d3745d083387d0bb409fa
MD5 2367fdd632b8aa04eb18cc8837b0955a
BLAKE2b-256 da84de28f5829dc966d1034c8d9241251bf35507ef79b59ec9cc44c3dd18f7fe

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dao_treasury-0.0.55-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 45c4054d8700f114aeb17d6ee1814c790849975610c084a26ba24706a89c5ca3
MD5 2a7487d6b2a02043b135fc66f942c2cd
BLAKE2b-256 f4dea59dca4fe5d6609aaade5faee6cacb16493c07cb0945cea98993bc8fe07e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 688e217ea2e011bf6748b0b4531e09babc1751664d418a01d5a927875b18e0a3
MD5 cae310c0d27d44fc208fe5f552964156
BLAKE2b-256 a622d4fcfeb147b27428f4a038fc1b225f74e0d6e11918fe3b452d6c9c6ddf44

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.55-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.55-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f8edc1568a0de76a31cb94fb9e73324c37c96fba91dd69a760c873e1c43450a3
MD5 c8ba642faecc76a93180f3cb89875d3c
BLAKE2b-256 e1397e7e8cb937e62c3821d8f04fb55219ba4210bed1e185b1373843c0198626

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 91b14ad39f936a5b5f5b685fbb2c773508b1b55d3a19e1042d05da77dfad7c09
MD5 2c827fb2674e19f3f7aac80f546d0f29
BLAKE2b-256 d9d15adf929673eed18bd739a2c84446be88fa86377eec35f081f3023a9d1ce5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 206a925b6f7f5e2b739b384fa25edafc58ed369ebd02b5d0248795aaec4318d0
MD5 afe69c125d5e809543266e78a541ea2a
BLAKE2b-256 93e12477b296f88a8603deda070d419b69d08bda1cf3393a36a190c815e503a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c781c691aa6a070258ce1ea740e6efb48a8dd930d82454d0f000a6e54dca69a5
MD5 a7920421bb55433f02dcdf5719602a04
BLAKE2b-256 41807ceb52e94bf9e98ee49df0f9d127fec2ea349623d3b7e36f2b8a823a57a1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dao_treasury-0.0.55-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 090aaeb47e40747f7725e86b258ebacc09385a8e2553d790477dd141324b9984
MD5 cba0df4a0a8c661584beb8d202f07c79
BLAKE2b-256 a0cd47f7f254e28aad6822291feb010c39e83cddd1ef43b3c857b047c0dceb52

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d58994ac6d750325a69d3c97e26cf1f591952b464146b3b0753259d574094c62
MD5 456cdce33fe7d8c5dbcc47c306c94db8
BLAKE2b-256 e6b7ade48a0a7751aee525219b12594345b38992b949205e2d143ae6f6ce8213

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.55-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.55-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 849803f6b5d51c8170fcff76f61164a3ab9991877431a63e3764e25b50945550
MD5 2fc86d06215a760071e82839172f3cab
BLAKE2b-256 e5581235a43900eab66cadfbbfbdf43fd18e13cdafc4f999ba9f8c6909428576

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 01297e1b6e8db8976be157062a19d3ddc6c63f471c06631b2be3883744c3abf4
MD5 30ec262e28a80101e3a2a47842c6979a
BLAKE2b-256 30f78dc0d713da85b5f0914768b7030e090c9b1d3fae370c491a206a4bda7826

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eea6f49fdc2774c979ba44fe9d3fa279a1ac6a48b5b9a5f30e5edc02508e2495
MD5 3e426c9d694d4bf5cd23ee52b1625b01
BLAKE2b-256 b2e1bda02caa4f60a1e329bff46d5f2f83b0d32191c714c2a8c13025cfcfbc22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 84074f1921281baa57a9924a7cbe011cdeb491cacf2df24f4b8c4310c551b3f7
MD5 dbedfb66d33bace1b6ad103602f3b464
BLAKE2b-256 70c91953ca4a217445fcdcdf161fb030b3d57e27ddbf60d543395499e2ad83a0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dao_treasury-0.0.55-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 74d3b51b3b0e57763e9e6146a4ed2cba689e8f48522a1c5509059dcb66306b39
MD5 82a749b3a3ed659a75c910432331bb6e
BLAKE2b-256 5cd38ba3dfe18b966d6d10c0a9e96b2b8360604c142c643b231bb60657925290

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 63027a24292f92f641f6771295928d869680d922ba4a2ad4f87fb092a732a58f
MD5 cda979b2e57754b12db5208c43a955cd
BLAKE2b-256 18b395aadd593ef9e3d44238935141359fbc66888d2b8cbe5fc0836306006497

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.55-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.55-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d35900f5041cc2716e47f73ca2e91e64c30f71b490a70dfac93e6ac09d9be6c9
MD5 16400d4916e80699b983ae1ded69e2a5
BLAKE2b-256 ece0cb0eb7f36a27ada84ec2f6e794265bd7d80fa8573ac64d733ece7bff931a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 1bd207c7d0ddda4ece262c50db7c2b6de6c9c8b1d4061c562cd9432cb4e69ac1
MD5 838cb308674246fb81a19c91139cbafb
BLAKE2b-256 4ff79e267973e97d34371a40fd9af64ee7942af87f91304f19af0000371765cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.55-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bf091db7cb023560dd6f39ff183388b625f7602ac529ad641be3a8d95f6754a1
MD5 2ab4f696b7ec0405852acf6a3c5d5238
BLAKE2b-256 38f1143ca72e4f38fb6a8adb9a018474220aad0ff77fb0b505f136cca1829cf2

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