{"id":15178562,"url":"https://github.com/icfnext/aem-groovy-extension","last_synced_at":"2025-10-26T17:30:50.157Z","repository":{"id":14552871,"uuid":"17268325","full_name":"icfnext/aem-groovy-extension","owner":"icfnext","description":"OSGi bundle containing Groovy builders and metaclasses for Adobe Experience Manager.","archived":false,"fork":false,"pushed_at":"2019-03-12T20:42:57.000Z","size":518,"stargazers_count":4,"open_issues_count":2,"forks_count":10,"subscribers_count":12,"default_branch":"develop","last_synced_at":"2025-08-16T09:35:41.046Z","etag":null,"topics":["adobe-cq","aem","groovy","osgi"],"latest_commit_sha":null,"homepage":"http://icfnext.github.io/aem-groovy-extension/groovydocs/index.html","language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/icfnext.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-02-27T23:13:59.000Z","updated_at":"2023-01-03T19:40:38.000Z","dependencies_parsed_at":"2022-09-14T22:55:20.245Z","dependency_job_id":null,"html_url":"https://github.com/icfnext/aem-groovy-extension","commit_stats":null,"previous_names":["citytechinc/aem-groovy-extension"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/icfnext/aem-groovy-extension","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icfnext%2Faem-groovy-extension","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icfnext%2Faem-groovy-extension/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icfnext%2Faem-groovy-extension/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icfnext%2Faem-groovy-extension/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/icfnext","download_url":"https://codeload.github.com/icfnext/aem-groovy-extension/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icfnext%2Faem-groovy-extension/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281140884,"owners_count":26450537,"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","status":"online","status_checked_at":"2025-10-26T02:00:06.575Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["adobe-cq","aem","groovy","osgi"],"created_at":"2024-09-27T15:05:31.100Z","updated_at":"2025-10-26T17:30:49.876Z","avatar_url":"https://github.com/icfnext.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AEM Groovy Extension\n\n[ICF Next](http://www.icfnext.com/)\n\n## Overview\n\nOSGi bundle containing Groovy builders and metaclasses for Adobe Experience Manager.  The bundle exposes an API to implement extension \"provider\" services to register additional Groovy metaclasses in the container.\n\n```groovy\nnew NodeBuilder(session).content {\n    satirists(\"sling:Folder\") {\n        bierce(firstName: \"Ambrose\", lastName: \"Bierce\", birthDate: Calendar.instance.updated(year: 1842, month: 5, date: 24))\n        mencken(firstName: \"H.L.\", lastName: \"Mencken\", birthDate: Calendar.instance.updated(year: 1880, month: 8, date: 12))\n        other(\"sling:Folder\", \"jcr:title\": \"Other\")\n    }\n}\n```\n\nSee [Groovydocs](http://icfnext.github.io/aem-groovy-extension/groovydocs/index.html) for complete API documentation.\n\n## Requirements\n\n* AEM 6.x running on localhost:4502\n* [Maven](http://maven.apache.org/) 3.x\n\n## Compatibility\n\nGroovy Extension Version(s) | AEM Version(s)\n------------ | -------------\n7.x.x | 6.3, 6.4, 6.5\n6.x.x, 5.x.x | 6.4\n4.x.x | 6.3\n3.x.x, 2.x.x | 6.2\n1.x.x | 6.1\n0.9.x, 0.8.x | 6.0\n\u003c= 0.7.x | 5.6 (CQ5)\n\n## Usage and Installation\n\n1. Add dependency to your project's Maven `pom.xml`.\n\n        \u003cdependency\u003e\n            \u003cgroupId\u003ecom.icfolson.aem.groovy.extension\u003c/groupId\u003e\n            \u003cartifactId\u003eaem-groovy-extension-bundle\u003c/artifactId\u003e\n            \u003cversion\u003e7.0.0\u003c/version\u003e\n            \u003cscope\u003eprovided\u003c/scope\u003e\n        \u003c/dependency\u003e\n\n2. Install the AEM Groovy Extension package.\n\n        mvn install -P local\n\n    or\n\n        mvn install -P local,replicate\n\n    The optional `replicate` profile activates the deployed package to the local publish instance.\n\n    To install to a non-localhost AEM environment, connection parameters can be passed as Maven properties on the command line (see the parent POM file for additional environment property names).\n\n        mvn install -P local -Daem.host=hostname -Daem.port.author=7402\n\n## Context Path Support\n\nIf you are running AEM with a context path, set the Maven property `aem.context.path` during installation.\n\n    mvn install -P local -Daem.context.path=/context\n\n## Registering Additional Metaclasses\n\nServices implementing the `com.icfolson.aem.groovy.extension.api.MetaClassExtensionProvider` will be automatically discovered and bound by the OSGi container.  These services can be implemented in any deployed bundle.  The AEM Groovy Extension bundle will handle the registration and removal of supplied metaclasses as these services are activated/deactivated in the container.  See the `DefaultMetaClassExtensionProvider` service for the proper closure syntax for registering metaclasses.\n\n## Versioning\n\nFollows [Semantic Versioning](http://semver.org/) guidelines.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficfnext%2Faem-groovy-extension","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficfnext%2Faem-groovy-extension","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficfnext%2Faem-groovy-extension/lists"}