Grant and Protocol

This guide will walk you through how UNHRD will function and where the funds will be allocated to. Scroll down for the UNHRD Protocol and what we are trying to build.

Why is this grant being offered?

UNHRD firmly believes in the power of art to transform, inspire, and connect individuals and communities. As a champion of artistic diversity and representation, we are committed to ensuring that the broadest range of human experiences is reflected in the global artistic landscape. Yet, we recognize that the world of art has often been inaccessible to many talented individuals who lack the resources, opportunities, or visibility to fully realize and share their creative visions. 

Our mission extends beyond mere financial assistance. We aim to create a platform where underrepresented artists are not just seen and heard, but celebrated. This includes artists who have dedicated years trying to showcase their work to the world but have been overlooked due to factors beyond their control. It involves recognizing the enormous talent residing in artists from diverse racial, ethnic, and socioeconomic backgrounds whose perspectives have often been sidelined in the mainstream narrative. We acknowledge the myriad barriers that female artists, Asian artists, Black artists, and others from historically marginalized communities may encounter in their creative journeys. 

UNHRD is dedicated to dismantling these barriers and creating an inclusive, equitable space where art from every corner of the world is valued. In enabling these artists to bring their creative projects to fruition, we are not just elevating their visibility but enriching the world with a broader spectrum of creative expression. 

Through the provision of grants and educational guidance, we aim to empower these artists, giving them the resources they need to thrive, and the platform they deserve to be seen. Our hope is that with each artist we support, we inch closer to a world where every artistic voice, regardless of its origin or nature, is valued and celebrated.

Artist fellowships serve to further support the arts and creativity by:

- Encouraging artists’ contributions to the global economy, communities, cultural vitality, and quality of life.

- Highlighting artists’ accomplishments and creative excellence.

- Affirming artists and the arts as priorities worthy of financial support. - Raising artists’ public profiles globally.

What is the intended impact of this program?

UNHRD’s program is designed to recognize, uplift, and celebrate artists worldwide. Fellowships support artists from a broad spectrum of artistic practices, backgrounds, and communities, emphasizing themes including but not limited to diversity, equity, inclusion, and accessibility.

Grant Offered & Conditions

UNHRD Artist Fellows - $1,000-$10,000 USD (1-5 ETH).

Artists with multiple years of experience. Artists can apply for a grant amount based on their specific needs, with a minimum of 1 ETH and a maximum of 5 ETH. We understand that each artist's journey and requirements are unique, and thus, we encourage applicants to request the amount that will genuinely aid them in realizing their artistic endeavors. Representation of, by, and for communities is a core value of the UNHRD. We strongly encourage applications from individuals representing systemically marginalized communities globally.

Fellowship grants support individual artistic practice through unrestricted funding. The awards will be fully funded at the respective Ethereum amounts; partial awards will not be made. 

Terms and Conditions: 

  1. The grant amount must be used solely for the purpose mentioned in the application. 

  2. Recipients will be required to provide periodic updates on the progress of their projects and the utilization of the grant. 

  3. Any misrepresentation or misuse of funds may result in disqualification and potential legal action.

Eligibility Requirements

Artists, 18 years of age and older, working in any artistic discipline, residing anywhere in the world, are eligible to apply. Applicants must comply with the following requirements. All applications must include the listed items at the time of submission in order to be reviewed, ranked, and considered for funding:

- Artist’s narrative - A brief description of the applicant's background, focus, and a description of how the funds will support the artist’s professional practice.

- Artist work samples - Examples of the applicant's work relative to the funding tier (three pieces for Emerging, six for Established, and 10 for Legacy artists).

- Letter of recommendation - A written, signed statement from an individual or organization familiar with the applicant's work, substantiating the artist’s practice, relevance, and community impact.

- Support materials - A resume or curriculum vitae (CV). Applicants may also submit up to two additional supporting documents such as press materials, flyers, brochures, programs, newsletters, and other marketing pieces. More recent materials are preferred.

Need: The extent to which the grant will make a significant difference in the artist's ability to carry out the project. Applicants should articulate why they are seeking funding and how it will benefit their project.

