What are Projects?
A project groups together:- One or more smart contract addresses
- Assertions that protect those contracts
- Project metadata (name, description, target chain)
Creating a Project
To create a new project:- Navigate to the “Projects” tab in the dApp navigation bar
- Click “Create a project”
- Enter project details:
- Project Name: Typically matches your protocol or contract name
- Project Description: Brief explanation of what your project does
- Target Chain: The blockchain where your contracts are deployed
- Click “Continue”
- Add contract addresses:
- Enter each contract address you want to protect
- Only contracts where you are the
ownercan be added - The dApp verifies ownership by calling the
owner()function
- Review your project details
- Click “Save and publish” to create the project

Creating a Project in the dApp
Only the owner of a contract can create a project for it. Ensure your contract implements an
owner() function that returns the current owner address. See Ownership Verification for details.For contracts without the owner() interface, a Manual Verification Request process is available.Managing Projects
Once created, you can manage your project through the project dashboard:View Project Details
- See all contract addresses in the project
- View project metadata
- See all assertions
- See all events (timeline for the project)
- See all incidents
Add or Remove Contracts
- Add new contract addresses to your project
- Remove contracts that are no longer active
- Update contract information
Deploy Assertions
- Submit assertions to your project via
pcl - Link assertions to specific contracts through the dApp
- View all active assertions protecting your contracts

Deploying an Assertion
Project Settings
In the project settings tab, you can: Update Project Details: Here you can update the project name, description, and delete the project. Transfer Project Ownership: You can transfer projects and contracts (including their associated assertions) to other wallets. This allows you to transfer project ownership while maintaining all linked assertions and contracts. Integrations: Setup integrations to receive notifications when incidents occur. For now you can setup Slack.
Project Settings
Project Dashboard
The project dashboard provides a unified view of your project’s security:- Active Assertions: See all assertions currently protecting your contracts
- Assertion Deployment: Deploy or remove assertions for your project
- Ready for Deployment: Assertions submitted via
pclthat need to be linked and deployed - Assertion Status: Monitor execution status and any triggered violations. Status shows whether assertions are marked for enforcement/staging or enforced/staged
- Recent Incidents: View detailed incidents for your project (see Incidents)
- Project Settings: Update project details and manage contracts

Projct dashboard view for the project owner

