# workstreams dev
- https://www.figma.com/file/Jghc3xcWOHkC52qEaRQqrq/Work-Streams?node-id=147%3A519
-
## user stories
- [x] Create workstream
- [x] Fund workstream
- [ ] Set splits for workstream's drip
- [ ] withdraw funds as a split
- [ ] withdraw funds as a withdraw
- [ ] admin workstreams:
- [ ] pause/play
- [ ]
## Diagrams
[)](https://lucid.app/lucidchart/ef7bac30-cff8-4263-868c-bef3184bd9d3/view)
## Drips
### Reasons to fork it
- Support multiple ERC20 over a single hub.
- Right now we create a new ERC20 hub for every new ERC20 token we want to support. This can be invoked by anyone and the owner/admin of the deployment is the `workstreams` smart contract.
- Pass an account owner other than `msg.sender` when setting drips.
- Right now all drips are owned by `Workstreams` contract, with every drip being a different account
- Minor gas optimizations using `solmate` instead of `OpenZeppelin`.
## Open Questions
- cli workflow uses ssh signing. web ui workflow uses ethereum signing. How do we arrive at the same state?
- If we drip to teams, then splits are not