{"repo":"nonsalant/contract","free":true,"listed":false,"github":"https://github.com/nonsalant/contract","clone":"git clone https://github.com/nonsalant/contract.git","description":"A signable contract that lives in a single file","language":"PHP","stars":547,"topics":["contracts","freelance","self-hosted","small-business"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"Updates 🆕 12/31/23: Added functionality for shortcodes. --- Single File Contract A contract that lives in a single file and becomes static HTML after it's been signed. 1. Generate a contract file → 1. Upload it to your server 1. Send your client a link to it View demo --- How it works Contract Generator → 1. Click the link above to create a contract file with custom content or HTML, a signature for the first party, and filename like contract-1234567890.php . 2. Upload the generated file to your own server or domain. You can also rename this file and put it in a folder with a unique name, eg: contract-1234567890/index.php . 3. Once signed by both parties, the PHP file will delete itself from your server and leave behind a static HTML file. --- --- What's in each file contract.php An example of a contract script: contains all code (PHP, CSS, HTML, PNG-data, JS) required by a stand-alone contract file. Upon being signed, this script deletes itself (or rather, it deletes its .php file), and leaves behind an .html file with the same name: a final version of the contract, signed by both parties. The first 10 or so lines of the file are used to store contract metadata (one per line), ie: --- test.php A copy of contract.php -- the only difference is when the filename is test.php or demo.php the PHP file doesn't delete itself when signed. --- 📁/generator/ Folder containing all the code behind the online generator. The Contract Generator can be downloaded by getting the generator.zip","default_branch":null,"files":null,"tree":[],"storefront":"/r/nonsalant","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/nonsalant/contract/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}