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.53.tar.gz (65.2 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.53-cp312-cp312-win_amd64.whl (331.2 kB view details)

Uploaded CPython 3.12Windows x86-64

dao_treasury-0.0.53-cp312-cp312-win32.whl (296.2 kB view details)

Uploaded CPython 3.12Windows x86

dao_treasury-0.0.53-cp312-cp312-musllinux_1_2_x86_64.whl (649.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dao_treasury-0.0.53-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (653.3 kB view details)

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

dao_treasury-0.0.53-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (682.0 kB view details)

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

dao_treasury-0.0.53-cp312-cp312-macosx_11_0_arm64.whl (406.1 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dao_treasury-0.0.53-cp311-cp311-win_amd64.whl (327.2 kB view details)

Uploaded CPython 3.11Windows x86-64

dao_treasury-0.0.53-cp311-cp311-win32.whl (292.8 kB view details)

Uploaded CPython 3.11Windows x86

dao_treasury-0.0.53-cp311-cp311-musllinux_1_2_x86_64.whl (615.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

dao_treasury-0.0.53-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (620.1 kB view details)

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

dao_treasury-0.0.53-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (630.0 kB view details)

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

dao_treasury-0.0.53-cp311-cp311-macosx_11_0_arm64.whl (402.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dao_treasury-0.0.53-cp310-cp310-win_amd64.whl (328.0 kB view details)

Uploaded CPython 3.10Windows x86-64

dao_treasury-0.0.53-cp310-cp310-win32.whl (293.6 kB view details)

Uploaded CPython 3.10Windows x86

dao_treasury-0.0.53-cp310-cp310-musllinux_1_2_x86_64.whl (626.8 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dao_treasury-0.0.53-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (630.6 kB view details)

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

dao_treasury-0.0.53-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (641.6 kB view details)

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

dao_treasury-0.0.53-cp310-cp310-macosx_11_0_arm64.whl (406.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: dao_treasury-0.0.53.tar.gz
  • Upload date:
  • Size: 65.2 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.53.tar.gz
Algorithm Hash digest
SHA256 2e83f2fda7f55b3618981d749f7aa05ac1f34f73e20014fd00f42c54a844e956
MD5 9ebfdb7eb6a5b1a01125712fe47b1bd1
BLAKE2b-256 85599def59bbb0c7a03f6a3f68adee6b509371ca60218bc8d45a33bbbb726e2c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e46b19510055779c0aae7db6934e7f6b38073b55050eb9d05b0b5d37d77e7f37
MD5 a80ba2178c469ba8d824d9608756755a
BLAKE2b-256 396f3ee88d0187c998cb8ec3cd382e4592d44c8a4710e3589eee355d2319fa3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.53-cp312-cp312-win32.whl
  • Upload date:
  • Size: 296.2 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.53-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 c7d6f21919c503302f7c81725e5bd1daf1dd670099b8c884ad75dcf9c07f2338
MD5 a48f47aff675c8a9a1f1e1ac563a2a66
BLAKE2b-256 0de968baa1766e0a7580f522744bd6ae5905bfe94e7005034b4f0617f8d0ea3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 213ea67c0a26bcc08bd1581d608dd80b604da0a453f43ba6ee3f5ec6df560e9d
MD5 61472f9f2195b487ef560cb65af6d3d6
BLAKE2b-256 a5316ee261dcf404889196a11f59d02155e972cf6f5ce11c7f60d1bb2a3e724a

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.53-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.53-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9adf0d377fde9124897c66fcba2522b9b2a2ef0ca3ac4257dab93760344238f9
MD5 6f76d46fa9f26bf2a94e4225d6150ac2
BLAKE2b-256 c936626de4ee50cd40c7eb43495080ffa05c6b7de0edded25862b46532b27efa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 949a8ba1c9d857e4d6e4d88684d7b83136909b439425cde8b9858c8dff5a9bda
MD5 895a190516d7d9beef06ac6256d41e58
BLAKE2b-256 872a237329bee45080544051a7f159f21f890c91ed0648905152a94f8eb154a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 949130b00de30e5048ece926bcda179ead53a484ba8dfd7a34fcc079966e2a9a
MD5 6df7d2bba197c4fac11608305c8735e5
BLAKE2b-256 b34e12b75ef992cad0c864b2571954e205aedfd59bd7f545b73f7e7ee5455f5a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4e312b3b724396ad8b8a750b9d662508003b9fb940a3a1b8e7b24519ed6399cf
MD5 943aa0b02337527980bb8a89d33f8ff5
BLAKE2b-256 018dd5b778095d3d5bcc74fdefcec26422cbcfcf2764cfb4bacc5276533bbff1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.53-cp311-cp311-win32.whl
  • Upload date:
  • Size: 292.8 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.53-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 e267ad940ef568e013d1c6c04ae7201e47a2db233131710e59595625de373e8f
MD5 b75b71f535ef0b36d3b06cf227532005
BLAKE2b-256 0f8c29090e9443b092890a45e649745871e30c442aa707e1a22fe55dcaf7c886

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f6bfc94b357b816e58feea207e741603d3b5afa1ddddfabf49b2a7d6f4ce3dbe
MD5 ec4b6c7ecbbbc8ea953b352673031f3e
BLAKE2b-256 933b2b8c3281f3fbfe229a3da09b3846974b54d57cdcce9ea1e2288a5b3c4173

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.53-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.53-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 42a3c00cc4c328e647e4b97e5e4be2957d42c4438d80da17716fc4e2e1da0ec9
MD5 7a60d389aff6452ed1dd759731267d26
BLAKE2b-256 3ca1e0c6d15b0b01a5f7a88fadad39c03ae3be7a42ee13ff65035f70fb08840d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 d95f32d4a267258724da240ecf570bbdb81a8e8cf919e39d31f5de1f5deced1f
MD5 a5fee44b0a23e43abdca9b68cb2e994b
BLAKE2b-256 70e48fa72683834d320210356399160abe2f878dea098377be5f508c6fc99e94

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0f6d3e573d94d7846ba386eaa2ae3b2c834aa282933a6c41e99b5bc52ba094d2
MD5 33dfa6885582139230f6aaa1501dbb24
BLAKE2b-256 364284ac8f2c43702d6293716864a180a068a903e829eb1c37cca7a7bb53de55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ea1c21e8162d5a45069784e9cc4bd1d106f3d07e3d22c4c79ce1c84bde2f459d
MD5 927c4e759566f28746a7a345c308e4f9
BLAKE2b-256 d165fa8d2fee76b1aa1478ddfe81721e1841c864381bf1dd0597d646e0870def

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.53-cp310-cp310-win32.whl
  • Upload date:
  • Size: 293.6 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.53-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 32d4e5483a06baa3d3e67e47e9923c19555876208a4b9de4884ba70296903e77
MD5 25c75bcf7121a9f965e85dc0867e16d9
BLAKE2b-256 59e3b5632491dde30dbff4bfb373eac22053bcd621aacae8d2420c8351c912f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 137310dbd8fa9cdeb0cf6c8792886b378ddb133edb0b780761365036ea161057
MD5 ea47976ac38a74ae3d5e42f8e7ea1bbe
BLAKE2b-256 cd222798d448147291609b2985d322e74fab66986ff51f741821c42b9caa4714

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.53-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.53-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fc85dbb4c229552f282d72b0d32371376a92a1b9501b16e92248315a0af0589f
MD5 b90d94a470b713d6d026f2a734d1bd2f
BLAKE2b-256 a5ca226e9b05b886062c7d59482c1c6c02c1c35512d9623e93c9f35abd02c06b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 6b03d564e2eb791f49a7c5c9e2f9f754e874ab8106ae61f3c10281a8cd09f149
MD5 024890618d700328081425ff33705196
BLAKE2b-256 4c8989d0bcd3a840379344888398b2e9f83d069502a816850d7a597089fb9a51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.53-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2b31bf8895143db87173ef7f4d0843365a7f50c6b85d96f4f5bf415ae68d395a
MD5 c41a21f3f335d9a65d9ac8fcf7596dc4
BLAKE2b-256 d7633a42247a6e44b25f086bc327150a0c6e9e5eb6cb038187e29a3a7709bda9

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