[DRAFT] [GF: Phase 1 Proposal] NiceNode

Please Note!: The response from the govt-temp-check suggested that the GF phase 1 was meant for on-chain protocols and that we could apply for a later Public Funding round. If that is the case, we’re happy to apply for the PF round later and we can close this. If you have time to give feedback before the PF round, it would be very much appreciated. Thank you.

Project Name: NiceNode

Author Name: Johns Gresham

Number of OP tokens requested: 140,000 (140K)

L2 Recipient Address: 0x9cce47e9cf12c6147c9844adbb81fe85880c4df4 (nicenode.eth)

Relevant Usage Metrics: (TVL, transactions, volume, unique addresses, etc.)
We do not collect user metrics in app currently, although we have had discussions of collecting minimal data such as the # of nodes, node versions, and node status (stopped, running, etc.).

Github stars: 45
Twitter followers: 507
We have some Google Analytics from our website from the last 90 days.

Optimism alignment (up to 200 word explanation):
“The goal of the Governance Fund is to empower the OP community to proactively incentivize future growth of projects and communities in the Optimism ecosystem”

NiceNode’s mission is to simplify running nodes. In April 2022, NiceNode launched with the ability to run Geth by downloading an app and pressing start. Since then, all as open-source, we have integrated Docker and made all Ethereum EC & CC clients available. We are inspired by Optimism’s execution, open-source culture, and dedication to public goods. We deeply desire to provide users the option to run an Optimism node from a single-click with advanced configuration available in our UI.

Further, users should be able to understand and use their Optimism node. NiceNode’s UI is ready to plug into Optimism’s L2-geth RPC to show sync, peers, latest block, and more. To empower Optimism users more, NiceNode will build on existing controls to simplify whitelisting Optimism compatible wallets and dapps with the node. In the Optimism and greater Ethereum communities, there are so many valuable contributors and interested people who are extremely talented in subjects which may not include using a terminal. They should equally be given the power to run a node.

Optimism’s future growth benefits from an increased sense of participation and curiosity that node running users may feel. And this potentially sets a good foundation for further decentralization of Optimism.
Proposal for token distribution (under 1000 words):

  • How will the OP tokens be distributed?
    • The tokens will be distributed to contributors of the integration of the Optimism node (GitHub - smartcontracts/simple-optimism-node: A simple way to run an Optimism node) into NideNode. This includes designers, coders, writers of documentation, etc.
    • For each line of work, 70% of the tokens will be given to the initial work. The remaining 30% will be distributed (perhaps “dripped” on Optimism) to maintainers with the reason being that Optimism node running config or requirements may change with updates to Optimism’s architecture and infra!
      1. 70,000 (70K) OP tokens for a base implementation of a Docker compose based node (req’d for the simple-optimism-node from user smartcontracts referenced above). This includes UI toggling of Docker compose services/containers and UI controls to set environment variables for the simple-optimism-node. This is a big change from the current NiceNode architecture which only runs 1 Docker container.
      1. 20,000 (10K) OP tokens for implementation of adding and removing whitelisted urls or browser extensions to the node. A hard-coded list of common wallets and dapps should shown to users and be easily modified through pull-requests.
      1. 30,000 (30K) OP tokens for UI/UX designs and flows for 1,2
      1. 10,000 (10K) OP tokens for the NiceNode NodeSpec for Optimism (https://github.com/jgresham/nice-node/tree/main/src/common/NodeSpecs). The NodeSpec should define nearly all possible configuration settings for the Optimism node (the settings are defined in the NodeSpec json and dynamically created in the NiceNode UI already).
      1. 10,000 (10k) OP tokens for a launch blog post, announcement, screen recording tutorial, and quick-10-second gif to show how easy it is, to be posted on NiceNode’s Mirror, Twitter, (& Optimism’s) Discord. This includes answering questions to Twitter & Discord users for 2 days after the posts.
  • How will this distribution incentivize usage and liquidity on Optimism?
    Optimism’s future growth benefits from an increased sense of participation and curiosity that node running users may feel. It seems to reason that node running users will use Optimism more if they can directly contribute to the network and be a part of big, benevolent community which holds public goods funding to the highest standard.

  • Why will the incentivized users and liquidity remain after incentives dry up?
    This does not directly apply to our grant. However, contrary to user’s seeking monetary benefits from token incentives, node running users would presume to be more committed to the long-term success of Optimism.

  • Over what period of time will the tokens be distributed?
    As mentioned earlier, 70% of the tokens will be distributed as the work in done. I expect the work to be done in ~4 months. The remaining 30% of tokens will be for “maintenance” work for ~6 months after the initial work is completed to ensure future Optimism node configurations continue to work as described.

  • Has your project previously received an OP token grant? If yes, what’s the status of these tokens?
    No

  • How much will your project match in co-incentives?
    We have received very limited funds from two public goods funding rounds (CLR EthStaker and Gitcoin GR14). We can not necessarily “match” the OP tokens, however we have a limited, but proven record of continuing to build after receiving funds and distributing those funds to contributors!

1 Like

Just checking in to see if you would like this proposal to be evaluated in Voting Cycle #6 according to the updated grant proposal template?