Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/makerdao/ilk-registry
A publicly-modifiable registry of ilks in the Dai Stablecoin System.
https://github.com/makerdao/ilk-registry
ethereum makerdao solidity
Last synced: 3 months ago
JSON representation
A publicly-modifiable registry of ilks in the Dai Stablecoin System.
- Host: GitHub
- URL: https://github.com/makerdao/ilk-registry
- Owner: makerdao
- License: agpl-3.0
- Created: 2020-06-08T20:11:52.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-03-07T16:17:33.000Z (over 1 year ago)
- Last Synced: 2024-04-06T09:33:40.393Z (7 months ago)
- Topics: ethereum, makerdao, solidity
- Language: Solidity
- Homepage:
- Size: 90.8 KB
- Stars: 22
- Watchers: 13
- Forks: 18
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-smart-contract-development - DSS Ilk Registry
- awesome-dapptools - DSS Ilk Registry
README
# Ilk Registry
![Build Status](https://github.com/makerdao/ilk-registry/actions/workflows/.github/workflows/tests.yaml/badge.svg?branch=master)A publicly-modifiable registry of `ilk`'s in the Dai Stablecoin System.
## Public addresses
Kovan: [0xc3F42deABc0C506e8Ae9356F2d4fc1505196DCDB](https://kovan.etherscan.io/address/0xc3F42deABc0C506e8Ae9356F2d4fc1505196DCDB)
Goerli: [0x525FaC4CEc48a4eF2FBb0A72355B6255f8D5f79e](https://goerli.etherscan.io/address/0x525FaC4CEc48a4eF2FBb0A72355B6255f8D5f79e)
Mainnet: [0x5a464C28D19848f44199D003BeF5ecc87d090F87](https://etherscan.io/address/0x5a464C28D19848f44199D003BeF5ecc87d090F87)
## Requirements
* [Dapptools](https://github.com/dapphub/dapptools)
## About
Provides an on-chain list of `ilk` types in the DSS system.
Useful for external contracts or web frontends which need to iterate over the on-chain ilk types and/or access information about a particular ilk.
* Modify the registry
* `add(address joinAdapter)`: Add a new ilk to the registry by passing the Join Adapter address. The adapter must be live on mainnet and can not already be included in the registry.
* `remove(bytes32 ilk)`: Remove an ilk from the registry if it's adapter has been caged.
* `update(bytes32 ilk)`: Update the `flip` and `pip` contracts in storage for a given `ilk`.* Get information from the registry
* `list()`: return a `bytes32[]` of available ilk types.
* `list(uint256 start, uint256 end)`: returns a `bytes32[]` of a portion of the complete list.
* `get(uint256 pos)`: get the `bytes32` ilk type from an indexed position in the array.
* `info(bytes32 ilk)`: return information about an ilk
* `name`: token name (`string`)
* `symbol`: token symbol (`string`)
* `class`: classification code of the ilk (`uint256`)
* `dec`: token decimals (`uint256`)
* `gem`: token address
* `pip`: price feed
* `join`: token join adapter
* `flip`: ilk flipper
* `count()`: return number of ilks as `uint256`
* `pos(bytes32 ilk)`: the location in the `ilks` array for this `ilk`
* `gem(bytes32 ilk)`: the `address` of the ilk's token contract
* `pip(bytes32 ilk)`: the `address` of the ilk's pip contract
* `join(bytes32 ilk)`: the `address` of the ilk's join adapter
* `flip(bytes32 ilk)`: the `address` of the ilk's flipper contract
* `dec(bytes32 ilk)`: the number of decimals for an `ilk` as `uint256`
* `name(bytes32 ilk)`: the name of the token (if available) as `string`
* `symbol(bytes32 ilk)`: the token symbol (if available) as `string`* `auth` functions (available to MakerDAO governance)
* `file(bytes32 what, address)`: Update core contract values
* `file(bytes32 ilk, bytes32 what, address)`: Update ilk data values
* `file(bytes32 ilk, bytes32 what, uint256)`: Update ilk data values
* `file(bytes32 ilk, bytes32 what, string calldata)`: Update ilk data values
* `rely(address)` and `deny(address)`: configure `auth` users
* `removeAuth(bytes32 ilk)`: remove an uncaged ilk adapter## Testing
```
$ dapp update
$ make test
```