A contract in Portfelio is an editable document attached to a project. You write it with dynamic variable chips like {{client_name}}, {{project_price}}, {{project_date}} — at view time those resolve to that project’s actual values, so you do not have to find-and-replace for every client. You can also drop signer-fillable inputs (address, ID number, anything) the client types when signing.
Send by sharing the contract’s public link. The client opens it in their browser, fills the inputs, signs by drawing on the canvas, and the signed status updates back in your project. Both you and the client get the signed contract via email. Ask Lio “draft a contract for this project” and it generates a starting draft using the project details — client name, date, service type, price, coverage.