Skip to content

Commit your marriage vows on the blockchain (open-source)

License

Notifications You must be signed in to change notification settings

onggunhao/forevermore

This branch is up to date with soulofamachine/forevermore:master.

Folders and files

NameName
Last commit message
Last commit date
Jul 21, 2018
Jul 17, 2018
Jul 21, 2018
Jul 17, 2018
Jul 25, 2018
Jul 17, 2018
Jul 17, 2018
Jul 17, 2018
Jul 18, 2018
Jul 17, 2018
Jul 17, 2018
Jul 17, 2018
Jul 17, 2018
Jul 17, 2018
Jul 21, 2018
Jul 17, 2018
Jul 17, 2018

Repository files navigation

Forevermore

Forevermore is a smart contract, with a React front-end, that lets you commit your marriage vows to the blockchain. Read the motivation for this project here.

Demo

Forevermore.io

alt text

Build Status

Built Using

Setup

Prerequisite: set up Metamask

Install project dependencies:

$ npm install

Start the app

$ npm run dev

To compile your own contracts: CD into Ethereum directory, then run:

$ node compile.js

To deploy your own contracts:

// Never commit this file!

const HDWalletProvider = require('truffle-hdwallet-provider');
const Web3 = require('web3');
const compiledFactory = require('./build/MarriageRegistry.json');
const fs = require('fs-extra')

const provider = new HDWalletProvider(
  // NEVER SHARE your keys!
  'YOUR OWN KEY FOR DEPLOYING FACTORY CONTRACT',
  'https://mainnet.infura.io/[YOUR ACCOUNT]'
);

const web3 = new Web3(provider);

const deploy = async () => {
  console.log("Starting to deploy...");
  const accounts = await web3.eth.getAccounts();

  console.log("Attempting to deploy from account", accounts[0]);

  const result = await new web3.eth.Contract(JSON.parse(compiledFactory.interface))
    .deploy({ data: '0x' + compiledFactory.bytecode })
    .send({ from: accounts[0], gas: '5000000' });

  console.log(compiledFactory.interface);
  console.log('Contract deployed to', result.options.address);

}
deploy();

Contributing

  1. Fork it the project
  2. Create your feature branch using issue #: git checkout -b issue#-feature
  3. Commit your changes: git commit -am 'Fix/Add/Change: commit msg'
  4. Push to the branch: git push origin issue#-feature
  5. Create a new Pull Request

See full list of outstanding issues here.

License

MIT License

About

Commit your marriage vows on the blockchain (open-source)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 74.2%
  • CSS 25.8%