{"id":23390709,"url":"https://github.com/fulldecent/aip-xxx-implementation","last_synced_at":"2025-04-08T14:36:59.322Z","repository":{"id":147412489,"uuid":"198724207","full_name":"fulldecent/aip-xxx-implementation","owner":"fulldecent","description":"Java playground illustrating all best practices for Aion development","archived":false,"fork":false,"pushed_at":"2020-10-13T15:12:27.000Z","size":10106,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-14T10:56:19.369Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fulldecent.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["fulldecent"],"custom":["https://www.paypal.me/fulldecent","https://amazon.com/hz/wishlist/ls/EE78A23EEGQB"]}},"created_at":"2019-07-24T23:48:35.000Z","updated_at":"2019-10-17T00:51:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"9aa464a5-5a10-48e8-8ace-540dc5fb44d2","html_url":"https://github.com/fulldecent/aip-xxx-implementation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulldecent%2Faip-xxx-implementation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulldecent%2Faip-xxx-implementation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulldecent%2Faip-xxx-implementation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fulldecent%2Faip-xxx-implementation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fulldecent","download_url":"https://codeload.github.com/fulldecent/aip-xxx-implementation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247862276,"owners_count":21008669,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-22T03:43:36.755Z","updated_at":"2025-04-08T14:36:59.301Z","avatar_url":"https://github.com/fulldecent.png","language":"Java","funding_links":["https://github.com/sponsors/fulldecent","https://www.paypal.me/fulldecent","https://amazon.com/hz/wishlist/ls/EE78A23EEGQB"],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.com/fulldecent/aip-xxx-implementation.svg?branch=master)](https://travis-ci.com/fulldecent/aip-xxx-implementation)\n\n# :warning: PROJECT STATUS: Technology preview :warning:\n\n# AIP-XXX Favorite Number — Example Implementation\n\nThis project implements AIP-XXX, the Favorite Number Standard using all best practices.\n\n\nThis project also extends by adding its own features.\n\n - `aipXXXGetFavoriteNumber()`\n - `aipXXXSetFavoriteNumber()`\n\nThis project also extends by adding its own features.\n\n - `setFavoriteNumberOnBackwardsDay()`\n - `getOwner()`\n - `setOwner()`\n\n\n\n## Project scope\n\n-[ A simple standard (interface)](https://github.com/fulldecent/aip-xxx-implementation/blob/master/Contract/src/main/java/org/aion/AIPXXXSetter.java)\n- [A simple implementation ](https://github.com/fulldecent/aip-xxx-implementation/blob/master/Contract/src/main/java/org/aion/AIPXXX.java)\n- [A simple dapp web front-end in vanilla JavaScript + Bootstrap CSS](https://github.com/fulldecent/aip-xxx-implementation/tree/master/SimpleApp/src)\n\n## References\n\n- Style, comments\n  - Oracle style guide for doc comments https://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#styleguide\n    - What words to capitalize (refer examples), when to use periods and full sentences\n    - [\"Include tags in the following order\"](https://www.oracle.com/technetwork/java/javase/documentation/index-137868.html#orderoftags)\n    - Align text to columns\n  - Minimal requirements from https://github.com/aionnetwork/aion/wiki/Aion-Code-Conventions\n  - Not required by Aion, but adopting method naming requirements from https://google.github.io/styleguide/javaguide.html\n  - Code reuse pattern for separating an interface specification, a reference implementation, usage demonstrations, testing subjects and other tools. https://github.com/0xcert/ethereum-erc721#structure\n- Which version of dependencies we should support\n  - Aion supports JDK version 11 https://docs.aion.network/docs/environment-variables\n  - Java versions supported by vendor https://www.oracle.com/technetwork/java/java-se-support-roadmap.html\n- Aion protocol design\n  - Yes, `null` can be passed in the ABI https://github.com/aionnetwork/AVM/blob/master/org.aion.avm.userlib/src/org/aion/avm/userlib/abi/ABIEncoder.java#L387-L390\n\n- Setting up a Java + Maven + JUnit + Aion project layout\n  - Best practice for Java+Maven+JUnit project layout https://github.com/junit-team/junit5-samples/tree/master/junit5-jupiter-starter-maven\n  - How to remove Maven initialization errors https://stackoverflow.com/questions/4123044/maven-3-warnings-about-build-plugins-plugin-version\n  - pom.xml for AVM Maven projects https://github.com/satran004/avm-samples/blob/master/SumContract-spock-sample/pom.xml\n- Gitignore from https://github.com/github/gitignore/blob/master/Maven.gitignore\n- Editorconfig is included and some rules are referenced to Google Java Style Guide\n\n## License\n\nThis project is assigned copyright to Aion Foundation and released under the MIT license. Thank you to Aion Foundation for sponsoring this work!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffulldecent%2Faip-xxx-implementation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffulldecent%2Faip-xxx-implementation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffulldecent%2Faip-xxx-implementation/lists"}