The UNHRD Protocol

UNHRD's blockchain protocol will streamline the receipt, management, and distribution of funds for NGOs, grantmakers, scholarship boards, and various philanthropic organizations, enhancing efficiency, transparency, and security in philanthropy.

Versatile and Scalable: We are crafting a solution that can adapt to a variety of funding needs, from small-scale local projects to large international aid efforts.

  • Tailored to Sector-Specific Requirements: Our protocol will cater to the unique challenges and standards of different sectors, ensuring compliance and efficiency whether it's for educational scholarships or humanitarian aid.

  • Global Reach and Compliance: Recognizing the global nature of these sectors, our system is designed to navigate and adhere to international regulations and standards, ensuring seamless operation across borders.

The Problem with Traditional Grants:

  • Slow and Inefficient Processes: Traditional grant-making involves numerous steps that can delay the distribution of funds. For instance, the process of grant distribution often involves multiple layers of bureaucracy. A notable example is government-funded grants, where applicants sometimes wait months to receive funding due to extensive paperwork and approval processes.

  • Lack of Transparency: It's difficult for donors and stakeholders to track how funds are being used. An example can be drawn from cases where non-profits have been accused of misusing funds due to lack of clear tracking. For instance, in 2010, questions were raised about the American Red Cross's use of funds raised for Haiti earthquake relief, as it was unclear how much money went to actual aid.

  • High Operational Costs: Administrative and compliance costs can eat into the funds meant for beneficiaries. Many charities and non-profits face high banking fees for international transactions. A case in point is small NGOs working in international aid, where a significant portion of their budget is often consumed by financial service fees. A real-life example is the 2013 case where the National Endowment for the Arts in the United States was defrauded of over $1 million by an employee who issued unauthorized grant checks.

  • Security Concerns: There's always a risk of fraud and mismanagement in manual processes.

Blockchain as a Solution: Blockchain technology promises a radical transformation in this sector. With its inherent features like transparency, security, and smart contracts, blockchain can:

  • Enhance Transparency and Accountability: Every transaction is recorded on a public ledger, making it easier to track fund allocation and usage.

  • Improve Efficiency and Speed: Smart contracts automate the release of funds, reducing the time and bureaucracy involved in traditional methods.

  • Cut Down Costs: By minimizing administrative overhead and eliminating intermediaries, more funds can reach the intended beneficiaries.

  • Bolster Security: The immutable and tamper-proof nature of blockchain reduces the risk of fraud and mismanagement.

    Broader Use Cases:

    • International Aid: Blockchain could have expedited aid during the 2004 Indian Ocean tsunami, where aid distribution faced delays and inefficiencies.

    • Scholarship Funds Management: For scholarships, blockchain can ensure transparency in allocation, something that's often questioned in traditional methods.

    • Crowdfunding: Platforms like Kickstarter could benefit from blockchain to ensure funds are used as promised by project creators.

    • Environmental Conservation Funds: Similar to the Green Climate Fund, blockchain could ensure that contributions for environmental projects are used effectively and as intended.


Copy code

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

