Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fantasy Soccer League with Youtube Demo #129

Open
grantshares-dapp bot opened this issue Nov 23, 2024 · 5 comments
Open

Fantasy Soccer League with Youtube Demo #129

grantshares-dapp bot opened this issue Nov 23, 2024 · 5 comments
Labels
request-for-funding GrantShares: Request for Funding

Comments

@grantshares-dapp
Copy link

Abstract

The plan is to launch a Fantasy soccer league on N3

Proposal Information

Description

To create a decentralized, blockchain-based fantasy soccer league that allows fans to engage with soccer in a fun way.

This platform gives fans the ultimate fantasy experience—draft real-life soccer stars, build your dream team, and score points as your players dominate the season. It's all the excitement of soccer!

Motivation

The idea to launch a blockchain-based fantasy soccer league comes from the exciting mix of growing sports fandom, the thrill of digital ownership, and the buzz of decentralized tech.

Fantasy soccer is designed to be fun, easy, and accessible for everyone—no app downloads needed! Just dive straight into the action from any browser and start building your dream team using GAS.

Goals

Allow users to create & manage their team with a buy in price of X GAS, where 25% will go towards cost of the platform & 75% will enter the main pot which the top 3 players will share.

Digital Ownership, allow user to own the player cards as NFT's for each season.

Use blockchain’s transparency to make every interaction verifiable and secure.

Enable fans to earn points based on player performance fostering a fun ecosystem with real value.

Deliverables & Roadmap

Specify deliverables in detail, including the following info for each:

  • Total Estimated Duration: 150 days
  • Full-Time Equivalent (FTE): 1
  • Total Budget: 2600 GAS

The roadmap:

  1. Deploy 3 contracts.
  • NFT Contract: Mint soccer player NFTs.
  • Token Contract: Enable buying and interacting within the game.
  • Main Contract:
    • Create leagues
    • Create teams
    • Allow users to join leagues
    • Enable buying and selling of players.
    • Allow users to manage players (move them between the bench and active positions to score points).
  1. Complete the "Blockchain Monitoring" Library:
  • Integrate with Neo-CLI to track transactions and notifications from the contracts.

Backend Application 1:

  • Retrieve football data from an external API.
  • Calculate player points and update user scores.
  • Generate cartoon-style images of football players using AI (based on real photos).
  • Upload player images to NeoFS.
  • Generate player prices dynamically based on performance.
  • Create scripts for team creation, including importing all relevant player data and images

Database (MongoDB):

  • Store blockchain notifications.
  • Maintain records of player scores and user scores.

Backend Application 2:

  • Serve as a lightweight API to retrieve data from MongoDB.

Frontend Application:

  • Hire a designer to create a professional template for development.

Deliverables Verifiability

Most of my contracts will be public, ensuring that all information is transparent and available for anyone to verify.

My contracts are available to look at & verify.
The Youtube demo is under "Portfolio of Projects / Past Experience"

Budget Plan

Budget Plan

50% towards hosting the platform (Non blockchain part, frontend-backend)

10% will go towards the access soccer API's which I can use to retrieve soccer player statistics & AI image generation API

20% will go towards website design ( I am not a designer, so will need to hire someone)

20% will go towards my time

About You / Your Organization

  • Individual/Entity Name: GreenCake
  • Website: None
  • GitHub Organization (if applicable): None

Short-Bio

I am a seasoned web developer with over 8 years of experience, including 6 years in full-stack development and 2-3 years specializing in backend development. I have 8 months of hands-on blockchain development experience, with 3–4 months focused on the Neo blockchain platform.

Portfolio of Projects / Past Experience

While I don’t have anything to share publicly yet, I’ve created a demo showcasing my plans on Neo.

The demo includes:

  • A blockchain monitoring library.
  • A MongoDB database.
  • A backend application for retrieving data.
  • A very basic frontend application.

The purpose of this demo is to demonstrate that while I don’t have 10 years of experience in blockchain development, it’s not rocket science, and I’ve made significant progress in a short time.

