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.44.tar.gz (57.7 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.44-cp312-cp312-win_amd64.whl (321.7 kB view details)

Uploaded CPython 3.12Windows x86-64

dao_treasury-0.0.44-cp312-cp312-win32.whl (287.3 kB view details)

Uploaded CPython 3.12Windows x86

dao_treasury-0.0.44-cp312-cp312-musllinux_1_2_x86_64.whl (603.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

dao_treasury-0.0.44-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (605.3 kB view details)

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

dao_treasury-0.0.44-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (636.2 kB view details)

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

dao_treasury-0.0.44-cp312-cp312-macosx_11_0_arm64.whl (315.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dao_treasury-0.0.44-cp311-cp311-win_amd64.whl (317.6 kB view details)

Uploaded CPython 3.11Windows x86-64

dao_treasury-0.0.44-cp311-cp311-win32.whl (283.5 kB view details)

Uploaded CPython 3.11Windows x86

dao_treasury-0.0.44-cp311-cp311-musllinux_1_2_x86_64.whl (576.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

dao_treasury-0.0.44-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (581.7 kB view details)

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

dao_treasury-0.0.44-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (592.0 kB view details)

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

dao_treasury-0.0.44-cp311-cp311-macosx_11_0_arm64.whl (313.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dao_treasury-0.0.44-cp310-cp310-win_amd64.whl (318.3 kB view details)

Uploaded CPython 3.10Windows x86-64

dao_treasury-0.0.44-cp310-cp310-win32.whl (284.4 kB view details)

Uploaded CPython 3.10Windows x86

dao_treasury-0.0.44-cp310-cp310-musllinux_1_2_x86_64.whl (589.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

dao_treasury-0.0.44-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (593.0 kB view details)

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

dao_treasury-0.0.44-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl (603.7 kB view details)

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

dao_treasury-0.0.44-cp310-cp310-macosx_11_0_arm64.whl (317.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: dao_treasury-0.0.44.tar.gz
  • Upload date:
  • Size: 57.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for dao_treasury-0.0.44.tar.gz
Algorithm Hash digest
SHA256 3a78aa47f004aa4e4144d92c433f939ac0dd87175247a00783a81ab51f2d59d5
MD5 a699c996f6ffb9ee55644c3e1dcd698c
BLAKE2b-256 833d7b6a358b49869488baa3c36e0cee9a90675be9179c35e3fa51962fc41d40

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9ebe66ab4c52f943e3f7323442b1a7b660af670fed1ff043363686d6a754fa71
MD5 f45df51825612cf8a3127919f93d8c4a
BLAKE2b-256 df01ea35a4f2c1d4d07be38ae29d4e72392b8d7ce01a8be01c6283a83a3951f5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.44-cp312-cp312-win32.whl
  • Upload date:
  • Size: 287.3 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for dao_treasury-0.0.44-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 a01f68684cc0fb80a1f3b3acc6bc0f89000ba9a048ec793569b8caece128b5f7
MD5 d44cdef43051b1983d73fc296f0bda24
BLAKE2b-256 c3ff8cc725ee0a673a6a8ca3c317cb6c4cda1e9050ee196fc4ce869644a380a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cb4d5c32580ab496fba3685d446a336f927983368fce41fd32a6710447dc4738
MD5 5700d8fa7c8859861102b509420ee553
BLAKE2b-256 2e6428bfadd70b3ea948416fcedf823ddc798a10573b7cd64ede6faa32219b5d

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.44-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.44-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 82b6be3b98c3d0d6bac0f25c92cd438ede57d4cbe5abc7c8f40f8035f638b010
MD5 db2903285647f2d764587aa225ce3173
BLAKE2b-256 01705f2793e7ac6521d62f8e6217e06f202665ea6e0dcf650f7477a63f797eaa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 e388e9f8ccfbf8bbf661f9afced409fcb21ef6dcb6617c7f073aa36a98cf16be
MD5 c65fd3c42c235f12db6c8b74d124a04a
BLAKE2b-256 f2689de1f8fb5e7036e5343c891b15fc3a2ef9cf8d5d374f6d4e777d3ab58ab5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e55aaff25a27e701b267520b94e5fc2e2448ade807d90258626de9f3ee2d25fe
MD5 6ce87d5e5f7568cf7e5e8eeba126e25d
BLAKE2b-256 4fc638abe1823876de5870c46a2c4099aee330f279ad6cd6fdcf21b824c61693

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4f7a8a82239fde8ead3ceb52541ce0d6cd7f8aae3a1e50e3332612feb63ac167
MD5 3f426e6cc5ddd4a8367ee969e536b1b5
BLAKE2b-256 c835913799621be7347dbe80f99215d5abe5bd39a839b2b8ed6e3ea59da58570

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.44-cp311-cp311-win32.whl
  • Upload date:
  • Size: 283.5 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for dao_treasury-0.0.44-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 7f44f7cbe590865b8e862d7a14cba292be7f64ed88e5751a452ffba29a3b944c
MD5 dc1a9dd947a42556b2a2974b7ca6b194
BLAKE2b-256 cd6a44540717beb4aa146e342cf52ae99dac5b08194629026ffe43bc1da3e91d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c5b35f2cca46f3b9ab0150da642c10914af480cdf3c26e28bc70b3d88a81e55b
MD5 a83c18312b659cd7f45b3c5d7f9a8a0b
BLAKE2b-256 3f0512af7d96441a2526fd09a3c69d7445124aa0af2d99baaca20eaa453fc63e

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.44-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.44-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e812db27172cef9b02ef37bc4984f8ed197e4f8b050e883c9ba2d90e5c45dca2
MD5 0163f6904efb51d91be8f55caedeab7b
BLAKE2b-256 9e29abc29dfad2f161229c9cef90f512820da5fe8a69338e041e2af437371c4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp311-cp311-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 8ef2b436c21322306069e2233cbfee00e4480ac85a2cc172beb08185d5345260
MD5 562f39842f9a464139954891c8e8d80f
BLAKE2b-256 fa208203895d23eb512d364492fb168849f9091e371cfc7aa1cb385cb8d6c31a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 259ec2deabed0a115e472080a5115c5b6ae447949628b185f9194907da807d88
MD5 b9d20d87e40c4f9a7e1516c667b10481
BLAKE2b-256 4f3e0b0209ed39d681dc7edc935b2604c004e4c14302393f8d812e6db18a92e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 54de13ab61e5f9d3e74590f81d9be39d618e337e9f05406542089c7a5d0faf4a
MD5 a9bfc36d7501b808c6fd4501d10fc9f6
BLAKE2b-256 7327c4a9da0056694a990402a294498cc419b04bd20c77b9d26f3933a77f7a9e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dao_treasury-0.0.44-cp310-cp310-win32.whl
  • Upload date:
  • Size: 284.4 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for dao_treasury-0.0.44-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 efc3e1f99b66f03665ddb0d33e822ea21b0515528ead35458f591dea655aca7f
MD5 6f4aa53170831c01bc7b4946866ff9f5
BLAKE2b-256 d0a8223a7fd1def4c1e1f5e93d9172ccc3487dabf3da6f7b47264caf18d668d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fe0ab860d249c9cd14a07e5b3f4c6101a524cc6b814f4a9a28a45472864b75f4
MD5 f85d1bf6c4f13f5d8af3faecfc9ded31
BLAKE2b-256 fc24a1a1953767e152aa41b6b14ee231c56969c89a262ddd9c96142e873af6f7

See more details on using hashes here.

File details

Details for the file dao_treasury-0.0.44-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.44-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 73c270fe9c0909645572bc30e473f05dc30fbb0943d2d095fffea79b1262fd76
MD5 6b8540362c4679d194b4907e7c0e4b89
BLAKE2b-256 fa8d592a2b707a8564b6ede05a327c85a851a135102885a567dcee3fe572b7b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp310-cp310-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl
Algorithm Hash digest
SHA256 1d2a1a5c04d8d7f6969717e9ee0c21c8577df2b11e485995ae91004f405b0df0
MD5 7084c8b97fdeac7f98615f7ba616733f
BLAKE2b-256 2613427767cdaf6168f33e52438ad445bedebe05b2a4e825dfd95ead9861285a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dao_treasury-0.0.44-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c05b93b6fac5cb7f0a886ca911b5960b93d5f626f088f856231246618ae07926
MD5 42082418dae2f755b3ec743eceec2d95
BLAKE2b-256 4f0d71d373d3ad4ee2b9a145aef64f7b20815b6c29ad82c17457919049648827

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