GithubHelp home page GithubHelp logo

csggene3 / expressions-of-peace Goto Github PK

View Code? Open in Web Editor NEW

This project forked from demo-verse/expressions-of-peace

0.0 0.0 0.0 6.64 MB

how would you imagine, express, acknowledge and make a world peace?

Home Page: https://expressionsofpeace.org

JavaScript 70.85% CSS 18.35% HTML 2.30% Solidity 8.50%

expressions-of-peace's Introduction

Expressions of Peace

Expressions of Peace are sincere ways of resiliently, simply, expressing peace, being the core civil component of an undeniable, resilient World Peace.

They are extending the Freedom of Expression. Via the experiencing and "using" of this emerging human right, we'll be sharing equal significance on making a world peace.

Introducing peer-to-peer diplomacy:

Peers (stakeholders) being individuals, states, NGOs, Corporations (last two are optional but probably necessary in the years ahead).

Below was the solution design that started with NFTs. That evolved in the time between February 2022 and August 2022: From having, to being.

NFTs Now, it's changed to a sort of points of truth (multiple versions of social contracts).


This tool's purpose is making a World Peace observable and sustainable.

Paulette Walker

Yoko Ono

Right now, it is based on a very simple contract, where only the last expression written to that contract is stored in the contract, as a string field. (needs safety in size of string, listed as feature request here: demo-verse#2

First contract deployed at the end of July, to Rinkeby network. https://rinkeby.etherscan.io/address/0x6d584295790d2c9f7f2d4249b6caebc15b1da682

As of 9.8.2022 we've made a hard switch to Goerli network since Rinkeby's faucet was not working. However will bring it back as multi-chain support soon.

https://goerli.etherscan.io/address/0xe563950e3d97c1cf11665163d4b14ead092c503c

One can simply check transaction hashes to display each expression made with each set operation on the contract.

For example, this transaction: https://rinkeby.etherscan.io/tx/0xa7df107d235becf0d5d8c891c8a8d5be01eff05a406b1b330549fbbb23dc69c2

to try it yourselves.

for an any transaction, click to their tx hash and go to its page. go below the page and click to see more .. at the end, you'll see a window of Input data. Raw

There's a button for decode input data. click to that, then you can see it as a readable, string.

like this: readable

Of course, we'll be doing all this within the dapp :)

Hope this gives a hint for what's next, it is acknowledgements.

We've found that easiest way is referring/quoting from another expression, with its transactionHash on the ledger.

Special thanks to @ChristianChiarulli for open sourcing their web3 knowledge, stack and especially well use of the ethers library on this repo, resulting we decided building on top of that code, separating hardhat logic to another repository for now, to be added soon.

Bests, in Peace

Our stack

  • Solidity (To write our smart contract)
  • React (Create our frontend)
  • Metamask (Web Wallet that will allow us to interact with the ethereum blockchain)
  • Ethers (web3 library for interacting with the blockchain and our smart contract)

Installing a web wallet

Before getting started make sure you have a web wallet installed, I recommend Metamask. It is essentially just a browser extension that will allow us to interact with the ethereum blockchain. Just follow the instructions provided in the link to install and make sure not to use the same seed phrase for development for real ethereum/money.

Our Smart Contract

// SPDX-License-Identifier: MIT
pragma solidity >=0.5.0 <0.9.0;

contract ExpressionOfPeace {
    string current_expression;

    constructor(string memory _expression) {
        current_expression = _expression;
    }

    function set(string memory _expression) public {
        current_expression = _expression;
    }

    function get() public view returns (string memory) {
        return current_expression;
    }
}

This contract is very simple. When the contract is deployed it is instantiated with a value called current_expression, after deploying the contract you have the ability to get the data or set the data.

to install dependencies and get the project locally up and running, execute the following command on your shell:

npm install && npm start

expressions-of-peace's People

Contributors

shadowpii avatar streamerd avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.