You can watch the demo here: https://www.youtube.com/watch?v=rvGOKws0rfo


Proposal Info 📋

  • Proposal Type: request-for-funding

  • Amount Requested: 2600

  • Token: 0xd2a4cff31913016155e38e474a2c06d08be276cf (GAS)

  • Receiver Address: NQfSrLLeeZRMtueJ3Gxcao7AebHa4nC791 (0x70ceabd46ea4c79a96e61695de03325eb27b1934)

  • Created by: @GreenCakes-png 🚀

  • Raw Intents: 👀

[ {
  "target_contract" : "0x6276c1e3a68280bc6c9c00df755fb691be1162ef",
  "method" : "releaseTokens",
  "params" : [ {
    "type" : "Hash160",
    "value" : "d2a4cff31913016155e38e474a2c06d08be276cf"
  }, {
    "type" : "Hash160",
    "value" : "70ceabd46ea4c79a96e61695de03325eb27b1934"
  }, {
    "type" : "Integer",
    "value" : "260000000000"
  } ],
  "call_flags" : 15
} ]

👇 React with 👍 if you liked it, or 👎 if you think this proposal can be enhanced!

@grantshares-dapp grantshares-dapp bot added the request-for-funding GrantShares: Request for Funding label Nov 23, 2024
@deanragnarok
Copy link

Hi @GreenCakes-png. Thanks for resubmitting the proposal. I'm just dropping a comment to let you know my team has seen this and that we'll circle back with thoughts once everyone has had a chance to review 👍

@deanragnarok
Copy link

Hi @GreenCakes-png - I'm speaking for the NNT vote right now. We discussed your proposal internally at length yesterday and have a few questions.

  • Would you be open to breaking your proposal up into milestone proposals, so we'd be able to release funding based on certain deliverables being achieved? You may look to proposals such as those from Pixudi and iOS SDK as examples of where we have done this in the past. If so, could you breakdown how that might look in this instance?

  • As a one man team, can you speak to any contingencies or plans to help this project operate if you are low on time, out of commission, or just choose to no longer continue the project? This strikes us as the type of application that requires a lot of continued maintenance and engagement, and our perception is that this would be a side project for you. We are interested in understanding how you imagine the longer term burden / requirements.

  • What is your plan to attract users? We note there is no marketing allocation in your budget. If you're looking to make this a revenue generating project, do you have an idea of how many users you'll need to keep it sustainable, pay API / hosting fees etc?

  • Lastly we noticed you'd removed all your comments from the previous proposal. We were just curious as to your reasoning for this, and if there is anything specifically you had stated that you re-evaluated.

@GreenCakes-png
Copy link

Hello @deanragnarok,

  • Would you be open to breaking your proposal up into milestone proposals, so we'd be able to release funding based on certain deliverables being achieved? You may look to proposals such as those from Pixudi and iOS SDK as examples of where we have done this in the past. If so, could you breakdown how that might look in this instance?

I’ve reviewed this suggestion and understand its potential benefits. However, I want to clarify how I typically work.

For example, blockchain-specific work, like contracts and a blockchain monitoring library, could be one milestone. Meanwhile, frontend development, backend functionality, and the scoring system could form another milestone.

That said, I tend to work holistically. Even if I split the project into milestones, I would likely work on everything concurrently. This integrated approach often allows me to make updates and improvements across all components as I progress. For instance, I might refine contracts while working on the frontend or backend systems.

If milestone-based deliverables are a requirement for funding, I’m happy to adjust and provide a breakdown that aligns with your expectations. However, please note that for me, the division wouldn’t impact how I approach the work itself.

  • As a one man team, can you speak to any contingencies or plans to help this project operate if you are low on time, out of commission, or just choose to no longer continue the project? This strikes us as the type of application that requires a lot of continued maintenance and engagement, and our perception is that this would be a side project for you. We are interested in understanding how you imagine the longer term burden / requirements.

You are correct in recognizing this as a side project—it's something I genuinely enjoy working on. However, my goal is to reach a stage where my involvement is minimal, ensuring the project can sustain itself with little to no manual intervention.