// GrantSystem Contract
// This contract automates a grant system where funds can be held, accepted, 
// and distributed periodically. It also allows refunds under certain conditions.
contract GrantSystem {
    address public admin; // Administrator of the contract
    address public artist; // Artist or recipient of the grant
    uint256 public distributionInterval; // Time interval for fund distribution
    uint256 public lastDistributionTime; // Timestamp of the last distribution
    uint256 public totalFunding; // Total funds received for the grant

    // Enumeration for the state of the grant
    enum GrantState { Active, Inactive, Completed, Failed }
    GrantState public state; // Current state of the grant

    // Event declarations for logging activities
    event Funded(address donor, uint256 amount);
    event Distributed(uint256 amount);
    event Refunded(address donor, uint256 amount);

    // Constructor to initialize the contract
    // _artist: Address of the artist or recipient
    // _interval: Distribution interval in seconds
    constructor(address _artist, uint256 _interval) {
        admin = msg.sender;
        artist = _artist;
        distributionInterval = _interval;
        state = GrantState.Active;

    // Function to accept funds
    // Allows sending ETH to the contract when the grant is active
    function fundGrant() external payable {
        require(state == GrantState.Active, "Grant is not active");
        totalFunding += msg.value;
        emit Funded(msg.sender, msg.value);

    // Distribute funds to the artist
    // Can only be called by the admin and at the defined interval
    function distributeFunds() public {
        require(msg.sender == admin, "Only admin can distribute");
        require(state == GrantState.Active, "Grant is not active");
        require(block.timestamp >= lastDistributionTime + distributionInterval, "Too early for distribution");

        uint256 amount = totalFunding / 4; // Example distribution logic
        lastDistributionTime = block.timestamp;
        emit Distributed(amount);

    // Verify off-chain conditions
    // Placeholder for future implementation to integrate with off-chain systems
    function verifyConditions() public {
        // Implementation depends on specific requirements and off-chain data

    // Refund donors if conditions not met
    // Can only be called by the admin when the grant has failed
    function refundDonors() public {
        require(msg.sender == admin, "Only admin can refund");
        require(state == GrantState.Failed, "Grant conditions not failed");

        uint256 refundAmount = address(this).balance;
        // Refund logic to be implemented
        emit Refunded(msg.sender, refundAmount);

    // Update state of the grant
    // Allows the admin to update the grant's state
    function updateState(GrantState _state) public {
        require(msg.sender == admin, "Only admin can update state");
        state = _state;

    // Withdraw function for artist
    // Allows the artist to withdraw funds when the grant is completed
    function withdraw() public {
        require(msg.sender == artist, "Only artist can withdraw");
        require(state == GrantState.Completed, "Grant is not completed");

        uint256 amount = address(this).balance;

Grant System Smart Contract


This Ethereum smart contract automates a grant system, capable of holding funds, accepting donations, distributing funds periodically, and processing refunds under specific conditions. It's designed for transparency and ease of use, primarily serving artists or recipients of grants.

Contract Details

State Variables

  • admin: Address of the contract administrator, typically the one who deploys the contract.

  • artist: Address of the grant recipient.

  • distributionInterval: Time interval (in seconds) between fund distributions.

  • lastDistributionTime: Timestamp of the last distribution.

  • totalFunding: Total amount of funds received by the contract.

  • state: Current state of the grant, represented by the GrantState enum.


  • constructor(address _artist, uint256 _interval): Initializes the contract with the artist's address and distribution interval.

  • fundGrant(): Allows donors to send ETH to the contract when the grant is active. Emits Funded event.

  • distributeFunds(): Distributes a portion of the funds to the artist at set intervals. Can only be called by the admin. Emits Distributed event.

  • verifyConditions(): Placeholder for future integration with off-chain conditions verification.

  • refundDonors(): Refunds donors if the grant conditions are not met. Can only be called by the admin. Emits Refunded event.

  • updateState(GrantState _state): Allows the admin to update the grant's state.

  • withdraw(): Allows the artist to withdraw funds upon completion of the grant.


  • Funded: Emitted when funds are received.

  • Distributed: Emitted upon the distribution of funds to the artist.

  • Refunded: Emitted when refunds are processed.

Usage Guide

Funding the Grant

Donors can send ETH to the contract by calling fundGrant(). This is only possible when the grant is in the Active state.

Distributing Funds

The admin can call distributeFunds() to send a calculated portion of the total funds to the artist. This function enforces checks on the caller's identity and the timing of the distribution.

Processing Refunds

In case the grant fails or conditions are not met, the admin can initiate refunds to the donors through refundDonors().

Security Measures

  • The contract uses require statements for validating conditions.

  • Functions are restricted based on the caller's address and grant's state.

  • Timestamps are used for managing distribution intervals.

Future Enhancements

  • Integration with off-chain data sources or oracles for condition verification.

  • Implementation of a more dynamic distribution logic.

  • Enhanced refund mechanisms to handle various scenarios.