The Decentralized Stablecoin (DSC) Protocol is a blockchain-based platform for minting and burning stablecoins. This protocol ensures a decentralized, trustless system for collateral management, liquidations, and monitoring user health factors. The project demonstrates a robust implementation of DeFi principles and provides a foundation for secure, scalable financial systems.
-
Relative Stability
- The stablecoin is anchored or pegged to a value of $1.00, maintaining relative stability through decentralized mechanisms.
-
Stability Mechanism (Minting)
- Algorithmic (Decentralized): Minting of the stablecoin is governed by an algorithmic mechanism that ensures the system remains decentralized and transparent.
-
Collateral
- The stablecoin is backed by exogenous collateral, currently supporting the following assets:
- wETH (Wrapped Ethereum)
- wBTC (Wrapped Bitcoin)
- The stablecoin is backed by exogenous collateral, currently supporting the following assets:
-
Testing Framework
- Built and tested using Foundry, ensuring high-quality smart contracts with robust unit and integration testing.
This project showcases my journey as a blockchain developer, emphasizing my skills in smart contract development, decentralized finance (DeFi), and security practices. It is designed to be a foundational tool for anyone interested in decentralized stablecoin systems.
- Development Tools: Foundry
- Programming Languages: Solidity
- Testing Framework: Foundry for unit and integration tests
- Deployment: Designed for Ethereum-compatible chains
Contributions are welcome! To contribute to the project, follow these steps:
-
Fork the Repository
- Click the "Fork" button at the top right of this repository to create your own copy.
-
Clone the Forked Repository
- Use the following command to clone the repository to your local machine:
git clone https://github.com/<your-username>/Decentralized-Stablecoin.git cd Decentralized-Stablecoin
- Use the following command to clone the repository to your local machine:
-
Create a New Branch
- Create a branch for your feature or bug fix:
git checkout -b feature/your-feature-name
- Create a branch for your feature or bug fix:
-
Make Your Changes
- Implement your feature, fix bugs, or improve documentation.
- Ensure that your code follows the project's coding standards.
-
Run Tests
- Before submitting your changes, ensure all tests pass:
forge test
- Before submitting your changes, ensure all tests pass:
-
Commit Your Changes
- Commit your changes with a clear and concise message:
git commit -m "Add: Description of your feature or fix"
- Commit your changes with a clear and concise message:
-
Push Your Branch
- Push the branch to your forked repository:
git push origin feature/your-feature-name
- Push the branch to your forked repository:
-
Open a Pull Request
- Go to the original repository and click "Pull Requests" > "New Pull Request".
- Select your branch and provide a detailed description of your changes.
- Ensure code is well-documented and tested.
- Follow the coding style and standards of the project.
- Be respectful and collaborative in code reviews and discussions.
Thank you for your contributions!