For instance, in Stage 1, I plan to update one of the backend applications to streamline script creation. This will allow essential tasks—like setting up leagues based on upcoming events or generating teams and players—to be automated. Scripts would be pre-configured and easily executable without requiring significant time or effort from me.

In Stage 2, I aim to take automation further. Ideally, the application would not only generate but also execute scripts directly on the blockchain contract. By provisioning the contract with sufficient gas for long-term operation, the backend could handle all required actions independently, reducing the need for my involvement entirely.

This approach stems from practical constraints: I don’t have the funds to hire another developer for ongoing maintenance, so I’m prioritizing automation to ensure sustainability. Of the funds requested in this proposal, 30% is allocated to myself, but realistically, I don’t expect to personally benefit from this amount—it would go entirely toward hosting costs and contract fees.

My primary focus is to make the system as autonomous as possible to ensure its viability in the long term, regardless of my availability.

  • What is your plan to attract users? We note there is no marketing allocation in your budget. If you're looking to make this a revenue generating project, do you have an idea of how many users you'll need to keep it sustainable, pay API / hosting fees etc?

I’ll admit that I haven’t thought much about marketing yet, as the project is still in its very early stages. Being a developer with no marketing background, this aspect hasn’t been a focus for me so far.

Regarding costs, I’m not sure if it was clear from the demo, but creating just four teams (Argentina, France, Morocco, and Croatia) consumed 12 GAS, and that didn’t include all the properties. Adding those would likely increase the cost even more. For a tournament like the World Cup, which has 32 teams, the expenses would scale up significantly.

To avoid going into a loss, I estimate needing around 50+ users just to cover contract fees, though I haven’t done precise calculations. This number doesn’t even account for hosting and API costs. However, even 50 users seems like a stretch at this stage.

To address this, I’m considering a model inspired by OpenSea. Instead of minting all players on day one, the system would allow users to join a league (e.g., with a 5 GAS entry fee). Player NFTs wouldn’t be minted immediately; instead, minting would occur only when users purchase specific players. For example, if someone selects Lionel Messi during the drafting process, clicking “Buy Lionel Messi” would trigger the contract to mint his NFT using GAS already stored in the contract.

This approach ensures that only purchased players are minted, significantly reducing upfront costs and unnecessary GAS usage. By aligning minting with actual user demand, I hope to make the project more sustainable while minimizing fees.

  • Lastly we noticed you'd removed all your comments from the previous proposal. We were just curious as to your reasoning for this, and if there is anything specifically you had stated that you re-evaluated.

To be honest, at the time, I was feeling discouraged and considered stepping away entirely. I had even planned to delete my account after removing the comments and closing the proposal. The lack of engagement was disheartening—many other proposals seemed to receive limited feedback unless they clearly aligned with what you found favorable. For those under discussion for long periods, it felt like there wasn’t enough direct communication about whether they had a chance or not. Instead of leaving them in limbo, a straightforward response would have been more helpful.

For my own proposal, I was receiving just one or two comments a week, and it felt like there wasn’t much interest. This made me feel like my efforts were being overlooked, so I decided to withdraw everything.

However, when I logged in to remove my account, I noticed there was doubt expressed about whether I had the necessary blockchain development experience to complete the project. That motivated me to prove that while I may not have years of experience, I am fully capable of delivering. I decided to push forward and work on the contracts to a functional stage, alongside a notifications library, and a working frontend and backend application. While there is still work to be done, I hope this demonstrates that I’m capable and that blockchain development isn’t as difficult as some might have assumed.

@deanragnarok
Copy link

Thanks for the response @GreenCakes-png

I’ve reviewed this suggestion and understand its potential benefits. However, I want to clarify how I typically work.

For example, blockchain-specific work, like contracts and a blockchain monitoring library, could be one milestone. Meanwhile, frontend development, backend functionality, and the scoring system could form another milestone.

