This repository contains an EVM-based protocol designed to meet the unique needs of tokenized assets and on-chain economies. The protocol enables the creation and management of economic and compliance controls for your on-chain economy at the token level, allowing for maximum flexibility while maintaining the transparency and trustlessness of Web3.
To install the package, run the following command in the root of your project:
npm i @thrackle-io/forte-rules-engine
numbered releases assigned to unmodified upstream binaries.
This package requires the following:
-
Foundry
NOTE: In order to ensure full support, run this command to get the correct Foundry version:
Note
Thrackle maintains a modified foundryup
tool
to provide versioned releases assigned to releases of unmodified upstream binaries.
foundryup --version $(awk '$1~/^[^#]/' script/foundryScripts/foundry.lock)
-
Scripting Requirements
eth-abi 5.1.0
jq 1.6.0
python-dotenv 1.0.1
These packages can be installed manually or through the following helper command:
pip3 install -r requirements.txt
-
@openzeppelin/contracts
version 4.9.6 and@openzeppelin/contracts-upgradeable
version 4.9.6.If the contracts show any compiling errors, try to manually update the version of the existing openzeppelin library in your project by doing:
forge install OpenZeppelin/openzeppelin-contracts
forge install OpenZeppelin/openzeppelin-contracts-upgradeable
For complete usage information and documentation, please visit our User Guide.
To deploy the Forte Rules Engine and an example application, perform the following steps:
- Deploy the Forte Rules Engine locally.
- Deploy the Example Application locally.
Please visit our Contributor Guide.
The primary license for Forte Protocol Rules Engine is the Business Source License 1.1 (BUSL-1.1
), see LICENSE
. However, some files are dual licensed under GPL-2.0-or-later
:
- All files in
src/example/
may also be licensed underGPL-2.0-or-later
(as indicated in their SPDX headers), seesrc/example/LICENSE
- All files in
lib/
are licensed underMIT
(as indicated in its SPDX header), seelib/LICENSE_MIT
- All files in
src/example/
may also be licensed underGPL-2.0-or-later
(as indicated in their SPDX headers), see src/example/LICENSE Other Exceptions - All files in
contracts/test
remain unlicensed (as indicated in their SPDX headers).