Skip to content

Commit

Permalink
Merge pull request #28 from sablierhq/develop
Browse files Browse the repository at this point in the history
Merge develop
  • Loading branch information
PaulRBerg committed Dec 12, 2019
2 parents ce033ce + ec700ce commit 5b343f8
Show file tree
Hide file tree
Showing 56 changed files with 4,433 additions and 11,202 deletions.
71 changes: 47 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
<p align="center"><img src="https://i.imgur.com/q6UHTt1.png" width="280px"/></p>

<p align="center">Sablier is a decentralised app for continuous salaries on Ethereum. Read <a href="https://medium.com/sablier-app/introducing-sablier-continuous-payments-on-ethereum-c2bf04446d31" target="_blank">this article</a> to find out more about our mission. For a demo, see <a href="https://www.youtube.com/watch?v=2onYeCwAY3c" target="_blank">this video</a>.</p>
<p align="center">Sablier is the protocol for real-time finance on Ethereum. Read this <a href="https://medium.com/@PaulRBerg/the-protocol-for-real-time-finance-on-ethereum-5a5350db16ae" target="_blank">article</a> to find out more about what we're up to.</p>

<p align="center">
<a href="https://app.netlify.com/sites/infallible-visvesvaraya-6d594e/deploys" alt="Netlify">
<img src="https://api.netlify.com/api/v1/badges/7a05c307-d1c2-43c0-b914-691dc1fa3104/deploy-status">
</a>
<a href="https://circleci.com/gh/sablierhq/sablier" alt="CircleCI">
<img src="https://circleci.com/gh/sablierhq/sablier.svg?style=svg">
</a>
Expand All @@ -25,11 +22,6 @@

---

## Warning :rotating_light:

Please take note that this is experimental, beta software and is provided on an "as is" and "as available" basis. We do
not give any warranties and will not be liable for any loss, direct or indirect through continued use of this codebase.

## Packages :package:

Sablier is maintained as a monorepo with multiple sub packages. Please find a comprehensive list below.
Expand All @@ -38,38 +30,59 @@ Sablier is maintained as a monorepo with multiple sub packages. Please find a co

