The governance proposal outlines the specifics of making open-sourcing a prerequisite for grant approval and designating the Decentraland DAO public GitHub repository for code storage.
Abstract
This proposal advocates for a significant shift in the approach of this DAO for its Grants Program by requiring that all projects funded through DAO resources make their code open source.
Motivation
Decentraland DAO Grants Program has already allocated $13,272,124.00 to different projects since its creation. As of the beginning of 2023 (DAO Grants Program - New Categories & Requirements) open-sourcing the code was made a requirement for the Platform category. Prior to 2023 and up till today, across all other categories, only a limited number of projects were open source and/or accessible to the community, with some of them even quitting and not creating value for the environment.
To avoid that happening, it has become evident that there is a clear need to mandate that all grant recipients publish their project code in a manner that is accessible to every creator seeking to build, advance, and enhance their projects and the platform as a whole. The barriers to entry are already too high for new creators; open-sourcing and maintaining a public repository will help to make it easier for new creators to be onboarded and for existing projects to enhance their performance and content.
All code produced with DAO funds should start being considered in terms of āpublic goodsā from now on, promoting the idea of collaboration and the ethos of decentralization of the project, fostering the modular growth of the ecosystem.
Specification
From the date of approval of this governance proposal, all projects seeking funds from the DAO must commit to open-sourcing their code as a mandatory condition.
All code generated using DAO funds must be hosted in the Decentraland DAO public GitHub repository (Decentraland-DAO Ā· GitHub), which will be overseen by the Grant Support Squad.
Failure to open source code or maintain the GitHub repository up-to-date may result in an immediate pause and potential revocation of a grant.
GitHub repository set up as part of the onboarding process.
Conclusion
This proposal marks a significant step towards transparency, collaboration, and value-driven development within the DAO Grants program. Open-sourcing of code will promote a more accessible and inclusive environment for creators while embracing the ethos of decentralization.
The specification of this proposal is lacking.
What do you mean by āopen sourceā, which assets are covered, what license, under what timeline.
Also the Decentraland-DAO repo is fully controlled by the GovSquad.
I agree with the proposal and Iām voting yes again in this round. However, I think we should clarify that any code developed before DAO funding is optional and not required.
Sorry @HPrivakos wasnāt trying to copy you . Had the same thought last round and was just reiterating those concerns. Thank you Fehz for helping to move this forward.
Agreed. Indeed, we created the grants repo with the help of the governance squad (itās part of the Decentraland DAOās GitHub: GitHub - Decentraland-DAO/grants), and here we are compiling all the codes from the platform category projects, which since 2023 has been a requirement for that category. If the categories of grant projects that must be open source are expanded, we can continue to feed that repository without any issues. Regards!
additionally, would 3D models be in scope, or just the code? asking because we have at least one game right now that has an easter eggstucked away for players to find. if weāre able to just download the build and poke around it in blender, that would mess with the magic of discovery.
I think itās worth noting that while Iām in support of DAO funded games being open-sourced, there are situations where some code may want to be kept private.
If a project has blockchain credentials for claiming within their codebase, then maybe it shouldnāt be publicized. Imagine airdrop wallets getting drained because the credentials were exposed. Perhaps there are other situations where code should not be fully open-sourced and a white-labeled dummy can be submitted instead?
I think this proposal is an absolute necessity to keep DCL and the DAO on the path of open sourced metaverse, if the DAO funds something, others should also be able to benefit from that code or build on top of it.
I would add a few caveats from a developer perspective:
.env vars/custom APIs/databases can be considered private and no need for open source for security
If there is proprietary tech that cannot be opensource, it should also be self-funded without grants, users can still request funding for portions of their work that is non-proprietary.
There should be rules and examples around how the tech is open sourced, i.e. example library standards and integrated via UPM/NPM or other package management - granteeās code should be forced to then use the publicly released package to reinforce how it works.
Having a pre-written opensource license that must be appended to all grant funded code
Example code that can test/run the open sourced code even without private servers/env vars (mocked input/output objects would suffice).
Startup scripts if a DB is required that can generate a local test DB
Test scene implementation if applicable (DCL Unity scene)
I do think there is room for non-open sourced grants still, for things like server operational costs, but they should be rare and likely under 5-figures, perhaps we can make these rules applicable to any development grant over $5-10k.
Fehz has taken most of the feedback received prior to yesterday to make a very solid first draft for the final prop, but weāll want to read all the last-minute callouts and make sure they are taken into account and added.
So I suppose it depends on how soon you consider āsoonā
I didnāt take my ADHD meds today, so Iām mostly just compiling a list of line items people have put in grant budgets for the DAO Price Guide prop or procrastinating.
So if Fehz isnāt free to update the draft today or tomorrow, I wonāt be getting to it until Thursday, maybe Friday.
Of course, we are not stupid. It needs an example .env though.
I donāt agree. People will abuse that to not open source their scene. They will have a game.ts that just import their library, and the entirety of their scene will be āproprietaryā.
If the whole scene (including the servers it needs) cannot be run by anyone, then it should not be funded by the DAO.
Exception is if this āproprietaryā service is a public service, like Playfab, Azure or AWS, but in this case you should describe the whole architecture for someone to be able to replicate it.
Thatās fair, ensuring 100% open source (aside from aforementioned services) would probably move us away from larger corporate based grants as well, which I am 100% for.