Sweetbridge Deployed Contracts
This repository contains snapshots of the ABIs for all of the smart contracts used by the Sweetbridge Project corresponding to the versions deployed for our two active environments:
sweetbridge-members-app repository, which has not been published
as open source yet, follows the same git sub-module pattern as
In order to make the JSON files available to the deployer, there are 2 options:
- copy the JSON file from the truffle build folder to the contracts folder
- link the truffle
buildin the root of this repo
When requiring the JSON file for a contract, the function first looks in
build and then in
contracts. The advantage of linking the build folder from truffle is that after a successfull
deployment, the address will be added to the existing list.
It is the responsibility of the developer to make sure that the JSON in
are the same. The function will assume this is the case and will not overwrite existing files.
In order to run the tests, start a ganache server with
npm run start:evm and then run
npm run test. Test settings are configured through environment variables and
dotenv package is used. Edit
.env file in order to change the settings.
This test requires
GRAPHQL_URL setting to be set and pointing to Postgraphile endpoint connected to
ledger schema should be populated with the fixtures before running the test.
We follow the semver standard
in creating package versions. Each new development will be at least a
minor release. As
releases are reserved for fixing bugs.
If multiple versions are in development at the same time (this should be avoided) then multiple
minor releases will have to coexist in the NPM repo. It must be guaranteed that the bigger
version number includes the changes from the previous versions.
In order to know the state of a certain version we use tags for each version so that it is clear which version is the latest production grade.
before starting the tests 2 services need to be started:
- ganache-cli - run with
npm run start:evm
- graph QL -
once these are runing tests can be run with