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.54.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.54-cp312-cp312-win_amd64.whl (335.8 kB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12Windows x86

dao_treasury-0.0.54-cp312-cp312-musllinux_1_2_x86_64.whl (654.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dao_treasury-0.0.54-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (658.0 kB view details)

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

dao_treasury-0.0.54-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.54-cp312-cp312-macosx_11_0_arm64.whl (410.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dao_treasury-0.0.54-cp311-cp311-win_amd64.whl (331.8 kB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11Windows x86

dao_treasury-0.0.54-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.54-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.54-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (634.7 kB view details)

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

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

Uploaded CPython 3.11macOS 11.0+ ARM64

dao_treasury-0.0.54-cp310-cp310-win_amd64.whl (332.6 kB view details)

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10Windows x86

dao_treasury-0.0.54-cp310-cp310-musllinux_1_2_x86_64.whl (631.5 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dao_treasury-0.0.54-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.54-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (646.3 kB view details)

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

dao_treasury-0.0.54-cp310-cp310-macosx_11_0_arm64.whl (411.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: dao_treasury-0.0.54.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.54.tar.gz
Algorithm Hash digest
SHA256 dda88b5942ad1ab953cee84d5b34a51f99382d59ca69f84738e183478f1fed22
MD5 4de900e5deece4ff4c53fbd03057d860
BLAKE2b-256 280886eebe8caf2d78ce528aae87bec3b016879572fb21cce0fb3828ea38df55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9d79bba8bc9b1699325fdb2b80aa754d2e2173ae1224ae84fbdbdfcb8abcbb95
MD5 67552c401c829de5a173207fef219a2f
BLAKE2b-256 ebcfeddb830f86c5d79839b594139ad13fa283f4ff0dbbc222f170722c6e93a3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.54-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.54-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 a44845ca4eb0ba3c4e2709aaed03468772f63d6ca59232083c6e8024201931a6
MD5 35b39da2e809e8c7906bee58b7cb8fac
BLAKE2b-256 4597bba44f217802c8a4870542dc5fcca8c6fee71ee0a24f28ea7f87d454fab2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ccace83f82895fb128c9390085a776cc8bd42182b998da10f949a12f7340d1e9
MD5 f2df45927fba900d4ec19a55597d80d1
BLAKE2b-256 f7cbe446f53abd218a3d79e1288b4d4d120f6ff8d195d53485219f6a30acbbb1

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.54-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.54-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cff908aa77b569303c18e34ad8f1262a0566b21af4f5d840644970d70bbd8a08
MD5 aaf9241ed2dd9047386041ff585187f2
BLAKE2b-256 bfc9825946dda6081ae312dad1804985f6d420a9429c1a8073a369b6632ccb22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 025668a607432d83d83bc803c9ff8d3e409346b56677864ec2b4ba6f7e5d2b15
MD5 0eb33b4ba7525c9cf7b338ecd17f4ecf
BLAKE2b-256 f6f7aa3c4a671739a7bbbb3e754d5244b55a56f56ce9e43986b5b116d1b8e4da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13c86e2257611f008f86510a32646221f69e297e6f778b49bc9ad9343cd833bb
MD5 4cc7d762f18ffc570abe8ca4eb646b57
BLAKE2b-256 8eceb70bb4596c52368b335a78ea2c92e8add86068f7cb5a683870b6aac03e04

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8e85a7242e7b217105efe2b7404d2ef97887341a3d1023814ba265847a333447
MD5 3b505f1d1262b0a93dad187316251778
BLAKE2b-256 789819024f995e47e79a0b7bfb84e9048145b38873106376ec623bb94050fa3a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.54-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.54-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 12e9cc2282eee3e7abe3c96bab878e63df91c3a736bdb8cc61134ae68ea4e8ec
MD5 30e93b8bc2412301d4e89fd774566274
BLAKE2b-256 5c3dee4baa30e996a0721ff481e4179614637a28881842ec7ed7a142168d1359

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 beed34082fd4da45bbb389395b817d0874611d2c184ffba0080942656942c271
MD5 8201aaf22a60d6dc282368faf19f9fc4
BLAKE2b-256 18f98d26ec05d039d9a1a630364bbaf664e4837d2fbe0ab26b0bb276cc7413d8

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.54-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.54-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3024ee89622e78f5666850bd226234e3f1d8b2821823833ff7e6d852dc12e5ed
MD5 23a67d99f459fc45caf189c7072b731d
BLAKE2b-256 db81c93778cdb5fe971c321fa5f75e2e7b3a66958dba3951702d925627cf8e8f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 5dc6bdb0a1f07aaffb89299e96aac81d9c43dc65e7cbc835da2d5efd33df3289
MD5 9f622c5dfe49968e6015f999854ee9c9
BLAKE2b-256 7abf00fa08740f19f3274b7de8a0dc4548e14053735a1665a32528762dca80e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8c1e4dea22825ae15f22dd1986ccd5486f8a89c5f69b69b1a2cf8cd35c2f286
MD5 508e0deeaa5de5bb574da508c2186b2d
BLAKE2b-256 cb83d52d78251593d9d08d336df3fbb3e04e8a1ecba894804f90b6754cd242fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4f2dab29d5bd6202cb965bd16e6f40fde626e7b670898f51abf5a6c974d26079
MD5 95236515541a74c9a0da3be48e137451
BLAKE2b-256 dfb4de03f809dc1d14d49917ac9d02dc2dd11b6763bd2b5b499e80f0d92f0ef3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.54-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.54-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 1d8e53962d3a7d5a1e3d601c06f7a2f367145367a09724bdc1f5f813aa8a232d
MD5 6563c1b64b05c887918be9d9f28e5d98
BLAKE2b-256 eebed4ac8d79b4ce14f79ef936cd6dbf71a4818fceb5eb9628234cee8c0e993e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6823c7fb7fd5270a4427f6c87756d38958f1d325a66322318715d1201d5937b9
MD5 7f0f025a4000c5572e7e2a9482533e0b
BLAKE2b-256 27508b361ab6ab326946c6c58b6a03ef86570187b3b243b0ef4a001323933322

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.54-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.54-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fff6b9a70baafd3dfcb6e654043a7dd91765d6f71fe7dc7c88c20cc897a34a8e
MD5 82a89107243ee2e1581c1232a58baea1
BLAKE2b-256 6bed0594c1f167f2356c5054de6f81f1b6eb362b1bc8a0b2c31018963f8c95a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 085522c75693ae164db3f083959b649feaf4005a31d43b02d32731549633e310
MD5 bb9dc88d62ac286e35ead47d746502d3
BLAKE2b-256 0773338e58e4ea6784c073aa070195e6011cab65bf467f0c694a7ffc1901e9c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.54-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eae38c719d833f17b725caaaedc48746f2c858284fcac3ba34e780e89dcbddf1
MD5 93c7af112f31d4e0d2581456adb84220
BLAKE2b-256 02dcbb48d9c836c48b040b2577cf6ded43eb4009c821299892bca6dc5e15fac8

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