2020-03-27 10:53:20 +01:00
# Gnosis Safe Multisig
2018-03-12 11:26:53 +01:00
2020-03-27 10:53:20 +01:00
The most trusted platform to store digital assets on Ethereum
2018-03-12 11:26:53 +01:00
## Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
### Prerequisites
What things you need to install the software and how to install them
```
2019-04-12 18:41:47 +04:00
yarn add truffle // recommended usage of -g flag
yarn add ganache-cli // recommended usage of -g flag
yarn add flow-type // recommended usage of -g flag
2018-03-12 11:26:53 +01:00
```
2019-04-12 18:41:47 +04:00
We use [yarn ](https://yarnpkg.com ) in our infrastacture, so we decided to go with yarn in the README
2019-09-25 15:15:45 +04:00
### Installing and running
2018-03-12 11:26:53 +01:00
A step by step series of examples that tell you have to get a development env running
2019-10-02 14:14:45 +02:00
Install dependencies for the project:
2018-03-12 11:26:53 +01:00
```
2019-04-12 18:41:47 +04:00
yarn install
2019-09-30 08:56:37 +02:00
```
2019-10-02 14:14:45 +02:00
For using the Rinkeby services:
2019-09-30 08:56:37 +02:00
```
2019-04-12 18:41:47 +04:00
yarn start
2018-03-12 11:26:53 +01:00
```
2019-10-02 14:14:45 +02:00
If you prefer using Mainnet ones:
2019-09-24 17:49:01 +04:00
```
2019-09-30 08:56:37 +02:00
yarn start-mainnet
2019-09-24 17:49:01 +04:00
```
2019-09-25 15:15:45 +04:00
### Building
2019-09-30 08:56:37 +02:00
For Rinkeby:
2019-09-25 15:15:45 +04:00
```
yarn build
```
2019-09-30 08:56:37 +02:00
For Mainnet:
2019-09-25 15:15:45 +04:00
```
2019-09-30 08:56:37 +02:00
yarn build-mainnet
2019-09-25 15:15:45 +04:00
```
2018-03-12 11:26:53 +01:00
## Running the tests
2019-07-20 19:45:17 +02:00
1. Run `transaction-history-service`
```
git clone https://github.com/gnosis/safe-transaction-service.git
2019-12-13 18:05:13 +01:00
cd safe-transaction-service
2019-07-20 19:45:17 +02:00
git checkout develop
docker-compose build
2019-12-10 17:26:43 +04:00
# it comes enabled by default in docker-compose
sudo service postgresql stop
2019-07-20 19:45:17 +02:00
docker-compose up -d
```
Check that the service is running at https://localhost:8000
2019-05-31 17:58:35 +04:00
2019-07-20 19:45:17 +02:00
2. Migrate Safe Contracts:
2019-05-31 17:58:35 +04:00
```
git clone https://github.com/gnosis/safe-contracts.git
cd safe-contracts
yarn
npx truffle migrate
```
2019-07-20 19:45:17 +02:00
3. Migrate Token Contracts for the tests:
2019-05-31 17:58:35 +04:00
Inside `safe-react` directory
```
2019-06-25 18:18:42 +04:00
npx truffle migrate
2019-05-31 17:58:35 +04:00
```
2019-07-17 17:16:40 +04:00
4. Run the tests:
2018-03-12 11:26:53 +01:00
```
2019-04-12 18:41:47 +04:00
yarn test
2018-03-12 11:26:53 +01:00
```
### Break down into end to end tests
Explain what these tests test and why
```
Give an example
```
### And coding style tests
Explain what these tests test and why
```
Give an example
```
## Deployment
Add additional notes about how to deploy this on a live system
## Built With
* [Truffle React Box ](https://github.com/truffle-box/react-box ) - The web framework used
* [Ganache ](https://github.com/trufflesuite/ganache-cli ) - Fast Ethereum RPC client
* [React ](https://reactjs.org/ ) - A JS library for building user interfaces
* [Material UI 1.X ](https://material-ui-next.com/ ) - React components that implement Google's Material Design
* [redux, immutable, reselect, final-form ](https://redux.js.org/ ) - React ecosystem libraries
2019-12-09 03:43:47 -06:00
* [Flow ](https://flow.org/ ) - Static Type Checker
2018-03-12 11:26:53 +01:00
## Contributing
Please read [CONTRIBUTING.md ](https://gist.github.com/PurpleBooth/b24679402957c63ec426 ) for details on our code of conduct, and the process for submitting pull requests to us.
## Versioning
We use [SemVer ](http://semver.org/ ) for versioning. For the versions available, see the [tags on this repository ](https://github.com/gnosis/gnosis-team-safe/tags ).
## Authors
2019-10-02 14:14:45 +02:00
- Germán Martínez([germartinez ](https://github.com/germartinez ))
- Mikhail Mikheev([mikheevm ](https://github.com/mikheevm ))
See the full list of [contributors ](https://github.com/gnosis/gnosis-team-safe/contributors ) who participated in this project.
2018-03-12 11:26:53 +01:00
## License
This project is licensed under the MIT License - see the [LICENSE.md ](LICENSE.md ) file for details
## Acknowledgments
* Thanks for Gnosis Team for providing the Safe contracts.