<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Compound Labs - Medium]]></title>
        <description><![CDATA[Compound is an algorithmic, autonomous interest rate protocol built for developers, to unlock a universe of open financial applications. - Medium]]></description>
        <link>https://medium.com/compound-finance?source=rss----22e4df2110f5---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Compound Labs - Medium</title>
            <link>https://medium.com/compound-finance?source=rss----22e4df2110f5---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 08:03:09 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/compound-finance" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Compound Treasury Launches Borrowing for Institutions]]></title>
            <link>https://medium.com/compound-finance/compound-treasury-launches-borrowing-for-institutions-432af2cd7e6b?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/432af2cd7e6b</guid>
            <category><![CDATA[compound-finance]]></category>
            <dc:creator><![CDATA[Reid Cuming]]></dc:creator>
            <pubDate>Wed, 14 Sep 2022 13:02:30 GMT</pubDate>
            <atom:updated>2022-09-14T13:02:30.073Z</atom:updated>
            <content:encoded><![CDATA[<p>Last year, Compound Treasury <a href="https://medium.com/compound-finance/announcing-compound-treasury-for-businesses-institutions-83d4484fb82e">launched an institutional cash management solution</a> powered by the Compound Protocol, offering a 4.00% APR on USD and USDC with daily liquidity. Our clients, including fintechs, crypto companies, and banks, have been able to rely on Compound Treasury as a predictable source of yield.</p><p>In May, Compound Treasury became the first DeFi-backed company to receive a <a href="https://medium.com/compound-finance/compound-treasury-sp-credit-rating-897aff3a6f8c">credit rating from a major agency</a>, introducing the highest level of transparency and accountability in the industry.</p><p>Starting today, to meet the growing demand for liquidity, <strong>institutions can now borrow from Compound Treasury, using digital assets as collateral</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*83P1a9jn5cLc78Yd7uXbZw.png" /></figure><h4>Market-leading Terms</h4><p>Accredited institutions can borrow USD or USDC with fixed rates starting at 6% APR, using Bitcoin, Ether, and supported ERC-20 assets as collateral.</p><p>Borrowing is offered with an open-ended term and no repayment schedule, providing our clients the flexibility to draw liquidity and repay balances as they see fit–for as long as they remain overcollateralized.</p><h4>Institutional Liquidity, Powered by DeFi</h4><p>Liquidity is provided by Compound Treasury clients and the Compound Protocol (with over $3 billion in assets, and more than $285 billion in total transaction volume since inception). <strong>Collateral never leaves Compound Treasury’s control</strong>, increasing transparency and the safety of funds for our clients.</p><h4>Meeting Market Demand</h4><p>Institutions continue to face challenges trusting opaque CeFi products or interacting directly with DeFi protocols to manage their balance sheet. Recent market volatility has reduced available liquidity and trustworthy options for borrowers; however, demand for liquidity remains robust.</p><blockquote>“Compound Treasury can now address demand for liquidity with a simple, reliable borrowing solution, while continuing to provide the same trusted service we’ve delivered to clients earning interest over the past year,” said Reid Cuming, VP of Compound Treasury, “Introducing borrowing expands our cash management product to meet more needs of our clients.”</blockquote><p>Our vision for Compound Treasury is to be the most trusted and transparent partner for institutions to access the core benefits of DeFi. Learn more about Compound Treasury’s institutional DeFi offerings at <a href="https://compoundtreasury.com/">compoundtreasury.com</a>.</p><h4>About Compound Treasury</h4><p>Compound Treasury provides cash management solutions for institutions, powered by the Compound Protocol. Accredited institutions can earn 4% APR on USD and USDC with daily liquidity, or borrow using Bitcoin, Ether, and supported ERC-20 assets as collateral.</p><p>Our clients benefit from the transparency and liquidity of DeFi, through a compliant counterparty providing white-glove service. Compound Treasury is offered by Compound Prime, LLC, a subsidiary of Compound Labs, Inc.</p><p>To get in touch with our sales team — <a href="/service/mailto:sales@compoundtreasury.com">sales@compoundtreasury.com</a></p><p>For any media inquiries — <a href="/service/mailto:media@compoundtreasury.com">media@compoundtreasury.com</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=432af2cd7e6b" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/compound-treasury-launches-borrowing-for-institutions-432af2cd7e6b">Compound Treasury Launches Borrowing for Institutions</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Compound III is Live]]></title>
            <link>https://medium.com/compound-finance/compound-iii-is-live-a7983dee7e60?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/a7983dee7e60</guid>
            <category><![CDATA[compound-finance]]></category>
            <category><![CDATA[defi]]></category>
            <dc:creator><![CDATA[Robert Leshner]]></dc:creator>
            <pubDate>Fri, 26 Aug 2022 01:01:22 GMT</pubDate>
            <atom:updated>2022-08-26T01:01:19.420Z</atom:updated>
            <content:encoded><![CDATA[<h4>Transparent, fair, autonomous interest rate markets for all</h4><p>Compound launched in September 2018, and was the first instance of user-to-protocol (rather than peer-to-peer) collateralized borrowing. The ideas and innovations from this first version powered the growth of DeFi that followed.</p><p>In May 2019, the second version of Compound introduced portable collateral (cTokens), and progressive decentralization that transformed Compound into a community-governed protocol, with over $100 Billion of transactions.</p><p>Today, following a successful <a href="https://compound.finance/governance/proposals/116">COMP Governance proposal</a>, Compound III is live.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*13a0xFOzkRnjOkOm8wYWXA.jpeg" /></figure><h3>Back to Basics</h3><p>Compound III is a streamlined version of the protocol, with an emphasis on security, capital efficiency, and user experience. Complexity wasn’t added — it was removed. What remains is <em>the most effective tool for borrowers in DeFi</em>.</p><p>The most profound change was to move away from a pooled-risk model, where users can borrow any asset. In this model (which Compound pioneered) collateral is constantly rehypothecated. A single bad asset (or oracle update) can drain all assets from the protocol.</p><p>Instead, each deployment of Compound III features a <strong>single borrowable asset</strong>. When you supply collateral, it remains your property. It can never be withdrawn by other users (except during liquidation). Capital efficiency increases too — collateral is more “useful” when you know which asset is being borrowed ahead of time.</p><p>The first deployment of Compound III allows you to borrow USDC using ETH, WBTC, LINK, UNI, and COMP as collateral.</p><p>While you won’t earn interest on collateral anymore, you’ll be able to borrow more; with less risk of liquidation and lower liquidation penalties; while spending less on gas.</p><h4>New Features</h4><ul><li>An entirely redesigned risk management / liquidation engine to increase the safety of funds while simultaneously being more borrower-friendly.</li><li>Market-wide limits on the size of individual collateral assets to limit risk.</li><li>Decoupled earn &amp; borrow interest rate models; governance has full control over economic policy.</li><li>Advanced account management tools, which enable new UX patterns and applications on top of the protocol.</li><li>Chainlink is the exclusive price feed, which is portable to EVM chains beyond Ethereum.</li><li>Governance is simple &amp; easy to manage; the protocol is a monolith, with parameters set through a single <em>Configurator</em> contract.</li></ul><p>For details and a list of all changes, please see the full <a href="https://v3-docs.compound.finance/">documentation</a>.</p><h4>Security</h4><p>Compound III was audited by <a href="https://blog.openzeppelin.com/compound-iii-audit/">OpenZeppelin</a> and <a href="https://chainsecurity.com/security-audit/compound-comet/">ChainSecurity</a>, and formally verified in partnership with Certora.</p><p>The protocol depends on new technology which might contain undiscovered vulnerabilities. In order to protect users, the first market was initialized with modest collateral limits. The community is encouraged to observe the protocol before scaling across assets &amp; blockchains.</p><h3>Compound is in your hands</h3><p>Launching this next-generation protocol has been a massive effort bringing together all stakeholders in the Compound ecosystem; thank you to everyone that contributed, reviewed, tested, audited, debated, and voted to bring the protocol to life.</p><p>Out of the gate, Compound III is controlled &amp; owned by the community:</p><ul><li>COMP Governance has exclusive control over the deployed Compound III market and all future deployments.</li><li>The codebase uses a <a href="https://github.com/compound-finance/comet/blob/main/LICENSE">business source license</a> which COMP Governance can modify &amp; grant usage to, as it sees fit, by making changes to compound-community-licenses.eth, an ENS domain owned by the community.</li></ul><p>If you have any questions, ideas, or issues, join the community in <a href="https://discordapp.com/invite/874ntdw">Discord</a>. From all of us at Compound, 📈.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a7983dee7e60" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/compound-iii-is-live-a7983dee7e60">Compound III is Live</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Compound Treasury Receives S&P Credit Rating]]></title>
            <link>https://medium.com/compound-finance/compound-treasury-sp-credit-rating-897aff3a6f8c?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/897aff3a6f8c</guid>
            <category><![CDATA[credit-rating]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[compound-finance]]></category>
            <dc:creator><![CDATA[Reid Cuming]]></dc:creator>
            <pubDate>Mon, 09 May 2022 13:16:05 GMT</pubDate>
            <atom:updated>2022-05-09T13:47:42.819Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KN-zFtoZaQ4CPi6iTgAVcw.png" /></figure><p>Today, Compound Treasury received a <strong>B-</strong> credit rating from S&amp;P Global Ratings. This makes Compound Treasury the first institutional decentralized finance (DeFi) offering to be rated by a major credit rating agency, and signals tremendous progress in the crypto industry’s maturity, as traditional institutions begin to judge the risks of digital asset powered financial offerings.</p><p>S&amp;P’s outlook is stable, reflecting an expectation of limited loan losses on the Compound Treasury platform. In assigning its rating and stable outlook, S&amp;P cited the uncertain regulatory regime for stablecoins (USDC), stablecoin-to-fiat convertibility risks, Compound Treasury’s currently limited capital base and 4.00% return obligation; S&amp;P views the Compound protocol (the source of yield for Compound Treasury) track record of zero USDC losses as partially mitigating the capital risks of the offering.</p><blockquote>“Compound Treasury is predictable, liquid, compliant, transparent, and now rated,” said Reid Cuming, Compound Treasury General Manager, “S&amp;P’s rating helps our institutional clients more easily understand the opportunity and risks of crypto-powered cash management”.</blockquote><p>As part of ongoing discussions with S&amp;P, Compound Treasury’s ratings could be upgraded in upside scenarios such as greater regulatory clarity for the digital asset industry, or a longer track record of stable performance.</p><p>Compound Treasury was supported throughout the credit rating evaluation process by Klaros Group, an advisory and investment firm, and Gauntlet, a financial modeling and simulation platform for blockchains.</p><p>Find Compound Treasury’s full ratings report at <a href="https://disclosure.spglobal.com/ratings/en/regulatory/article/-/view/type/HTML/id/2835522">S&amp;P Global Ratings Action Disclosures</a> page.</p><h4>About Compound Treasury</h4><p><a href="https://compoundtreasury.com/">Compound Treasury</a> is a crypto-powered cash management solution designed for institutions. Accredited investors can earn 4% on USD and USDC with daily liquidity; the easiest way for institutions to access the benefits of decentralized finance.</p><p>Compound Treasury is offered by Compound Prime, LLC, a subsidiary of Compound Labs, Inc.</p><p>For sales inquiries — <a href="/service/mailto:sales@compoundtreasury.com">sales@compoundtreasury.com</a></p><p>For media inquiries — <a href="/service/mailto:media@compoundtreasury.com">media@compoundtreasury.com</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=897aff3a6f8c" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/compound-treasury-sp-credit-rating-897aff3a6f8c">Compound Treasury Receives S&amp;P Credit Rating</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcing Compound Treasury, for Businesses & Institutions]]></title>
            <link>https://medium.com/compound-finance/announcing-compound-treasury-for-businesses-institutions-83d4484fb82e?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/83d4484fb82e</guid>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[compounds]]></category>
            <dc:creator><![CDATA[Calvin Liu]]></dc:creator>
            <pubDate>Mon, 28 Jun 2021 19:01:11 GMT</pubDate>
            <atom:updated>2021-06-28T19:01:09.143Z</atom:updated>
            <content:encoded><![CDATA[<figure><a href="http://compound.finance/treasury"><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*VzHLYKrpjMmGT3P7" /></a></figure><p>Over the years the Compound protocol has been used by hundreds of thousands of DeFi users to safely earn attractive interest rates on over <a href="http://compound.finance/markets">$120 billion of crypto assets</a>. Through market volatility both upward and downward the protocol has performed flawlessly, and is a pillar of the DeFi ecosystem — a reliable source of high yield and deep liquidity.</p><p>The mission of Compound Labs, the company that built the protocol and handed it over to the community, is to build products and services that expand the Compound protocol’s functionality, and enable more users to access that functionality. For example, <a href="http://compound.cash/">Gateway</a> takes the Compound protocol multi-chain.</p><p>Today, we’re proud to announce <a href="http://compound.finance/treasury"><strong>Compound Treasury</strong></a>, designed for non-crypto native businesses and financial institutions to access the benefits of the Compound protocol.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*63alJGMPSBL3nn6nyjgHmg.gif" /></figure><p><strong>High-Yield Interest Powered by USDC</strong></p><p>Working with Fireblocks and Circle, Compound Treasury has built a product and flow-of-funds that enables Neobanks, Fintech startups, and other large holders of U.S. Dollars to access the interest rates available in the USDC market of the Compound protocol, while abstracting away protocol-related complexity including private key management, crypto-to-fiat conversion, and interest rate volatility. The customer experience is simple:</p><ul><li>Wire U.S. Dollars to your Compound Treasury Account, and begin earning a guaranteed, fixed interest rate of 4% per year — orders of magnitude higher than the average U.S. Dollar Savings Account.</li><li>Fund and withdraw from your account anytime, with a 24-hour turnaround.</li><li>Low minimums, no maximums, and no fixed terms or durations.</li><li>Detailed, auditable balance statements available monthly and on-demand.</li></ul><p><strong>The Future of Fintech</strong></p><blockquote>“As a fintech focused on building inspirational and motivational products, we’re constantly looking for more ways to deliver even more value back to our members. Working with Compound Treasury, we’ll be able to give our members access to the protocol’s interest rates through a simple and unified experience that can enable even more people to improve their financial outcomes.”</blockquote><blockquote>— Trevor Marshall, Chief Technology Officer, Current</blockquote><p>Compound Treasury has been built to the needs of financial institutions, following many months of customer and regulatory compliance research. We’ve begun onboarding customers, and plan to expand access to Treasury Accounts significantly over the coming months.</p><p>Our vision is that Compound Treasury becomes <em>the</em> bridge for non-crypto financial institutions to deliver the core benefits of DeFi to the next billion users, and we are extremely excited to work with our customers to navigate this enormous opportunity.</p><p>If you are a U.S. Dollar-centric financial institution interested in secure, flexible access to fixed high-yield interest rates, either for your own benefit or the benefit of your end users, learn more on the <a href="http://compound.finance/treasury"><strong>Compound Treasury</strong></a> website, and contact us at <strong>treasury@compound.finance</strong>. We’re looking forward to meeting you.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=83d4484fb82e" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/announcing-compound-treasury-for-businesses-institutions-83d4484fb82e">Announcing Compound Treasury, for Businesses &amp; Institutions</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Introducing Gateway]]></title>
            <link>https://medium.com/compound-finance/gateway-623f6f48d2b6?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/623f6f48d2b6</guid>
            <category><![CDATA[gateway]]></category>
            <category><![CDATA[compounds]]></category>
            <dc:creator><![CDATA[Robert Leshner]]></dc:creator>
            <pubDate>Mon, 01 Mar 2021 17:43:35 GMT</pubDate>
            <atom:updated>2021-03-01T19:00:38.662Z</atom:updated>
            <content:encoded><![CDATA[<p>Three months ago, our team published a whitepaper for “<a href="https://twitter.com/compoundfinance/status/1339660221359124481?s=20">Compound Chain</a>”, a distributed ledger capable of transferring value &amp; liquidity between peer ledgers. While many bridge solutions rely on wrapping (porting) assets, a cross-chain interest rate market would allow you to borrow assets native to one chain (e.g. ETH), with collateral from another chain (e.g. DOT).</p><p>Today, we’re proud to announce a prototype based on that paper, named <em>Gateway.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aQuhGBaGzaVG5Y4CeKGDAg.png" /></figure><p>Gateway is a <a href="https://www.parity.io/substrate/">Substrate</a> blockchain, governed by COMP token-holders on Ethereum. From the get-go, Gateway is fully upgradeable; <a href="https://compound.finance/governance">governance</a> is able to directly upgrade the blockchain by voting on code upgrades, without forks or downtime.</p><p>We chose Substrate so that we could focus on building application code, instead of inventing consensus algorithms; it’s a modern framework built on a modern language, Rust.</p><h4>Functionality</h4><p>If you’re familiar with how the Compound protocol works, Gateway should feel intuitive, with a few improvements:</p><ol><li>Interest is earned and paid in dollars, using CASH, Gateway’s native unit of account. If you borrow one Ether, you’ll only ever owe one Ether.</li><li>The Gateway risk engine is more robust; risk is based on the volatility of assets you use as collateral, as well as the assets you borrow — leading to capital efficiency improvements for less volatile assets.</li><li>You can quickly and inexpensively transfer any asset in Gateway to other users — even wallets from other blockchains.</li></ol><p>There’s a lot to discover: get started by visiting <a href="https://compound.cash/">compound.cash</a>.</p><h4>Validators</h4><p>Validators (nodes) earn a portion of all interest, in every market, in addition to modest transaction fees. This creates an incentive to properly validate transactions that scales with the growth of Gateway.</p><p>On the Gateway testnet, <a href="https://docs.google.com/document/d/1Dz-pAFn49A1vss0hxOeRIC4XZHXBTbhYrjle-TrvMgA/edit">anyone can become a validator</a>; in production, validators (or the process for choosing validators) will ultimately be chosen by governance.</p><h4>Next Steps</h4><p>Gateway will evolve into the backbone of a global interest rate market, capable of supporting <em>any</em> asset — including the wave of currencies, assets, and tokens yet to be created. But it starts with humble beginnings.</p><p>Starting today, Gateway is running as a testnet, connected to Ethereum’s Ropsten testnet.</p><p>Over the coming months, we’ll work with the community &amp; validators to:</p><ul><li>Audit the <a href="https://linear.app/compound-finance/issue/COMP-1208/ui-polish-for-public-testing">codebase</a>, improve all aspects of the blockchain, conduct stress-tests, and finally launch to production.</li><li>Connect Gateway to the Compound protocol running on Ethereum.</li><li>Add Starports on other blockchains.</li></ul><p>There’s a lot of work to do — and we’d love your help. Join the community forum at <a href="https://www.comp.xyz/">comp.xyz</a> and the <a href="http://compound.finance/discord">Discord</a> #development channel.</p><p>From all of us at Compound Labs, 📈.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=623f6f48d2b6" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/gateway-623f6f48d2b6">Introducing Gateway</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[ETHOnline 2020: 17 Hackathon Project Ideas]]></title>
            <link>https://medium.com/compound-finance/ethonline-2020-17-hackathon-project-ideas-767a93e6c680?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/767a93e6c680</guid>
            <category><![CDATA[ethonline]]></category>
            <category><![CDATA[hackathons]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[compound-finance]]></category>
            <category><![CDATA[ethglobal]]></category>
            <dc:creator><![CDATA[Adam Bavosa]]></dc:creator>
            <pubDate>Thu, 08 Oct 2020 19:17:04 GMT</pubDate>
            <atom:updated>2020-10-08T19:17:04.061Z</atom:updated>
            <content:encoded><![CDATA[<p>Compound is sponsoring <a href="https://ethglobal.co/">ETHGlobal</a>’s Autumn 2020 event: <a href="https://ethonline.org/">ETHOnline</a>. This virtual event features a global hackathon and learning sessions with leading innovators in the Ethereum community.</p><figure><img alt="ETHOnline 2020 Hackathon" src="https://cdn-images-1.medium.com/max/1024/1*dX4IjjmnJBbGKWnn8XJMCw.png" /></figure><p>In addition to learning about the latest in ETH 2.0 and new EIPs, hackathon participants have the chance to compete for $125,000 worth of prizes. Compound has created three bounties to inspire hackers to innovate in DeFi.</p><h3>Hackathon Bounties</h3><p>These are the three bounties, totaling $5,500 in cUSDC prizes.</p><ol><li>Most original project that uses Compound.js: $1,500 of cUSDC</li><li>Best Compound Governance tooling: $1,500 of cUSDC</li><li>Best proposed improvement to the Compound Protocol — $2,500 cUSDC</li></ol><p>Let’s walk through some valid hackathon project ideas to get teams started building.</p><h3>Compound.js Bounty</h3><p><a href="https://medium.com/compound-finance/compound-js-9d1e3e5742d8">Compound.js</a> is a JavaScript SDK for Ethereum and the Compound Protocol which supports Node.js and the web browser. It is a wrapper around Ethers.js. The bounty prize will go to the team that implements the SDK in their project with the most original DeFi use-case.</p><p><strong>Hackathon Project Ideas:</strong></p><ul><li>Build a simple, open source user interface with all Compound Protocol functions using Compound.js.</li><li>Build a full stack application that sends users email and/or text message alerts when Compound Governance events occur. This project would <strong>double-count</strong> toward this bounty and the Governance tool bounty.</li><li>Build an information and data visualization dashboard for the Compound Protocol interest rates over time. There are other metrics like supplies and borrows that can be included.</li><li>Build a game where NFTs are awarded to Compound users based on accomplishing certain actions; for example, receive a “First Supply” NFT for each market on Compound, that users receive if they supply to those markets.</li><li>Build a marketplace for delegated borrowing limits; for example, if a user has supplied 100 USDC to Compound but has borrowed nothing, they could “sell” their available borrowing ability on a marketplace to someone else.</li></ul><h3>Compound Governance Bounty</h3><p><a href="https://medium.com/compound-finance/governance/home">Compound Governance</a> arrived earlier this year to fully decentralize the living, on-chain Compound Protocol. This new mechanism of community-led upgrades has created a new opportunity for innovation. The bounty prize will go to the team that creates the best Compound Governance related tool. The submission can be an application, SDK, API, or smart contract(s).</p><p><strong>Hackathon Project Ideas:</strong></p><ul><li>Build a COMP delegate tracker that shows where an address’ delegates came from over time.</li><li>Create a novel system that rewards participation in Compound Governance. If this includes a protocol patch, it would <strong>double-count</strong> toward this bounty and the protocol improvement bounty.</li><li>Create a full-stack, gas-less delegation or voting website for individuals or companies. See the final section of the <a href="https://www.youtube.com/watch?v=HDVTlO759hA">ETHOnline Compound.js workshop video</a> (source code is available on <a href="https://github.com/compound-developers/ethonline-compoundjs-demo">GitHub</a>).</li><li>Build a marketplace where delegates can offer rewards, or solicit payment, for representing COMP-holders in Compound Governance.</li><li>Build tooling that lets users discuss, propose, or vote on governance issues through Twitter or other popular platforms for crypto users.</li><li>Develop a system that makes it easier for the Compound community to coordinate governance actions; for example, where they could build a roadmap together, rather than discuss each proposal one at a time in a vacuum.</li></ul><h3>Compound Protocol Improvement Bounty</h3><p>The Compound Protocol is a community-led Ethereum project. Any developer is able to make code changes that can ultimately be implemented through governance.</p><p>To jumpstart community contribution, a guide was created to walk developers through the process of creating a protocol change (<a href="https://medium.com/compound-finance/a-walkthrough-of-contributing-to-the-compound-protocol-9450cbe2133a">A Walkthrough of Contributing to the Compound Protocol</a>). The bounty prize will go to the team that creates and proposes the best improvement to the Compound Protocol.</p><p>Submissions for this bounty should aim to actually submit their proposal to Compound Governance for consideration, though doing so by the end of the hackathon period is not required.</p><p>As a bonus reward, proposals to Compound Governance may also request an additional success grant for the developer(s), paid out of protocol reserves.</p><p><strong>Hackathon Project Ideas:</strong></p><ul><li>Deploy a Comptroller optimization. Currently, the Comptroller contract is near the Ethereum contract size limit. A refactor of this contract could be beneficial for ongoing feature development. More specific details for this are outlined on the <a href="https://www.comp.xyz/t/a-leaner-meaner-comptroller/461">Compound Community Forum</a>.</li><li>Compound Protocol gas optimizations. Gas costs could be lowered with different implementations of core protocol functions.</li><li>Interest rate model (IRM) changes. Each cToken contract has the ability to point to its own unique IRM. A handful of IRMs are used for the current set of cTokens, but this can be changed as the community sees fit. Creation of a brand new IRM could perhaps be something the community wants but does not know it yet.</li><li>Experiment with adding support for new asset types — for example, interest rate markets for NFTs, indices of tokens, or real-world assets.</li><li>Develop a complementary interest rate model or mechanism that enables supplying and/or borrowing at fixed interest rates.</li><li>Implement supply caps for new cToken markets, so there is a maximum amount of supply allowed into the protocol.</li></ul><h3>Past Hackathon Winners and Runner Up Projects</h3><p>Here are some bounty winners and notable projects from ETHGlobal hackathons in 2020. All of which included the Compound Protocol in their tech stack.</p><ul><li><a href="https://hack.ethglobal.co/showcase/defihedge-reccyBVLFmj28JWo8">DefiHedge</a> — A decentralized protocol for fixed-rate borrowing &amp; interest rates</li><li><a href="https://hack.ethglobal.co/showcase/cchannels-recYwEEcuE3AwKTXT">cChannels</a> — A crypto “bar-tab” type of payment system that uses the Compound Protocol for interest and borrowing with ETH and DAI.</li><li><a href="https://hack.ethglobal.co/showcase/atomic-ninja-recB0E2AxX2FrsukT">Atomic Ninja</a> — An atomic Ethereum transaction batcher with a drag-and-drop user interface for aggregating various DeFi systems.</li><li><a href="https://hack.ethglobal.co/showcase/medici-rec0ZMjaI34c0YEug">Medici</a> — An interest-earning wallet for digital cash.</li><li><a href="https://hack.ethglobal.co/showcase/maximus-recz3XPtk4MgzzNsk">Maximus</a> — A community owned/governed version of MakerDAO that enables supplying/borrowing with Compound.</li><li><a href="https://hack.ethglobal.co/showcase/tcdp-recLEjfhpleHJ55zL">tCDP</a> — Automated movement of assets amongst DeFi protocols to avoid liquidation fears in over-collateralized borrowing.</li><li><a href="https://hack.ethglobal.co/showcase/defido2-rec4Xf2g4TgWWCToM">Defido2</a> — Hardware wallet CLI that has functions for DeFi, which include supplying ETH and DAI to Compound, as well as borrowing.</li><li><a href="https://hack.ethglobal.co/showcase/nfwallets-recErbcXq0xNSP8zX">NFWallets</a> — A browser based wallet that enables users to utilize much of DeFi.</li><li><a href="https://hack.ethglobal.co/showcase/suicide-kings-recRjRqpYlDkipyrq">Suicide Kings</a> — A no-loss ERC1155 game where players vote to win interest generated with Compound.</li></ul><h3>Share Your Hackathon Ideas</h3><p>ETHOnline is already underway. Teams are beginning to form and project ideas are being brainstormed. <strong>The Compound team is here to help.</strong> Join us in the <strong>#sponsor-compound</strong> channel of the <a href="https://discord.gg/FKKkdY6">ETHGlobal Discord</a> or the <strong>#development</strong> channel of the <a href="https://compound.finance/discord">Compound Discord</a>.</p><p>We can help out with hack ideas, use cases, UI/UX, technical questions, code, and more. Be sure to check out the <a href="https://compound.finance/docs">Compound Documentation</a> for developer guides, contract addresses, and code examples.</p><p>Source code for projects are available in the <a href="https://github.com/compound-finance">Compound GitHub</a> organization. Happy hacking and best of luck to the hackathon participants!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=767a93e6c680" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/ethonline-2020-17-hackathon-project-ideas-767a93e6c680">ETHOnline 2020: 17 Hackathon Project Ideas</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[A Walkthrough of Contributing to the Compound Protocol]]></title>
            <link>https://medium.com/compound-finance/a-walkthrough-of-contributing-to-the-compound-protocol-9450cbe2133a?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/9450cbe2133a</guid>
            <category><![CDATA[compounds]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[open-source]]></category>
            <category><![CDATA[development]]></category>
            <dc:creator><![CDATA[Adam Bavosa]]></dc:creator>
            <pubDate>Fri, 02 Oct 2020 18:24:50 GMT</pubDate>
            <atom:updated>2020-11-06T23:37:35.295Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="A Walkthrough of Contributing to the Compound Protocol for Developers" src="https://cdn-images-1.medium.com/max/1024/1*XBFbJzmXZ9BPH5shAtZgyg.png" /></figure><p>The Compound Protocol is free and open financial infrastructure running on the Ethereum blockchain. Anyone with a future vision of the protocol can propose an improvement by writing code.</p><p>Not all protocol changes necessarily require code, but the most involved ones do. In this short guide, we’ll walk through changing the source code and proposing a formal change with Compound Governance.</p><p>Here is an overview of the steps we will take, with the end goal of proposing a new cToken market for the protocol:</p><ol><li>Remove legacy verification checks from the source code for new cTokens that will be added in the future.</li><li>Remove tests for the legacy verification checks, so that all tests succeed. Note that when adding new code, the developer should write additional unit tests to ensure optimal code coverage.</li><li>Create a pull request into the <a href="https://github.com/compound-finance/compound-protocol">Compound Protocol GitHub repository</a>, so the community can review the code changes, and eventually sync them (if approved through governance).</li><li>Deploy a brand new cToken contract for an ERC-20 asset.</li><li>Verify the contract code on <a href="https://etherscan.io/">Etherscan</a>.</li><li>Create a Compound Governance Proposal to add the new asset to the protocol.</li></ol><h4>Prerequisites</h4><p>New to Ethereum development? Try starting a bit smaller with a more basic guide: <a href="https://medium.com/compound-finance/setting-up-an-ethereum-development-environment-7c387664c5fe">Setting up an Ethereum Development Environment</a>.</p><p>Compound Protocol changes are ideated and discussed publicly on the <a href="https://www.comp.xyz/">Compound Community Forum</a>. Before continuing, please read the full manual in the forum for <a href="https://www.comp.xyz/t/contributing-to-compound-protocol/48">Contributing to the Compound Protocol</a>.</p><p>We’ll need to create a <a href="https://github.com/">GitHub account</a>, and <a href="https://github.com/git-guides/install-git">install git</a>. We’ll use these tools to publicly merge new code into the open source repository.</p><p>Skim the <a href="https://github.com/compound-finance/compound-protocol">repository readme</a> to become familiar with the available tools and the development process.</p><p>Learn what Compound Governance is by reading the related blog posts on the <a href="https://medium.com/compound-finance/compound-governance-5531f524cf68">Compound Blog</a>. The governance process is required for incorporating new code changes into the on-chain protocol.</p><h3>Changing Protocol Source Code</h3><p>First, we’ll fork the Compound Protocol source code to our GitHub account. We’ll make changes on the forked repository and create a pull request into the original repository.</p><h4>Code</h4><p>To start, we’ll go to the <a href="https://github.com/compound-finance/compound-protocol">GitHub repository</a> and click the fork button on the right. This makes a personal copy of the repository.</p><figure><img alt="Forking a GitHub code repository" src="https://cdn-images-1.medium.com/max/266/0*sMzyWCvfT_YQrMG5" /></figure><p>Next we’ll go to the forked repository page in our account’s repositories. We’ll click the green code button, then the SSH tab, and finally the ‘copy to clipboard’ button on the right.</p><figure><img alt="Cloning a GitHub code repository" src="https://cdn-images-1.medium.com/max/511/1*jNVECllPz1JwOoTL5vF8VQ.png" /></figure><p>Next we’ll copy the repository to our local machine. We’ll open the terminal and navigate to our programming projects folder. Type “git clone” followed by the ssh address of the forked repository.</p><pre>git clone git@github.com:ajb413/compound-protocol.git</pre><p>Next, we’ll navigate into the repository and install dependencies. Now is a good time to install <a href="https://nodejs.org/en/download/">Node.js</a> (LTS) and <a href="http://npmjs.com/package/yarn">Yarn</a>.</p><pre>cd compound-protocol/<br>yarn install</pre><p>After everything has been installed, we can open the source code with a text editor and begin making changes. The one contract file we will modify is /contracts/CToken.sol. We’ll remove the following lines.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/d2f31524de01367add4b7e2f372e3325/href">https://medium.com/media/d2f31524de01367add4b7e2f372e3325/href</a></iframe><p>We can see in the definitions in /contracts/Comptroller.sol that these methods do not make any changes or conditionally revert. We’ll treat them as dead code that needs to be removed. The existing cToken contracts call them, so we won’t remove them from the Comptroller today.</p><h4>Tests</h4><p>After saving the modified contract file, we’ll change the test code so it succeeds with the newest changes. If we were <em>adding</em> new contract code, we would <em>add more tests</em> to ensure thorough code coverage.</p><p>To run all of the projects tests, use this command on the command line:</p><pre>yarn test</pre><p>To run an individual test file, try something like:</p><pre>yarn test tests/Tokens/borrowAndRepayTest.js</pre><p>When running all tests, we’ll see that 6 tests fail as a result of our contract code changes. Those particular tests can be commented out or deleted. Once the test command yields 0 failed tests, we can continue with our protocol change.</p><h4>Pull Request</h4><p>Once the tests pass, we can create a pull request. When a pull request is open, the community can publicly analyze the code changes to ensure integrity and that best practices are implemented. If the community approves the changes through governance with a passing proposal, the pull request will be merged into the master branch.</p><p>Next we’ll commit the contract and test code changes to the forked repository using Git on the command line.</p><pre>git add contracts/ tests/<br>git commit -m &quot;ctoken changes&quot;<br>git push origin master</pre><p>We’ll go back to the forked repository page on GitHub and refresh it. There should now be a pull request button above the file explorer on the right. We’ll click it to see the merge comparison page.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/955/0*MhGg4lOS6KapZ_eR" /></figure><p>Next we’ll click the green “Create pull request” button to open the public pull request.</p><h3>Deploying New Ethereum Smart Contracts</h3><p>Some, but not all protocol changes require deploying of new smart contracts. When adding a new asset to the protocol, deploying a new cToken contract is required.</p><p>Deploying a cToken contract can be done using Saddle. The Compound Labs team created a command line tool called <a href="https://github.com/compound-finance/saddle">Saddle</a> for Ethereum development. It is already included in the dependencies of the protocol repository.</p><h4>Local Environment Contract Deploy</h4><p>Before we deploy to a public Ethereum network, we’ll first try to deploy the contract on a localhost fork. We’ll need a JSON RPC provider URL for this. One can be acquired for free from <a href="https://infura.io/">Infura</a> or a similar service.</p><p>We’ll go back to our text editor and open saddle.config.js in the project root folder. We’ll duplicate the <strong>development</strong> object within the <strong>networks</strong> object. The duplicate should be named something like <strong>local_fork</strong>.</p><p>In the <strong>providers</strong> array of <strong>local_fork</strong>, we’ll remove the second object that begins with <strong>ganache</strong>. Instead, we’ll replace the entire second object with a localhost JSON RPC URL. The <strong>local_fork</strong>’s providers array should now look like the following:</p><pre>providers: [<br>  {env: &quot;PROVIDER&quot;},<br>  {http: &quot;http://127.0.0.1:8545&quot;}<br>],</pre><p>Now is a good time to globally install <a href="https://www.npmjs.com/package/ganache-cli">Ganache CLI</a> (more on this tool in the <a href="https://medium.com/compound-finance/setting-up-an-ethereum-development-environment-7c387664c5fe">primary guide</a>).</p><p>In a separate terminal window, we’ll use the following command to make a local fork of the Kovan network blockchain. The mnemonic generates accounts that have been used in previous developer guides. Note that there is an environment variable (infuraProjectId) that contains the Infura project ID.</p><pre>ganache-cli \<br>  -f <a href="https://kovan.infura.io/v3/$infuraProjectId">https://kovan.infura.io/v3/$infuraProjectId</a> \<br>  -m &quot;clutch captain shoe salt awake harvest setup primary inmate ugly among become&quot;</pre><p>Next we’ll make a new network config file for <strong>local_fork</strong>. This can be done by copying the Kovan configuration and naming it <strong>local_fork.json</strong>. From the root directory of the project, run the following command.</p><pre>cp networks/kovan.json networks/local_fork.json</pre><p>We copied Kovan because all of the addresses will be the same in our Ganache CLI network fork.</p><p>Next we’ll deploy the contract using Saddle. The new cToken will be Kyber Network Crystal. The underlying token address can be found in the <a href="https://developer.kyber.network/docs/Addresses-Kovan/">Kyber documentation</a>.</p><p>In a terminal window that is navigated to the project directory, we’ll use the following command to deploy the cToken to the local fork.</p><pre>npx saddle -n local_fork script token:deploy &#39;{<br>  &quot;underlying&quot;: &quot;0xad67cB4d63C9da94AcA37fDF2761AaDF780ff4a2&quot;,<br>  &quot;comptroller&quot;: &quot;$Comptroller&quot;,<br>  &quot;interestRateModel&quot;: &quot;$Base200bps_Slope3000bps&quot;,<br>  &quot;initialExchangeRateMantissa&quot;: &quot;2.0e18&quot;,<br>  &quot;name&quot;: &quot;Compound Kyber Network Crystal&quot;,<br>  &quot;symbol&quot;: &quot;cKNC&quot;,<br>  &quot;decimals&quot;: &quot;8&quot;,<br>  &quot;admin&quot;: &quot;$Timelock&quot;<br>}&#39;</pre><p>On success, Saddle will log the address of the new cToken contract.</p><h4>Contract Deploy &amp; Etherscan Code Verification</h4><p>Now that we know the deployment works in the local test environment, we can try it on the public network.</p><p>Before we do that, we’ll get an Etherscan API key so we can publicly verify the source code. We’ll sign up for a free account at <a href="https://etherscan.io/">etherscan.io</a>. Once we have an account, we’ll create an API key by clicking the profile dropdown, API Keys, and the “Add” button at the top of the page.</p><p>Now that we have an API key, we can add it to our command line environment variables. On a Mac, this is in ~/.bash_profile or ~/.zshrc. We’ll add the key on a new line with export ETHERSCAN_API_KEY=&quot;JI4D...&quot; and restart the terminal window.</p><p>Next we’ll add a private key for the Kovan test net, so Saddle will know who is deploying the new contract. We’ll create a new directory using mkdir ~/.ethereum/ and then a new file to contain the private key with touch ~/.ethereum/kovan.</p><p>We’ll paste a Kovan private key in this file <strong>without</strong> the “0x” at the beginning of the hexadecimal string.</p><p>Next, we’ll run the same deploy command that we ran earlier except this time we will replace <strong>local_fork</strong> with <strong>kovan</strong>. This change will deploy the contract to Kovan, for real. We’ll run the command. Be sure to <strong>save the contract address</strong> that is logged.</p><p>Visit <a href="https://kovan.etherscan.io/">kovan.etherscan.io</a> and search for the newly created contract address. In the contract tab, we’ll see that there currently isn’t any verified source code.</p><p>Next, we’ll go back to the command line, and run a command to verify the source code with Etherscan. We’ll replace 0x9aF1962Dadf179e2aAa66F994ef09c65360b958e with our newly created contract address.</p><pre>npx saddle -n kovan script token:verify 0x9aF1962Dadf179e2aAa66F994ef09c65360b958e &#39;{<br>  &quot;underlying&quot;: &quot;0xad67cB4d63C9da94AcA37fDF2761AaDF780ff4a2&quot;,<br>  &quot;comptroller&quot;: &quot;$Comptroller&quot;,<br>  &quot;interestRateModel&quot;: &quot;$Base200bps_Slope3000bps&quot;,<br>  &quot;initialExchangeRateMantissa&quot;: &quot;2.0e18&quot;,<br>  &quot;name&quot;: &quot;Compound Kyber Network Crystal&quot;,<br>  &quot;symbol&quot;: &quot;cKNC&quot;,<br>  &quot;decimals&quot;: &quot;8&quot;,<br>  &quot;admin&quot;: &quot;$Timelock&quot;<br>}&#39;</pre><p>Once the verification completes, we’ll see that the contract code is now explorable on the contract Etherscan page.</p><p>This same process can be followed to deploy a contract to the Ethereum Mainnet.</p><h3>Initializing a Compound Governance Proposal</h3><p>The final major step of changing the Compound Protocol is to create a Governance proposal that the community collectively agrees to pass.</p><p>Note that the new cToken in this guide is already supported by the on-chain <a href="https://github.com/compound-finance/open-oracle">Open Price Feed</a>. If we were proposing a new asset that is not yet reported in the Open Price Feed, we would need to create changes for that component too.</p><h4>Proposal or Autonomous Proposal</h4><p>There are several options to go about creating a Compound Governance Proposal. We’ll review them here. If they don’t make sense, take some time to read up on <a href="https://medium.com/compound-finance/governance/home">Governance</a> on the Compound Blog and on the <a href="https://comp.xyz/">comp.xyz</a> forum.</p><ol><li>Acquire at least 100,000 COMP or the equivalent delegated voting weight and create a proposal using <a href="https://app.compound.finance/propose">app.compound.finance/propose</a>.</li><li>Discuss ideas for change with the greater Compound community on the forum or in the #governance channel of the <a href="https://compound.finance/discord">Compound Discord</a>. Find a user that agrees with the change, has the ability, and ask them to create the proposal.</li><li>Acquire at least 100 COMP and create a <a href="https://medium.com/compound-finance/compound-autonomous-proposals-354e7a2ad6b7">Compound Autonomous Proposal</a>.</li></ol><p>Let’s walk through using the app interface to highlight the necessary “calldatas” for a new cToken proposal. Again, this is only for users that control at least 100,000 votes.</p><p>Visit <a href="https://app.compound.finance/propose">app.compound.finance/propose</a>. Fill in the proposal Title and Overview sections. Be as thorough as possible. Markdown is supported. Be sure to include a link to the GitHub pull request created earlier. Review a <a href="https://compound.finance/governance/proposals/25">similar past proposal</a> and use it as a guide to write the Overview. Add the following Actions in the specified order.</p><ol><li>Comptroller contract, <strong>_supportMarket</strong> function, new cToken contract address.</li><li>Comptroller contract, <strong>_addCompMarkets</strong> function, new cToken contract address.</li><li>Comptroller contract, <strong>_setCollateralFactor</strong> function, new cToken contract address and 600000000000000000 for 60% collateral factor.</li><li>Other contract (new cToken contract address and ABI from the Etherscan page, code tab, toward the bottom), <strong>_setReserveFactor</strong>, 200000000000000000 for 20% reserve factor.</li></ol><p>This proposal adds the new cToken to the official Comptroller, enables it as a market that participates in <a href="https://medium.com/compound-finance/expanding-compound-governance-ce13fcd4fe36">COMP Distribution</a>, sets the collateral factor to 60%, and sets the reserve factor to 20%. Once the Actions are filled in, click the Submit Proposal button and submit the transaction using MetaMask.</p><figure><img alt="Creating a Compound Governance Proposal" src="https://cdn-images-1.medium.com/max/1016/0*j-kqoJGNqdWXrV47" /></figure><p>For a more detailed walkthrough of creating a proposal, check out the Compound Governance guide - <a href="https://www.comp.xyz/t/governance-guide-how-to-propose/367">How To Propose</a>.</p><h3>Wrapping Up</h3><p>Compound is a living, on-chain protocol, not just a repository of code that can be pulled and run. Proposing changes is a serious undertaking that requires the entire community’s attention and scrutiny. Not all proposals pass. For more ideas about how to submit successful proposals, see the <a href="https://www.comp.xyz/t/contributing-to-compound-protocol/48">Contributing to the Compound Protocol</a> manual.</p><p>The most important part of developing Compound Protocol improvements is participating in open discourse. Please join the discussion in the <a href="https://www.comp.xyz/">Compound Community Forum</a> and in the #governance channel of the <a href="https://compound.finance/discord">Compound Discord</a>.</p><p>Thanks for reading and be sure to subscribe to the <a href="https://compound.substack.com/?utm_source=guide_walkthrough_contributing">Compound Newsletter</a>. Feel free to comment on this post, or get in touch with the team on the <a href="https://twitter.com/compoundfinance">Compound Twitter</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9450cbe2133a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/a-walkthrough-of-contributing-to-the-compound-protocol-9450cbe2133a">A Walkthrough of Contributing to the Compound Protocol</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[COMP Governance & Distribution Update]]></title>
            <link>https://medium.com/compound-finance/comp-governance-distribution-update-f371c1cb9ca1?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/f371c1cb9ca1</guid>
            <category><![CDATA[compounds]]></category>
            <category><![CDATA[comp]]></category>
            <category><![CDATA[governance]]></category>
            <dc:creator><![CDATA[Robert Leshner]]></dc:creator>
            <pubDate>Fri, 11 Sep 2020 21:28:22 GMT</pubDate>
            <atom:updated>2021-11-07T22:46:43.520Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*FlMFI_XDoBWhDSb9hL502Q.png" /></figure><p>Ever since COMP token-holders replaced our team as administrator of the Compound protocol in April, we’ve been thrilled to watch <a href="https://compound.finance/governance">community governance</a> in action. While we’ve watched from the sidelines, you’ve developed, proposed, approved, and implemented changes to the protocol.</p><p>Since the distribution of COMP began in June:</p><ul><li>15 governance proposals were created; 12 were implemented</li><li>A new interest rate model was developed by Dharma, and deployed for the <a href="https://compound.finance/governance/proposals/18">DAI</a> and <a href="https://compound.finance/governance/proposals/20">USDT</a> markets</li><li>The Augur team spearheaded risk management <a href="https://compound.finance/governance/proposals/17">changes</a> for REP, during the upgrade to REPv2</li><li>COMP token-holders <a href="https://compound.finance/governance/proposals/19">voted</a> to change the protocol’s price oracle to the <a href="https://compound.finance/docs/prices">Open Price Feed</a>, an open-source project where a set of reporters sign price data which can be posted on-chain by any Ethereum address — and which doesn’t rely on our team</li><li>The community built an entirely new feature, market-level <a href="https://compound.finance/governance/proposals/22">Borrowing Caps</a>, to limit risk to the protocol</li><li><a href="https://medium.com/compound-finance/compound-autonomous-proposals-354e7a2ad6b7">Autonomous Proposals</a> were created, which allow anybody with 100 COMP to gather support for a Governance proposal</li></ul><h3>COMP Distribution Update</h3><p>When community governance first went live, we explained how the total supply of COMP tokens would be <a href="https://medium.com/compound-finance/compound-governance-decentralized-b18659f811e0">allocated</a>. Out of 10,000,000 total COMP, we reserved 775,000 tokens “for the community to advance governance through other means — which will be announced at a future date.”</p><p>Here’s how those tokens are being distributed to the community:</p><ul><li>In June, we designated up to 500,000 COMP for distribution through <a href="https://blog.coinbase.com/compound-comp-is-now-available-on-coinbase-earn-74cb88acbf78">Coinbase Earn</a>. COMP tokens will be available through Coinbase Earn until November 2021, at which point Coinbase will transfer all remaining tokens to the Compound community</li><li>Today, we sent the remaining 275,000 COMP directly to the Reservoir contract. We believe the best way to promote decentralization is to allow the community to allocate these tokens through the Governance process</li></ul><p>In total, 5,004,949 COMP will be distributed to the community — just over half of the total supply.</p><p>If you’d like to get involved in protocol governance, you can join the discussion in the community forum at <a href="https://www.comp.xyz/">comp.xyz</a> or in the <a href="http://compound.finance/discord">Discord</a> #governance channel.</p><p>From all of us at Compound, 📈.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f371c1cb9ca1" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/comp-governance-distribution-update-f371c1cb9ca1">COMP Governance &amp; Distribution Update</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Compound Autonomous Proposals]]></title>
            <link>https://medium.com/compound-finance/compound-autonomous-proposals-354e7a2ad6b7?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/354e7a2ad6b7</guid>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[governance]]></category>
            <category><![CDATA[compounds]]></category>
            <dc:creator><![CDATA[Calvin Liu]]></dc:creator>
            <pubDate>Thu, 10 Sep 2020 00:05:34 GMT</pubDate>
            <atom:updated>2020-09-10T00:05:34.304Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*oJmYbQkIxn7NACPO" /></figure><p>The Compound protocol is maintained and upgraded through a community governance system in which COMP token-holders and their delegates debate, propose, and vote on all changes to the protocol. Currently, the governance system requires users to have a minimum of 100,000 COMP delegated to their address, before they can formally submit a governance proposal.</p><p>While this requirement has not been prohibitive to the creation of thoughtful governance proposals over the past several months (total 22 submitted, 18 passed), there has recently been vibrant discussion on the possibility of <a href="https://www.comp.xyz/t/lower-proposal-threshold-to-100-comp/282">lowering the 100,000 COMP-delegated requirement</a>.</p><p>Whether or not a formal proposal is created to lower the requirement is up to the community. However, today we are proud to announce a tool that dramatically reduces the barrier to creating proposals, while still satisfying the encoded requirements of the existing governance system: <strong>Autonomous Proposals.</strong></p><h3><strong>Empowering the Community</strong></h3><p><strong>Compound Autonomous Proposals (CAPs) </strong>allow anyone with a minimum of 100 COMP to create and deploy an <em>Autonomous Proposal</em>, which is a smart contract that includes the same parameters as a formal governance proposal (<em>title, description, governance actions).</em></p><p>The next step is gathering public support. Anyone can support the Autonomous Proposal by visiting <a href="http://app.compound.finance/vote">app.compound.finance/vote</a>, and delegating their votes to the Ethereum address of the CAP.</p><p>When a CAP reaches the proposal threshold (currently 100,000 delegated votes), anyone can call the public <em>launchProposal</em> function, which creates a formal governance proposal — and begins the voting process. Immediately after, anyone can then call the <em>vote</em> function on the Autonomous Proposal, casting its delegated votes FOR the submitted proposal.</p><p>When a user creates an Autonomous Proposal, they lock COMP into the CAP; at any time, the author can call the <em>terminateProposal</em> function, which returns their COMP and completes the Autonomous Proposal.</p><h3><strong>The First Autonomous Proposal</strong></h3><figure><a href="https://compound.finance/governance/address/0x0cde9622b23ababfccef9755b5f7c9e759ef4820"><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*5OKd8lgTUQ3FYeMQ.png" /></a></figure><p>Compound Labs built the Autonomous Proposals system, tested it end-to-end, deployed it to mainnet, and has created the first ever CAP: <a href="https://compound.finance/governance/address/0x0cde9622b23ababfccef9755b5f7c9e759ef4820"><strong>Set Pause Guardian to Community Multi-Sig</strong></a>.</p><p>This CAP proposes to set the <a href="https://compound.finance/docs/governance#pause-guardian"><em>Pause Guardian</em></a> address of the Compound protocol to a <a href="https://etherscan.io/address/0xbbf3f1421D886E9b2c5D716B5192aC998af2012c#code">4-of-6 multi-sig</a> formed by the Compound community. For more background, please review the details of the CAP.</p><p>If 100,000 votes are <a href="https://app.compound.finance/vote">delegated</a> to this CAP, it will proceed into the formal governance proposal and voting process.</p><h3><strong>Create Your Own</strong></h3><p><strong>Autonomous Proposals</strong> reduce the barrier to entry for creating governance proposals by multiple orders of magnitude (from 100,000 COMP to 100).</p><p>On the <a href="https://app.compound.finance/vote">Vote page of the Compound Interface</a>, any user with 100 COMP in their wallet will see a <strong>Create Autonomous Proposal </strong>button. Clicking this button will launch a flow for users to title, describe, and configure the proposal they wish to create, and then deploy their Autonomous Proposal.</p><p>Try it out, and share your Autonomous Proposal with the Compound community on <a href="https://twitter.com/compoundfinance">Twitter (@compoundfinance)</a>, in the <a href="http://comp.xyz/">Compound Community Forum (comp.xyz)</a>, and in the <a href="http://compound.finance/discord">Compound Discord</a>.</p><p>As Autonomous Proposals start to aggregate large numbers of delegated votes, you’ll also start to see them on the <a href="https://compound.finance/governance/leaderboard">Governance Leaderboard</a>. Perhaps your Autonomous Proposal will be one of the first!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=354e7a2ad6b7" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/compound-autonomous-proposals-354e7a2ad6b7">Compound Autonomous Proposals</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Compound.js]]></title>
            <link>https://medium.com/compound-finance/compound-js-9d1e3e5742d8?source=rss----22e4df2110f5---4</link>
            <guid isPermaLink="false">https://medium.com/p/9d1e3e5742d8</guid>
            <category><![CDATA[compound-finance]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[javascript]]></category>
            <dc:creator><![CDATA[Adam Bavosa]]></dc:creator>
            <pubDate>Wed, 02 Sep 2020 17:11:08 GMT</pubDate>
            <atom:updated>2020-09-02T17:11:08.505Z</atom:updated>
            <content:encoded><![CDATA[<p>A JavaScript SDK for Ethereum and the Compound Protocol</p><figure><img alt="Announcing Compound.js a JavaScript SDK for Ethereum and Compound" src="https://cdn-images-1.medium.com/max/1024/1*Z1WAN3VRPHjZnaW8aHGLlQ.png" /></figure><p>We’re excited to announce a new software development kit that we’ve been working on. Enter <strong>Compound.js</strong>; a JavaScript SDK for Ethereum and the Compound Protocol. This tool streamlines the software development process for building DApps that accelerate DeFi.</p><p>At the time of this announcement, the SDK is officially in beta. It is available for all, open source, on <a href="https://github.com/compound-finance/compound-js">GitHub</a> and <a href="https://www.npmjs.com/package/@compound-finance/compound-js">NPM</a>. Compound.js works in the web browser and Node.js. It has just one dependency: the latest version of <a href="https://github.com/ethers-io/ethers.js/">Ethers.js</a>.</p><p>Built with simplicity in mind, developers can write intuitive, one-line methods to initialize JSON RPC requests that interact with the Compound Protocol.</p><p>In addition to Compound methods, developers can make generic <strong>Ethereum read and write calls</strong> to any smart contract. Lastly, REST API calls can be made to the <a href="https://compound.finance/docs/api">Compound API</a> that is hosted by Compound Labs.</p><h3>Ethereum JSON RPC with Compound.js</h3><p>Reading and writing from the blockchain can be done swiftly with Compound.js; no need to initialize an object.</p><p>In the following examples, A JSON RPC provider or Web3 provider can be passed as the provider attribute in the options object. When writing to the blockchain, a private key or mnemonic can be passed in the options object as well.</p><h4>Write to the Blockchain (eth_sendTransaction)</h4><p>Write operations are initialized with <strong>Compound.eth.trx</strong>. The return value is an Ethers.js transaction object. Here is an example for sending ETH in the web browser.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/354337eeab9731c81c8fc695253cb26a/href">https://medium.com/media/354337eeab9731c81c8fc695253cb26a/href</a></iframe><h4>Read from the Blockchain (eth_call)</h4><p>Reading from any smart contract on the blockchain can be done using <strong>Compound.eth.read</strong>. Here is an example for reading the USDC balance in the <a href="https://uniswap.info/pair/0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc">Uniswap USDC-ETH pair</a>.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/34f7e3b3258005e5f1397b8ae17698f1/href">https://medium.com/media/34f7e3b3258005e5f1397b8ae17698f1/href</a></iframe><p>A contract ABI can also be passed to the options object. In that case, you would then provide a string of the method name as the second parameter, instead of the whole method definition.</p><h3>Compound Protocol Methods</h3><p>Simple one-liners are available for major protocol methods like <strong>supply</strong>, <strong>redeem</strong>, <strong>borrow</strong>, <strong>repayBorrow</strong>, and more.</p><p>In examples like the following, a Compound object must be instantiated first. The constructor can have window.ethereum passed in the browser, or a private key/mnemonic alongside a JSON RPC provider if you’re using Node.js.</p><h4>Supplying to the Protocol</h4><p>Here is an example for supplying Ether to the Compound Protocol using Compound.js.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/cb9e375995e6bac12f0186cfd19401cb/href">https://medium.com/media/cb9e375995e6bac12f0186cfd19401cb/href</a></iframe><p>More examples of object <strong>initialization</strong> and deeper description of the <strong>transaction options</strong> parameter are available in the <a href="https://github.com/compound-finance/compound-js">Compound.js GitHub repository readme</a>.</p><h4>Governance and COMP Methods</h4><p>The SDK has elegant methods for Compound governance functionality through the COMP and Governor smart contracts.</p><p>Here is an example for fetching the amount of COMP token that has accrued for an address (more on <a href="https://medium.com/compound-finance/expanding-compound-governance-ce13fcd4fe36">COMP Distribution</a> here).</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/d3cb704a6eadb5553db19e4e9fa44681/href">https://medium.com/media/d3cb704a6eadb5553db19e4e9fa44681/href</a></iframe><p>Voting on a Compound governance proposal is as simple using the SDK’s <strong>castVote</strong> method.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/25d99eb3a74d38e5fe97fd6b1fc0e682/href">https://medium.com/media/25d99eb3a74d38e5fe97fd6b1fc0e682/href</a></iframe><p>More governance related methods are defined in the <a href="https://compound-finance.github.io/compound-js/docs/index.html">Compound.js Documentation</a>.</p><h4>Getting Prices</h4><p>Fetching prices from the Open Price Feed can be done with the <strong>getPrice</strong> method.</p><p>The first parameter is the asset that you want the price of, and the second parameter (optional) is the asset you want that price converted to. The default output is USD with 6 decimal places.</p><p>This method supports all assets that are posted to the Open Price Feed, and also cTokens.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/3f326cb51560c36caf11f5fda4a07cce/href">https://medium.com/media/3f326cb51560c36caf11f5fda4a07cce/href</a></iframe><h3>Compound API Methods</h3><p>The <a href="https://compound.finance/docs/api">Compound REST API</a> can be queried using Compound.js. Each of the available services has their own method.</p><ul><li>market</li><li>account</li><li>cToken</li><li>governance</li></ul><p>Each of the request parameters defined in the documentation (linked above) can be passed in the JavaScript object parameter. Here is an example for querying the Market History Service.</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/06733520fb1fb3132d6358d6a95d7a10/href">https://medium.com/media/06733520fb1fb3132d6358d6a95d7a10/href</a></iframe><h3>Roadmap and Contribution</h3><p><a href="https://github.com/compound-finance/compound-js">Compound.js</a> is in <strong>open beta</strong> and is available for free on <a href="https://www.npmjs.com/package/@compound-finance/compound-js">NPM</a>. The plan for next steps is to add more Compound Protocol related methods for ease of development. Also, smarter logging of errors and results would greatly improve the developer experience.</p><p>Remember that the Compound Protocol is decentralized and upgraded by the community. As a result, this SDK will morph however the community sees fit!</p><p>A community contribution guide will be available in the future for anyone to help improve the SDK.</p><p>If you have <strong>questions</strong> or comments, please join the <a href="https://compound.finance/discord/">Compound Discord</a> and send us a message in the <strong>#💻development</strong> channel.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9d1e3e5742d8" width="1" height="1" alt=""><hr><p><a href="https://medium.com/compound-finance/compound-js-9d1e3e5742d8">Compound.js</a> was originally published in <a href="https://medium.com/compound-finance">Compound Labs</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>