{"id":26716431,"url":"https://github.com/processing/processing-library-template-gradle","last_synced_at":"2025-09-24T01:11:16.045Z","repository":{"id":40335600,"uuid":"507324993","full_name":"processing/processing-library-template-gradle","owner":"processing","description":"Processing Library Template for Gradle and IntelliJ ","archived":false,"fork":false,"pushed_at":"2024-10-23T11:28:41.000Z","size":12277,"stargazers_count":10,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T01:36:02.286Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"jjeongin/ml4processing","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/processing.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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,"zenodo":null}},"created_at":"2022-06-25T13:56:35.000Z","updated_at":"2025-04-04T04:36:05.000Z","dependencies_parsed_at":"2025-04-14T01:31:10.353Z","dependency_job_id":"a5cae08d-1541-41a2-97e7-df47616b30d8","html_url":"https://github.com/processing/processing-library-template-gradle","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/processing/processing-library-template-gradle","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/processing%2Fprocessing-library-template-gradle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/processing%2Fprocessing-library-template-gradle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/processing%2Fprocessing-library-template-gradle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/processing%2Fprocessing-library-template-gradle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/processing","download_url":"https://codeload.github.com/processing/processing-library-template-gradle/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/processing%2Fprocessing-library-template-gradle/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260528424,"owners_count":23022939,"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":"2025-03-27T15:27:10.190Z","updated_at":"2025-09-24T01:11:10.974Z","avatar_url":"https://github.com/processing.png","language":"Java","readme":"\u003e [!WARNING]\n\u003e This repository is deprecated. Please use the latest Gradle template at [processing/processing-library-template](https://github.com/processing/processing-library-template).\n\n# Gradle/IntelliJ template for Processing library \n\nThe following describes how to set up a Processing library project in [Gradle](https://gradle.org/), build it successfully, use [IntelliJ IDEA](https://www.jetbrains.com/idea/) for development/debugging of the library, and to make your library ready for distribution.\n\n## Build\n- First, install [Adoptium OpenJDK 17](https://adoptium.net/) (required by Processing 4+)\n\nRun the included gradle wrapper command to compile the source code:\n\n```bash\n# windows\ngradlew.bat compileJava\n\n# mac / unix\n./gradlew compileJava\n```\n\nTo build a new release package under `/release/YourLibrary.zip`, use:\n\n```bash\n# windows\ngradlew.bat releaseProcessingLib\n\n# mac / unix\n./gradlew releaseProcessingLib\n```\n\nIf you have Gradle installed in your system, you can replace ```gradlew``` with ```gradle``` in the commands above.\n\n## Developing in IntelliJ IDEA\n\nThe library can be imported as an IntelliJ project following the steps below:\n\n- Download and install [IntelliJ IDEA](https://www.jetbrains.com/idea/download/).\n- Clone this repo and build the library following the instructions in the previous section.\n- Clone the [processing4 repo](https://github.com/processing/processing4).\n- Create a new project in IntelliJ with the name and location of your choice, for example ```lib-dev```. This project is where you can create new Processing examples to test your library.\n- Create a new module in the project to import the core of Processing, for example in a name ```processing-core```, using the ```core``` folder under the processing4 repo as the content root and module file location. As \"JARs or Directory\" dependency of this module, add ```\u003cpath to processing4 repo\u003e/core/library```. Make sure to use IntelliJ as the Build System.\n- Create another module in the project, this time for ```YourLibrary```. This is the Processing library project you have been working on, in this case, this repository. Use the root folder of ```YourLibrary```, or ```processing-library-template-gradle```, as the content root and module file location. Add the ```processing-core``` module as a module dependency for this module.\n- Add the ```processing-core``` and ```YourLibrary``` modules as module dependencies to the main module of the project (```lib-dev```). \n- Add the ```libs``` subdirectory inside the ```YourLibrary``` directory (it should have been created during the library building step in the above section) as a \"JARs or Directory\" dependency of the main module, ```lib-dev```.\n- You can now create a test program under the ```src``` folder of the main module of the ```lib-dev``` project:\n\n```\nimport processing.core.*; // import processing core\nimport template.library.*; // import sample library\n\npublic class HelloTest extends PApplet {\n    HelloLibrary hello;\n\n    public void settings() {\n        size(parseInt(args[0]), parseInt(args[1]));\n        smooth();\n    }\n\n    public void setup() {\n        hello = new HelloLibrary(this);\n\n        PFont font = createFont(\"Arial\", 40);\n        textFont(font);\n    }\n\n    public void draw() {\n        background(0);\n        fill(255);\n        text(hello.sayHello(), 40, 200);\n    }\n\n    static public void main(String[] args) {\n        PApplet.main(HelloTest.class, \"400\", \"400\");\n    }\n}\n```\n\nYou should be able to run the program from the IntelliJ IDE.\n\nPlease note that any file read from the IntelliJ program should be placed inside the subdirectory ```data``` located inside the root of the IntelliJ project (i.e.: ```lib-dev/data```)\n\n## Contributors\n\nThis template is based on the [Deep Vision Library](https://github.com/cansik/deep-vision-processing) by [Florian Bruggisser](https://github.com/cansik), and was created as part of [Jeongin Lee](https://github.com/jjeongin)'s [Machine Learning Library](https://github.com/jjeongin/ml4processing) project during Google Summer of Code 2022, mentored by [Andrés Colubri](https://github.com/codeanticode).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprocessing%2Fprocessing-library-template-gradle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprocessing%2Fprocessing-library-template-gradle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprocessing%2Fprocessing-library-template-gradle/lists"}