# DAO IMPLEMENTATION IN RUST FOR NEAR ## Project Description The goal is to implement the Rust version of LAOLAND so anyone using NEAR can use it to manage a DAO. This is also an opportunity to write a standard interface for this architecture so anyone can upgrade their DAO on NEAR or Ethereum. ## Team Members * David Roon * James Young * Craig Blake ## Team Code Repos * David Roon: https://github.com/adridadou * James Young : https://github.com/jamesyoung * Craig Blake: https://github.com/craigwblake-openlaw ## Team LinkedIn Profiles * David Roon: https://www.linkedin.com/in/davidroon/ * James Young : https://www.linkedin.com/in/jamessyoung/ * Craig Blake: https://www.linkedin.com/in/craigwblake ## Intended Language of Development Rust, Solidity ## Development Roadmap Please note the team also has other features and work items outside of this grant application. The timeline below is not based on two people working full-time but rather cumulative 1 full-time person. Deliverables marked with * have a detailed list of types/methods that will be implemented in the next section "Specification Details" ### Timeline and Milestones #### Milestone 1 - Foundation This milestone's goal is to create a minimal yet functional DAO on NEAR. On top of implementing the DAO, we will setting up the dev environment and learn how to test the application. Duration: TBD Deliverables: - Dev enviornment to implement & test the application locally - Unit & functional tests - Deployment code (DAOFactory) - DaoRegistry v0.1 with - adapter mgmt - bank mgmt (no checkpoint implementation needed) - member mgmt - proposal mgmt - Adapter mgmt - Voting - onboarding (being able to add shares to members. No need for contributions yet) - No real security implemented yet (no access control) Funds Requested: TBD #### Milestone 2 - ACL & Further adapters Now that we have a working DAO, it is time to implement different adapters and also make the structure more secure by adding security & ACL. Duration: TBD Deliverables: - Adding ACL to DaoRegistry & adapt existing adapters - Grant / Financing adapter (an adapter to define, vote and distribute grants to proposals) - Adapter to get funds into the DAO #### Milestone 3 - NEAR Specific documentation Once we have a functional DAO for NEAR, it is time to document it all so anyone can work on it, deploy it and write new adapters. This documentation is NEAR specific, i.e. it explains in the context of the NEAR implementation. Duration: TBD Deliverables: - Documentation about DaoRegistry Interface - how to deploy a new Dao - How to write a new Adapter - How each existing adapter works #### Milestone 4 - DAO Standard interface documentation (EIP has & NEAR equivalent) Once we see that we have a solid interface for Rust & Solidity, it is a good time to write a standard proposal for both platform so we can easily interact with one another. Duration: TBD Deliverables: - Standard documentation for NEAR and Ethereum with identical (or near identical) description with the implementation attached ## Additional Information The first milestone is the only one that needs to be done first. The others can be done in parallel or in a different order. Of course, we can always add new milestones once we identify new needs. The additional works I can think of are: - UI for the DAO (more than a milestone, it's a new stream of work) - Additional adapters Each milestone will also needs to account for management costs since there is work that needs to be done here to organize the different parties and get the work done ## Funds Required Overall TBD