├── .github └── workflows │ ├── lint.yml │ └── test.yml ├── .gitignore ├── .gitmodules ├── .solhint.json ├── .solhintignore ├── LICENSE ├── README.md ├── contracts ├── BucketStorageLib.sol ├── Compressed.sol ├── IBucketStorage.sol ├── IndexedBucketLib.sol ├── InflateLibWrapper.sol └── LabelledBucketLib.sol ├── examples └── moonbirds │ ├── README.md │ ├── assets │ ├── collective.small.png │ └── reference-metadata.json │ ├── foundry.toml │ ├── go.mod │ ├── go.sum │ ├── remappings.txt │ ├── script │ ├── DeployHelper.sol │ └── FeaturesLoader.sol │ ├── solidifier │ ├── features.go │ ├── layers.go │ ├── main.go │ ├── traits.go │ └── utils.go │ ├── src │ ├── Assembler.sol │ ├── AssetStorageManager.sol │ ├── FeaturesStorageManager.sol │ ├── generate.go │ └── types │ │ ├── Attribute.sol │ │ └── Mutators.sol │ ├── test │ ├── Assembler.t.sol │ ├── FeaturesLib.t.sol │ ├── FeaturesLoader.t.sol │ ├── FeaturesStorage.t.sol │ ├── StorageManager.t.sol │ └── TestLib.sol │ └── testing │ ├── attributes │ ├── attributes.go │ └── attributes_test.go │ ├── convertHexFile │ ├── main.go │ └── main_test.go │ ├── image │ ├── image.go │ ├── image_test.go │ └── uri.go │ ├── isSameImage │ └── main.go │ ├── isValidBMP │ └── main.go │ └── validateAttributes │ └── main.go ├── foundry.toml ├── go.mod ├── go.sum ├── go ├── aggregators │ ├── bucket-storage.go │ ├── indexed-bucket.go │ └── labelled-bucket.go ├── deflate │ ├── deflate.go │ └── deflate_test.go ├── extractor │ ├── extractor.go │ └── extractor_test.go ├── storage │ ├── common.go │ ├── features.go │ ├── format.go │ ├── group.go │ └── templates │ │ ├── bucket-storage.go.tmpl │ │ ├── features-lib.go.tmpl │ │ ├── labelled-storage-mapping.go.tmpl │ │ ├── sequential-storage-mapping.go.tmpl │ │ └── storage-deployer.go.tmpl └── types │ ├── features.go │ ├── image.go │ ├── image_test.go │ ├── load-image.go │ ├── string.go │ └── token.go ├── logo.png ├── package.json ├── remappings.txt ├── test ├── BucketStorageLib.t.sol ├── IndexedBucketLib.t.sol ├── LabelledBucketLib.t.sol ├── features │ ├── FeaturesLoader.sol │ ├── FeaturesWriterTest.t.sol │ ├── generate.go │ └── testgen │ │ └── main.go └── indexed │ ├── IndexedBuckets.t.sol │ ├── generate.go │ └── testgen │ └── main.go └── yarn.lock /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.gitmodules -------------------------------------------------------------------------------- /.solhint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.solhint.json -------------------------------------------------------------------------------- /.solhintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/.solhintignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/README.md -------------------------------------------------------------------------------- /contracts/BucketStorageLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/BucketStorageLib.sol -------------------------------------------------------------------------------- /contracts/Compressed.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/Compressed.sol -------------------------------------------------------------------------------- /contracts/IBucketStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/IBucketStorage.sol -------------------------------------------------------------------------------- /contracts/IndexedBucketLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/IndexedBucketLib.sol -------------------------------------------------------------------------------- /contracts/InflateLibWrapper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/InflateLibWrapper.sol -------------------------------------------------------------------------------- /contracts/LabelledBucketLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/contracts/LabelledBucketLib.sol -------------------------------------------------------------------------------- /examples/moonbirds/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/README.md -------------------------------------------------------------------------------- /examples/moonbirds/assets/collective.small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/assets/collective.small.png -------------------------------------------------------------------------------- /examples/moonbirds/assets/reference-metadata.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/assets/reference-metadata.json -------------------------------------------------------------------------------- /examples/moonbirds/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/foundry.toml -------------------------------------------------------------------------------- /examples/moonbirds/go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/go.mod -------------------------------------------------------------------------------- /examples/moonbirds/go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/go.sum -------------------------------------------------------------------------------- /examples/moonbirds/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/remappings.txt -------------------------------------------------------------------------------- /examples/moonbirds/script/DeployHelper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/script/DeployHelper.sol -------------------------------------------------------------------------------- /examples/moonbirds/script/FeaturesLoader.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/script/FeaturesLoader.sol -------------------------------------------------------------------------------- /examples/moonbirds/solidifier/features.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/solidifier/features.go -------------------------------------------------------------------------------- /examples/moonbirds/solidifier/layers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/solidifier/layers.go -------------------------------------------------------------------------------- /examples/moonbirds/solidifier/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/solidifier/main.go -------------------------------------------------------------------------------- /examples/moonbirds/solidifier/traits.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/solidifier/traits.go -------------------------------------------------------------------------------- /examples/moonbirds/solidifier/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/solidifier/utils.go -------------------------------------------------------------------------------- /examples/moonbirds/src/Assembler.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/Assembler.sol -------------------------------------------------------------------------------- /examples/moonbirds/src/AssetStorageManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/AssetStorageManager.sol -------------------------------------------------------------------------------- /examples/moonbirds/src/FeaturesStorageManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/FeaturesStorageManager.sol -------------------------------------------------------------------------------- /examples/moonbirds/src/generate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/generate.go -------------------------------------------------------------------------------- /examples/moonbirds/src/types/Attribute.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/types/Attribute.sol -------------------------------------------------------------------------------- /examples/moonbirds/src/types/Mutators.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/src/types/Mutators.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/Assembler.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/Assembler.t.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/FeaturesLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/FeaturesLib.t.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/FeaturesLoader.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/FeaturesLoader.t.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/FeaturesStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/FeaturesStorage.t.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/StorageManager.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/StorageManager.t.sol -------------------------------------------------------------------------------- /examples/moonbirds/test/TestLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/test/TestLib.sol -------------------------------------------------------------------------------- /examples/moonbirds/testing/attributes/attributes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/attributes/attributes.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/attributes/attributes_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/attributes/attributes_test.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/convertHexFile/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/convertHexFile/main.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/convertHexFile/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/convertHexFile/main_test.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/image/image.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/image/image.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/image/image_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/image/image_test.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/image/uri.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/image/uri.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/isSameImage/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/isSameImage/main.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/isValidBMP/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/isValidBMP/main.go -------------------------------------------------------------------------------- /examples/moonbirds/testing/validateAttributes/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/examples/moonbirds/testing/validateAttributes/main.go -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/foundry.toml -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go.sum -------------------------------------------------------------------------------- /go/aggregators/bucket-storage.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/aggregators/bucket-storage.go -------------------------------------------------------------------------------- /go/aggregators/indexed-bucket.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/aggregators/indexed-bucket.go -------------------------------------------------------------------------------- /go/aggregators/labelled-bucket.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/aggregators/labelled-bucket.go -------------------------------------------------------------------------------- /go/deflate/deflate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/deflate/deflate.go -------------------------------------------------------------------------------- /go/deflate/deflate_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/deflate/deflate_test.go -------------------------------------------------------------------------------- /go/extractor/extractor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/extractor/extractor.go -------------------------------------------------------------------------------- /go/extractor/extractor_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/extractor/extractor_test.go -------------------------------------------------------------------------------- /go/storage/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/common.go -------------------------------------------------------------------------------- /go/storage/features.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/features.go -------------------------------------------------------------------------------- /go/storage/format.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/format.go -------------------------------------------------------------------------------- /go/storage/group.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/group.go -------------------------------------------------------------------------------- /go/storage/templates/bucket-storage.go.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/templates/bucket-storage.go.tmpl -------------------------------------------------------------------------------- /go/storage/templates/features-lib.go.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/templates/features-lib.go.tmpl -------------------------------------------------------------------------------- /go/storage/templates/labelled-storage-mapping.go.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/templates/labelled-storage-mapping.go.tmpl -------------------------------------------------------------------------------- /go/storage/templates/sequential-storage-mapping.go.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/templates/sequential-storage-mapping.go.tmpl -------------------------------------------------------------------------------- /go/storage/templates/storage-deployer.go.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/storage/templates/storage-deployer.go.tmpl -------------------------------------------------------------------------------- /go/types/features.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/features.go -------------------------------------------------------------------------------- /go/types/image.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/image.go -------------------------------------------------------------------------------- /go/types/image_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/image_test.go -------------------------------------------------------------------------------- /go/types/load-image.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/load-image.go -------------------------------------------------------------------------------- /go/types/string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/string.go -------------------------------------------------------------------------------- /go/types/token.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/go/types/token.go -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/logo.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/package.json -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/remappings.txt -------------------------------------------------------------------------------- /test/BucketStorageLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/BucketStorageLib.t.sol -------------------------------------------------------------------------------- /test/IndexedBucketLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/IndexedBucketLib.t.sol -------------------------------------------------------------------------------- /test/LabelledBucketLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/LabelledBucketLib.t.sol -------------------------------------------------------------------------------- /test/features/FeaturesLoader.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/features/FeaturesLoader.sol -------------------------------------------------------------------------------- /test/features/FeaturesWriterTest.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/features/FeaturesWriterTest.t.sol -------------------------------------------------------------------------------- /test/features/generate.go: -------------------------------------------------------------------------------- 1 | package indexed 2 | 3 | //go:generate go run ./testgen 4 | -------------------------------------------------------------------------------- /test/features/testgen/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/features/testgen/main.go -------------------------------------------------------------------------------- /test/indexed/IndexedBuckets.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/indexed/IndexedBuckets.t.sol -------------------------------------------------------------------------------- /test/indexed/generate.go: -------------------------------------------------------------------------------- 1 | package indexed 2 | 3 | //go:generate go run ./testgen 4 | -------------------------------------------------------------------------------- /test/indexed/testgen/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/test/indexed/testgen/main.go -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/proofxyz/solidify/HEAD/yarn.lock --------------------------------------------------------------------------------