| Package | Version | Description |
| --------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| [`@sablier/dev-utils`](/packages/dev-utils) | [![npm](https://img.shields.io/npm/v/@sablier/dev-utils.svg)](https://www.npmjs.com/package/@sablier/dev-utils) | Dev utils to be shared across Sablier projects and packages |
| [`@sablier/payroll`](/packages/payroll) | [![npm](https://img.shields.io/npm/v/@sablier/payroll.svg)](https://www.npmjs.com/package/@sablier/payroll) | Payroll proxy |
| [`@sablier/protocol`](/packages/protocol) | [![npm](https://img.shields.io/npm/v/@sablier/protocol.svg)](https://www.npmjs.com/package/@sablier/protocol) | Money streaming protocol |
| [`@sablier/shared-contracts`](/packages/shared-contracts) | [![npm](https://img.shields.io/npm/v/@sablier/shared-contracts.svg)](https://www.npmjs.com/package/@sablier/shared-contracts) | Smart contracts to be shared across Sablier projects and packages |

### Private Packages

| Package | Description |
| --------------------------------------------------- | ------------- |
| [`@sablier/eslint-config`](/packages/eslint-config) | Eslint config |
| [`@sablier/landing`](/packages/landing) | Landing page |
| Package | Description |
| ------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| [`@sablier/dev-utils`](/packages/dev-utils) | [![npm](https://img.shields.io/npm/v/@sablier/dev-utils.svg)](https://www.npmjs.com/package/@sablier/dev-utils) | Dev utils to be shared across Sablier projects and packages |

## Contracts :memo:

Find the addresses for our smart contracts below. They have been audited by [Quantstamp](https://github.com/sablierhq/sablier/tree/audit-v2) and [ConsenSys
Diligence](https://github.com/sablierhq/sablier/tree/audit-v1).

### Ethereum Mainnet

| Name | Address |
| ------------- | --------------------------------------------------------------------------------------------------------------------- |
| CTokenManager | [0x342A6596F50b4Db7c3246C0F4eFb1f06843d7405](https://etherscan.io/address/0x342A6596F50b4Db7c3246C0F4eFb1f06843d7405) |
| Payroll | [0xbd6a40Bb904aEa5a49c59050B5395f7484A4203d](https://etherscan.io/address/0xbd6a40Bb904aEa5a49c59050B5395f7484A4203d) |
| Sablier | [0xA4fc358455Febe425536fd1878bE67FfDBDEC59a](https://etherscan.io/address/0xA4fc358455Febe425536fd1878bE67FfDBDEC59a) |

### Ethereum Testnets

These are Goerli, Kovan, Rinkeby and Ropsten. Each contract has the same address on all testnets.

| Name | Address |
| ------------- | --------------------------------------------------------------------------------------------------------------------- |
| CTokenManager | [0xEE5dfDf2e98FdC572786b9E5649cB8Cc93D47a19](https://etherscan.io/address/0x342A6596F50b4Db7c3246C0F4eFb1f06843d7405) |
| Payroll | [0x7ee114C3628Ca90119fC699f03665bF9dB8f5faF](https://etherscan.io/address/0xbd6a40Bb904aEa5a49c59050B5395f7484A4203d) |
| Sablier | [0xc04Ad234E01327b24a831e3718DBFcbE245904CC](https://etherscan.io/address/0xA4fc358455Febe425536fd1878bE67FfDBDEC59a) |

## Usage :hammer_and_pick:

If you want to use the dapp, head to [beta.sablier.app](https://beta.sablier.app). You'll need
[RinkebyDAI](https://rinkeby.etherscan.io/token/0x8ad3aa5d5ff084307d28c8f514d7a193b2bfe725) for this, which you can get
by calling the `mint` function on Etherscan. The token has 18 decimals, so 1,000 DAI is represented as
`1000000000000000000000`. [Reach out on Telegram](https://t.me/sablier) if you need further help.
If you just want to use the dapps, head to [pay.sablier.finance](https://pay.sablier.finance) to create streams and to
[app.sablier.finance] to withdraw from streams. You'll need an Ethereum wallet and some ERC20 tokens to interact
with the dapps.

If you want to check out and compile the smart contracts for yourself, head to each individual package as presented
above. For example, here are the instructions for `@sablier/protocol`:
To check out and compile the smart contracts, bootstrap the monorepo and head to each individual package as presented
above. For example, these are the instructions for `@sablier/protocol`:

```bash
cd packages/protocol
truffle compile --all
truffle migrate --reset --network development
$ yarn run bootstrap
$ cd packages/protocol
$ truffle compile --all
$ truffle migrate --reset --network development
```

## Contributing :raising_hand_woman:

We highly encourage participation from the community to help shape the development of Sablier. If you are interested in
contributing or have any questions, please ping us on [Twitter](https://twitter.com/SablierHQ).
contributing or have any questions, ping us on [Twitter](https://twitter.com/sablierhq) or [Telegram](https://t.me/sablier);

We use [Yarn](https://yarnpkg.com/) as a dependency manager and [Truffle](https://github.com/trufflesuite/truffle)
as a development environment for compiling, testing, and deploying our contracts. The contracts were written in [Solidity](https://github.com/ethereum/solidity).
Expand Down Expand Up @@ -130,6 +143,16 @@ To lint a specific package:
$ PKG=@sablier/protocol yarn lint
```

### Prettier

To run prettier on all packages:

```bash
$ yarn prettier
```

Prettier cannot be run on individual packages.

### Test

To run all tests:
Expand Down
4 changes: 1 addition & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
"commitizen": "^3.1.2",
"coveralls": "^3.0.6",
"cz-conventional-changelog": "^2.1.0",
"fixpack": "^2.3.1",
"husky": "^1.3.1",
"lcov-result-merger": "^3.1.0",
"lerna": "^3.13.1",
Expand All @@ -18,13 +17,12 @@
"license": "LGPL-3.0",
"private": true,
"scripts": {
"bootstrap": "yarn install && yarn build",
"build": "lerna link && yarn wsrun --package $PKG --recursive --stages -c build",
"build:ui": "yarn wsrun --package $PKG --parallel -c build:ui",
"clean": "yarn wsrun --package $PKG --parallel -c clean",
"clean:node_modules": "lerna clean --yes; shx rm -rf node_modules",
"commit": "git-cz",
"coverage": "yarn wsrun --package $PKG --serial -c coverage",
"fixpack": "lerna exec --parallel -- yarn fixpack; fixpack",
"lerna": "lerna",
"lint": "yarn wsrun --package $PKG --parallel -c lint && yarn prettier:ci",
"prettier": "prettier --config .prettierrc --write '**/*.{js,json,jsx,md,sol,ts,tsx}'",
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-utils/.eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
"env": {
"node": true
},
"extends": ["airbnb-base", "@sablier/eslint-config"]
"extends": ["airbnb-base", "@paulrberg/eslint-config"]
}
2 changes: 1 addition & 1 deletion packages/dev-utils/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const sablierDevUtils = require("@sablier/dev-utils");
## Contributing

We highly encourage participation from the community to help shape the development of Sablier. If you are interested in
contributing or have any questions, please ping us on [Twitter](https://twitter.com/SablierHQ).
contributing or have any questions, please ping us on [Twitter](https://twitter.com/sablierhq).

### Install Modules

Expand Down
12 changes: 7 additions & 5 deletions packages/dev-utils/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"version": "1.0.0",
"author": {
"name": "Sablier",
"email": "paul@sablier.app",
"url": "https://sablier.app"
"email": "hello@sablier.finance",
"url": "https://sablier.finance"
},
"bugs": {
"url": "https://github.com/sablierhq/sablier/issues"
Expand All @@ -19,11 +19,12 @@
"@babel/plugin-proposal-object-rest-spread": "^7.4.0",
"@babel/plugin-transform-runtime": "^7.6.0",
"@babel/preset-env": "^7.5.5",
"@sablier/eslint-config": "1.0.0",
"@babel/runtime": "^7.7.6",
"@paulrberg/eslint-config": "^1.0.0",
"eslint": "^6.1.0",
"eslint-config-airbnb-base": "^14.0.0",
"eslint-config-prettier": "^6.7.0",
"eslint-plugin-import": "^2.18.2",
"fixpack": "^2.3.1",
"mocha": "^6.2.0",
"shx": "^0.3.2"
},
Expand All @@ -38,7 +39,8 @@
},
"repository": {
"type": "git",
"url": "git+https://github.com/sablierhq/sablier.git"
"url": "https://github.com/sablierhq/sablier.git",
"directory": "packages/dev-utils"
},
"scripts": {
"build": "yarn clean && babel --copy-files --out-dir ./lib --root-mode upward ./src",
Expand Down
30 changes: 0 additions & 30 deletions packages/eslint-config/README.md

This file was deleted.

34 changes: 0 additions & 34 deletions packages/eslint-config/package.json

This file was deleted.

53 changes: 0 additions & 53 deletions packages/eslint-config/src/index.js

This file was deleted.

11 changes: 0 additions & 11 deletions packages/landing/.eslintrc

This file was deleted.

23 changes: 0 additions & 23 deletions packages/landing/.gitignore

This file was deleted.

0 comments on commit 5b343f8

Please sign in to comment.