==================
Proyecto realizado para el NCD Bootcamp NEAR Hispano.
WeFund es un servicio que, a través de la blockchain, buscar fondeo para nuestros proyectos, además de que nos permite fondear proyectos de la comunidad y entre amigos.
1. Crear un nuevo proyecto, pudiendo recibir fondeo
2. Consultar los proyectos públicos de la comunidad
3. Agregar amigos
4. Consultar los proyectos de un amigo
5. Donar a proyectos públicos
6. Donar a proyectos de amigos
- node.js >=12 instalado (https://nodejs.org)
- yarn instalado
npm install --global yarn
- instalar dependencias
yarn install --frozen-lockfile
- crear una cuenta de NEAR en testnet
- instalar NEAR CLI
yarn install --global near-cli
- autorizar app para dar acceso a la cuenta de NEAR
near login
git clone https://github.com/paul-cruz/WeFund
cd ConnectIoT yarn install
yarn build:contract:debugyarn dev:deploy:contract yarn install yarn startUna vez deployado el contrato, usaremos el Account Id devuelto por la operacion para ejecutar los comandos, que será el account Id del contrato [será utilizado como CONTRACT_ACCOUNT_ID en los ejemplos de comandos]
Utilizaremos YOUR_ACCOUNT_ID para identificar el account Id que utilizamos para hacer las llamadas a los métodos.
Utilizaremos FRIEND_ACCOUNT_ID para identificar el account Id de algún amigo registrado en el servicio.
near call CONTRACT_ACCOUNT_ID register '' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID createProject '{"name":"MyProject","description":"This is my project", "goal":20, "isPublic":True}' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID getPublicProjects '' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID getPublicProject '{"id":"MyProject"}' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID addFriend '{"friendId": "FRIEND_ACCOUNT_ID"}' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID getFriendsProjects '{"friendId":"FRIEND_ACCOUNT_ID"}' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID getFriendsProject '{"friendId":"FRIEND_ACCOUNT_ID", "name":"ProjectFriend"}' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID donatePublicProject '{"name":"PublicProject"}' --accountId YOUR_ACCOUNT_ID --amount 10 near call CONTRACT_ACCOUNT_ID donateFriendProject '{"friendId":"FRIEND_ACCOUNT_ID","name":"ProjectFriend"}' --accountId YOUR_ACCOUNT_ID --amount 10 near call CONTRACT_ACCOUNT_ID viewPeople '' --accountId YOUR_ACCOUNT_ID near call CONTRACT_ACCOUNT_ID getFriends '' --accountId YOUR_ACCOUNT_ID