That said, I tend to work holistically. Even if I split the project into milestones, I would likely work on everything concurrently. This integrated approach often allows me to make updates and improvements across all components as I progress. For instance, I might refine contracts while working on the frontend or backend systems.

If milestone-based deliverables are a requirement for funding, I’m happy to adjust and provide a breakdown that aligns with your expectations. However, please note that for me, the division wouldn’t impact how I approach the work itself.

I completely understand what you're saying in regards to your development approach. Speaking for conversations we have had within my team, I want to make clear we are trying to find ways to fund you, rather than reasons not to.

Thus, although it may not be the preferred approach, breaking your proposal into milestones deliverables may help other voting members more easily evaluate and look more favorably on your proposal. Releasing smaller chunks of funding as work is delivered is so much easier to get across the line. The analogy I always use is that every grant is a leap of faith - the more certain we can be of where we will land, the more successful the proposals tend to be.

Note that I'd recommend suggesting milestone breakdowns here for discussion and feedback before opening a new proposal.

To be honest, at the time, I was feeling discouraged and considered stepping away entirely. I had even planned to delete my account after removing the comments and closing the proposal. The lack of engagement was disheartening—many other proposals seemed to receive limited feedback unless they clearly aligned with what you found favorable. For those under discussion for long periods, it felt like there wasn’t enough direct communication about whether they had a chance or not. Instead of leaving them in limbo, a straightforward response would have been more helpful.

For my own proposal, I was receiving just one or two comments a week, and it felt like there wasn’t much interest. This made me feel like my efforts were being overlooked, so I decided to withdraw everything.

We appreciate your patience and coming back for a second crack. Improving the response times here in GrantShares is something that is under discussion right now, but please don't let it dissuade you. Everyone who contributes to GrantShares does it on the side, and it does take some time to earnestly review proposals. Some members are just extremely time poor right now. Like I said though, we are always motivated to find reasons to fund, rather than turn away. So stay with us and if there is a path that can be found that is agreeable to everyone, we'll find it.

@GreenCakes-png
Copy link

Thanks for the response, @deanragnarok

It’s been almost three weeks, and out of eight members, only one has taken the time to respond. Not sure what that says, but oh well...

I completely understand what you're saying in regards to your development approach. Speaking for conversations we have had within my team, I want to make clear we are trying to find ways to fund you, rather than reasons not to.

Thus, although it may not be the preferred approach, breaking your proposal into milestones deliverables may help other voting members more easily evaluate and look more favorably on your proposal. Releasing smaller chunks of funding as work is delivered is so much easier to get across the line. The analogy I always use is that every grant is a leap of faith - the more certain we can be of where we will land, the more successful the proposals tend to be.

Note that I'd recommend suggesting milestone breakdowns here for discussion and feedback before opening a new proposal.

Regarding the milestones.

The development of smart contracts is a critical milestone, but it will likely be the last to be finalized. This is because the contracts will undergo continuous testing and refinement as they interact with other components of the application.

The frontend represents another milestone, but its completion is dependent on the backend and smart contract functionalities. While it is a necessary part of the project, it is not a high priority at this stage since the rest of the system must be operational first.

The third milestone focuses on the first backend application. This system will monitor the blockchain for relevant events and manage player data, such as ownership details, activity status, and more. However, its functionality is closely tied to both the smart contracts and the second backend system.

The fourth milestone involves developing a second backend application to integrate data from a football API. This system will continuously update player scores and statistics while working in conjunction with the first backend to generate cartoon representations of players. These images will then be stored securely on NeoFS.

Importantly, none of these milestones can truly be considered complete in isolation, as each one relies heavily on the others. The interdependence of these components means the entire system must be fully integrated and functional before any single milestone can be deemed finished.

Finally, the last milestone is to achieve maximum automation. The goal is to create an application where the only input required is an upcoming event with its dates. From there, the app will automatically generate the necessary scripts to deploy on the blockchain, enabling seamless creation of new events.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
request-for-funding GrantShares: Request for Funding
Projects
None yet
Development

No branches or pull requests

2 participants