diff --git a/README.md b/README.md index 104fe904..3896462a 100644 --- a/README.md +++ b/README.md @@ -1,136 +1,189 @@ -# Clowder + +
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + Clowder is a minimalistic platform for creating and managing CATs (Contribution Accounting Tokens) β fungible tokens used to track value contributions inside decentralized organizations. + +
+ +--- + +# πΎ Clowder + +> Fun fact: **A group of cats is called a "clowder".** +Just like that, Clowder groups and tracks contributions from multiple members inside decentralized projects. + +Clowder enables anyone to deploy a **CAT (Contribution Accounting Token)** with customizable minting rules and governance parameters. +These tokens serve as transparent accounting tools for DAOs and community-driven projects. + +Learn more about CATs: +π https://docs.stability.nexus/about-us/the-stable-order/cats + +--- + +# 𧬠CAT Token Characteristics + +Each CAT contract created through Clowder has the following properties: + +1. Initial supply starts at **zero**. +2. The deployer becomes the **initial owner**. +3. CATs can have **multiple owners**. +4. **All owners can mint** tokens. +5. **Optional maximum supply** to prevent inflation. +6. **Threshold supply** defines unrestricted minting. +7. **Maximum expansion rate** limits inflation above the threshold. +8. Owners may **permanently decrease** max supply and threshold. +9. Owners may **reduce** expansion rate permanently. +10. Transfers may be **restricted to existing holders**. +11. Owners may **permanently disable** transfer restrictions. -A minimalistic platform for creating and managing Contribution Accounting Tokens (CATs). - -## Overview - -Clowder enables anyone to create CATs, which are fungible tokens designed to track the value of contributions to projects within decentralized organizations. The name "Clowder" is derived from the collective noun for cats. - -For more information about CATs, visit the [official documentation](https://docs.stability.nexus/about-us/the-stable-order/cats). - -## CAT Token Characteristics +### Frontend Pages -CATs are ERC20-compatible tokens with the following key features: +# π₯ Platform Frontend Pages -1. **Zero Initial Supply**: Tokens begin with no initial supply. -2. **Owner-Based Management**: The deployer becomes the initial owner with multi-owner support. -3. **Minting Permissions**: All owners have permission to mint new tokens. -4. **Supply Controls**: - - Optional maximum supply cap - - Threshold supply below which minting is unrestricted - - Maximum supply expansion rate enforced above the threshold -5. **Governance Flexibility**: Owners can permanently reduce maximum supply, threshold supply, and expansion rates. -6. **Transfer Restrictions**: Optional restriction of transfers to existing token holders to maintain member-only circulation. -7. **Permanent Restriction Removal**: Owners can permanently disable transfer restrictions. +### **1. Landing Page** +- βCreate CATβ button β Navigates to CAT Creation +- Input field β User enters a CAT contract address +- βUse CATβ button β Navigates to CAT Page for that contract -## Platform Features +### **2. CAT Page** +Displays full CAT state: +- Total supply +- Max supply +- Threshold +- Max expansion rate +- Transfer restriction status -### Frontend Pages +If wallet is connected **and user is an owner**, the page also allows: +- Minting tokens +- Updating parameters -**Landing Page** -- Create new CAT tokens -- Access existing CAT contracts by address -- Quick navigation to CAT management interface +### **3. Create CAT Page** +- Form to input constructor parameters +- βDeploy CATβ button triggers contract deployment via factory -**CAT Page** -- View token contract parameters and variables -- Display current supply, maximum supply, threshold supply, and expansion rate -- Show transfer restriction status -- Owner-specific interface for minting and parameter modification +### **4. My CATs Page** +- Shows all CAT token contracts **owned by the connected wallet** +- No backend β ownership mapping is stored in the factory contract -**Create CAT Page** -- Interactive form for constructor parameters -- Direct deployment through factory contract +--- -**My CATs Page** -- Comprehensive list of all owned token contracts -- Wallet-connected user view +# π Tech Stack -### Technical Stack +- **Next.js** +- **TailwindCSS** +- **ShadCN UI** +- **Viem / Wagmi** for blockchain interactions +- **Factory contract** stores CAT ownership mapping -- **Frontend Framework**: Next.js -- **Styling**: TailwindCSS -- **UI Components**: ShadCN UI -- **Architecture**: Serverless (no backend required) -- **Storage**: On-chain storage via factory contract +--- -## Local Development Setup +# π§ͺ Local Setup Instructions -### Prerequisites +Follow these steps to run Clowder locally. -- Node.js and npm (or yarn) -- Git +--- -### Installation +## 1. Clone the Repository -1. Clone the repository: ```bash -git clone https://github.com/StabilityNexus/Clowder.git -cd Clowder +git clone https://github.com/your-username/clowder.git +cd clowder ``` -2. Install dependencies: +--- + +## 2. Install Dependencies + ```bash npm install # or yarn install ``` -3. Configure environment variables: +--- + +## 3. Set Environment Variables + +Create a `.env` file in the project root: -Create a `.env` file in the root directory: ``` NEXT_PUBLIC_PROJECT_ID=your-project-id ``` -4. Obtain your Project ID: - - Navigate to [https://cloud.reown.com/](https://cloud.reown.com/) - - Create an account or sign in - - Create a new project - - Copy the Project ID from your project dashboard - - Add it to your `.env` file +--- + +## 4. Obtain Your Project ID + +1. Go to https://cloud.reown.com +2. Log in or create an account +3. Create a new project +4. Locate the **Project ID / API Key** +5. Place it in your `.env` file + +--- + +## 5. Run the Development Server -5. Start the development server: ```bash npm run dev # or yarn dev ``` -The application will be available at [http://localhost:3000](http://localhost:3000). - -## Project Structure - -``` -Clowder/ -βββ contracts/ # Smart contract source files -βββ test/ # Contract test suites -βββ web/ # Next.js frontend application -βββ .github/ # GitHub Actions workflows -βββ hardhat.config.js -``` - -## Smart Contract Development - -The project uses Hardhat for smart contract development and testing. Key configuration files: - -- `hardhat.config.js`: Hardhat configuration -- `contracts/`: Solidity smart contracts -- `test/`: Contract test files - -## Contributing - -Contributions are welcome. Please ensure all tests pass before submitting pull requests. +Your app will be available at: -## License +π http://localhost:3000 -Please refer to the repository for license information. +--- -## Links +# π Community -- [CAT Documentation](https://docs.stability.nexus/about-us/the-stable-order/cats) -- [Reown Cloud](https://cloud.reown.com/) +- Stability Nexus Docs β https://docs.stability.nexus/ +- Discord β https://discord.gg/YzDKeEfWtS -## Support +--- -For issues and questions, please use the GitHub Issues section of this repository. \ No newline at end of file +Β© 2025 The Stable Order