not approved

Open Source Snapshotter

₳60,333.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Feasibility
Value for money
Impact / Alignment
Solution

We will create an open source snapshot tool where anyone can provide a policy ID and get a snapshot of all addresses with a token from that policy in it.

Problem:

A snapshot is required to identify the list of NFT/FT holders for a specific policy ID. However, there are currently no open source tools available to easily create a snapshot.

Yes Votes:
₳ 28,875,899
No Votes:
₳ 65,082,383
Votes Cast:
245

[IMPACT] Please describe your proposed solution.

Snapshots are required for several reasons. Some of these cases are:

  • Whitelist holders of an NFT from a specific PolicyID
  • Airdrop rewards to holders of an NFT from a specific PolicyID
  • Identify all members of a project for the purposes of allowing voting
  • Analyze the movement of assets from one wallet to the next for a specific PolicyID
  • etc.

While building on Cardano, we have needed to take snapshots for a wide variety of reasons. Creating an open source solution for generating snapshots will allow the Cardano community to be less dependent on the limited number of builders who are taking snapshots on a regular basis. This is especially important in cases where snapshots are only needed for a short period of time (like a specific event). With open source snapshotter code, an individual can take a snapshot to satisfy his/her immediate needs and then tear down any required infrastructure without relying on a 3rd party.

[IMPACT] How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?

This open source snapshot tool will bring the ability for anyone to create snapshots and not rely on the limited development resources of builders within the space. This directly addresses the challenge and making it easier to build on Cardano. It also helps people new to Cardano by providing free tools that they can use to get their projects off the ground faster.

[IMPACT] How do you intend to measure the success of your project?

The success of this project will be measured by the number of people who use the snapshotter code.

[IMPACT] Please describe your plans to share the outputs and results of your project?

We will create a github repo with the code and relevant documentation. We will also leverage Canucks Publishing and Voteaire social channels to disseminate information.

[CAPABILITY/ FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability?

We currently use a shapshotter for the operation of Voteaire for on-chain voting. We have also implemented a snapshotter for NFT/FT staking solutions built for Cardano projects. We are very familiar with the technical requirements of this project and the benefit it will bring the entire community.

[CAPABILITY/ FEASIBILITY] What are the main goals for the project and how will you validate if your approach is feasible?

The goals of the project are:

  • create a tool that people can use to generate snapshots based on PolicyID

  • open source the tool so that people can leverage the code for their own projects

  • increase the adoption of Cardano by providing tooling for newcomers

    [CAPABILITY/ FEASIBILITY] Please provide a detailed breakdown of your project’s milestones and each of the main tasks or activities to reach the milestone plus the expected timeline for the delivery.

The project breakdown is as follows:

  1. Planning
  2. Kickoff
  3. Resource planning and allocation
  4. Architecture/planning - best way to create an open source version of snapshot code that we've already developed
  5. Create a github repo
  6. Project setup (epics/stories/etc.)
  7. Development
  8. Setup of development environment
  9. Creation of snapshotter code
  10. Documentation
  11. Testing - needs to be robust if we are open-sourcing it
  12. Deployment
  13. Final commit to the github repo
  14. Finalization of documentation
  15. POC - video of working code

Overall timing is approximately 3 months.

[CAPABILITY/ FEASIBILITY] Please describe the deliverables, outputs and intended outcomes of each milestone.

The deliverables will be as follows:

  1. Planning - DELIVERABLE: project plan
  2. Development - DELIVERABLE: codebase for snapshotter
  3. Deployment - DELIVERABLE: documentation, video of working code

[RESOURCES & VALUE FOR MONEY] Please provide a detailed budget breakdown of the proposed work and resources.

Budget breakdown is as follows (in USD):

  1. Planning - $3,600
  2. Development - $9,900
  3. Deployment - $2,700

[RESOURCES & VALUE FOR MONEY] Who is in the project team and what are their roles?

MSVN Distributed Systems consists of the following full-time individuals, as well as additional contractors whom we bring on as required to accelerate efforts

Michael Stewart - CTO

  • 18+ years of software development and architecture experience.
  • Member of the Cardano community since 2017
  • Co-Founder of MSVN (Canucks Publishing, Voteaire.io)
  • https://www.linkedin.com/in/codefly/

Vivek Nankissoor - CEO

  • 15+ years of experience in database requirements, design, and development

  • Established and grew web analytics, marketing automation, and QA practices

  • Co-Founder of MSVN (Canucks Publishing, Voteaire.io)

  • https://www.linkedin.com/in/viveknankissoor/

    [RESOURCES & VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?

Snapshots are required by every NFT project that wants the addresses for every holder as a minimum use case. For builders, the more complex the DApp, the more likely a snapshotter is required.

As such the value could be reflected in this way:

  • 150 NFT projects out there and perhaps another 100 projects that would need a snapshotter
  • Approximately 20hrs to implement a rudimentary snapshotter
  • This would require the skillset of someone who would charge a rate of: $95 USD/hr
  • This would cost a total of ~$475,000 USD if each project had to put the resources toward creating their own snapshotter. That is the minimum amount saved by producing an open source solution to handle snapshots.

Community Reviews (1)

Comments

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00