Existing Project Conversion
Converting an existing project to a toolkit project allows you to take advantage of central management, automated governance, and enhanced control over your canisters. Follow these steps to smoothly transition your existing setup.
Benefits of Converting to a Toolkit Project
Switching to a toolkit project structure provides several advantages:
- Central Management: Toolkit projects streamline management by consolidating control under a single root canister.
- Automated Governance: Toolkit projects offer built-in support for automated and manual proposals, making it easier to implement voting-based decision-making and manage member permissions.
- Enhanced Flexibility: Easily register or deregister canisters, add or remove members, and manage configurations through the toolkit interface.
- Single Controller: All registered canisters are controlled by the toolkit root canister, allowing unified management while maintaining security and transparency.
Step 1: Creating a Toolkit Project
To begin, create a new toolkit project that will serve as the foundation for managing your existing project:
Follow the getting started to setup you toolkit project
Step 2: Registering Existing Canisters
To manage your existing canisters under the toolkit project, register each one to bring it under toolkit root control:
- Access Canister Management: In the new toolkit project’s Management section, locate the Add Canister option and choose Existing.
- Register Each Canister: Enter the Principal for each canister you want to manage and register it with the toolkit project. This action assigns the toolkit root canister as the single controller for each registered canister, make sure you are set as one of the controllers before this action is executed.
Note: Once registered, the toolkit root canister will be the sole controller for these canisters
Step 3: Check for Controller Dependencies
Before fully converting, review each canister to ensure it doesn’t rely on existing controllers or external dependencies that might break when switching to toolkit root control:
- Audit Controller Dependencies: Verify that each canister can operate without dependencies on previous controllers or external systems.
- Update Dependencies if Necessary: Adjust configurations or dependencies if any breakages are identified, ensuring smooth functionality under the toolkit’s single-controller structure.
Reminder: Single Controller Model
In a toolkit project, the toolkit root canister acts as the single controller for all registered canisters. This setup centralizes control, enhancing security and making management more efficient. Any previous controllers will be replaced by the toolkit root, so ensure that this change aligns with your project’s needs.
Converting your project provides powerful new capabilities with the toolkit’s governance, management, and automation features—making it easier to scale and manage your dApps over time.