{"id":37022591,"url":"https://github.com/vitalize/swole-dyn-admin","last_synced_at":"2026-01-14T02:42:02.005Z","repository":{"id":57729467,"uuid":"95266083","full_name":"vitalize/swole-dyn-admin","owner":"vitalize","description":"A collection of classes that can make your Oracle ATG Commerce Dyn Admin Swole","archived":false,"fork":false,"pushed_at":"2018-09-24T15:18:53.000Z","size":646,"stargazers_count":0,"open_issues_count":2,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-24T15:11:03.481Z","etag":null,"topics":["atg","dyn-admin","dynamo","oracle-atg-commerce","rql"],"latest_commit_sha":null,"homepage":"https://vitalize.github.io/swole-dyn-admin/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vitalize.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2017-06-24T00:37:32.000Z","updated_at":"2018-09-24T15:18:54.000Z","dependencies_parsed_at":"2022-09-10T22:22:56.185Z","dependency_job_id":null,"html_url":"https://github.com/vitalize/swole-dyn-admin","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/vitalize/swole-dyn-admin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitalize%2Fswole-dyn-admin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitalize%2Fswole-dyn-admin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitalize%2Fswole-dyn-admin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitalize%2Fswole-dyn-admin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vitalize","download_url":"https://codeload.github.com/vitalize/swole-dyn-admin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vitalize%2Fswole-dyn-admin/sbom","scorecard":{"id":923997,"data":{"date":"2025-08-11","repo":{"name":"github.com/vitalize/swole-dyn-admin","commit":"3fbbcd2283bcf2a341ab4b02b9ab2360de4496c7"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.9,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Binary-Artifacts","score":9,"reason":"binaries present in source code","details":["Warn: binary detected: .mvn/wrapper/maven-wrapper.jar:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-25T08:50:09.518Z","repository_id":57729467,"created_at":"2025-08-25T08:50:09.518Z","updated_at":"2025-08-25T08:50:09.518Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408712,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"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":["atg","dyn-admin","dynamo","oracle-atg-commerce","rql"],"created_at":"2026-01-14T02:42:01.285Z","updated_at":"2026-01-14T02:42:01.990Z","avatar_url":"https://github.com/vitalize.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Travis](https://img.shields.io/travis/vitalize/swole-dyn-admin.svg)](https://travis-ci.org/vitalize/swole-dyn-admin)\n[![Maven Central](https://img.shields.io/maven-central/v/com.vitalize/swole-dyn-admin.svg)](https://search.maven.org/#search%7Cga%7C1%7Ca%3A%22swole-dyn-admin%22)\n[![GitHub release](https://img.shields.io/github/release/vitalize/swole-dyn-admin.svg)](https://github.com/vitalize/swole-dyn-admin/releases)\n[![Gitter](https://img.shields.io/gitter/room/vitalize/swole-dyn-admin.svg)](https://gitter.im/vitalize/swole-dyn-admin)\n[![Codacy grade](https://img.shields.io/codacy/grade/33f5b076d8d24896a60588195209c99e.svg)](https://www.codacy.com/app/drdamour/swole-dyn-admin)\n[![Codacy coverage](https://img.shields.io/codacy/coverage/33f5b076d8d24896a60588195209c99e.svg)](https://www.codacy.com/app/drdamour/swole-dyn-admin)\n[![Coveralls](https://img.shields.io/coveralls/vitalize/swole-dyn-admin.svg)](https://coveralls.io/github/vitalize/swole-dyn-admin)\n\n# swole-dyn-admin\nA collection of classes that can make your Oracle ATG Commerce Dyn Admin Swole.\n\n## What?\nThis project makes the dyn admin swole by tweaking the ouput to add various features.  These features are explained in the subsections.\n\n### GSA Admin Servlet Enhancements\nThe GSA Admin Servlet is responsbile for drawing the GSARepository admin interface.  The page you probably spend a lot of time running arbitraty RQL within.  Swole Dyn Admin makes this servlet swole with a couple of useful features.\n\n#### Jump to Query Box\nIf you have ever had a repo with a lot of item descriptors..you are used to scrolling down to get to the query box.  Swole Dyn Admin adds a convenient hyperlink to jump you down to RQL box.\n![Jump Around, Jump Around, Get up, Get Up, and Get Down...jump..jump..jump](/screenshots/SwoleGSAAdminServlet/jump-to-query.png)\n\n#### RQL Toolbar\nIf you have used RQL you have certainly typed `\u003cquery-items item-descriptor=...` enough in your life.  Now you can point and click yourself to constructing the most basic queries!  Options for ordering and paging the results are also available, as well as a handy link to the online RQL overview.\n![It looks terrible, and it functions only slightly better](/screenshots/SwoleGSAAdminServlet/rql-toolbar.png)\n\nIt's very likely you often want to query for something by its ID.  The Append Query by ID button is made for this, it appends a query and moves the focus of the cursor to allow you to type in your ID quickly\n![Saves precious microseconds](/screenshots/SwoleGSAAdminServlet/rql-toolbar-query-by-id.png)\n\n#### Better RQL Box\nThe RQL Box is now bigger...but it's better too.  When you submit a query you no longer have to scroll down to see your results, instead the RQL box submits against a html fragment identifier for the results.  No screen shot can do this marvelousness justice.\n\n#### Link to RQL Query\nIt's reasonable to assume a lot of the time you are doing RQL queries you are troubleshooting an issue.  An important component of troubleshooting is sharing discoveries with your team.  This has always been hard in the dyn admin because it requires sharing the link to the admin servlet, credentials, and usually the RQL query that shows the data.  With the SwoleGSAAdminServlet the first and third pieces are combined in a single link that will execute your `query-items` query!  What's more every `query-items` you perform now has a shareable link generated for it.\n![Take this and shove it in your Jira ticket](/screenshots/SwoleGSAAdminServlet/link-to-rql-query.png)\n\n#### RQL Item Link Navigation\nWhen viewing an RQL result many times the item you are looking at relates to other items in the same or other repositories.  Generally this requires finding the repository and adding more RQL.  Swole Dyn Admin automatically hotlinks any related items using the Link to RQL Query functionality so that admins may browse through the related items with easke\n![Take this and shove it in your Jira ticket](/screenshots/SwoleGSAAdminServlet/rql-item-link-navigation.png)\n\n## How?\nThe jar contains a bunch of extensions to common ATG nucleus classes.  Drop properties files that override the class used with the swole version.  \n\nFor example suppose you have a GSARepository at /atg/commerce/catalog/ProductCatalog then all you need to do is add swole-dyn-admin.jar to your module's MANIFEST.MF ATG-Class-Path: and drop a /atg/commerce/catalog/ProductCatalog.properties file with the following contents:\n```\n$class=com.vitalize.atg.adapter.gsa.SwoleGSARepository\n```\n\n\n## Why?\nIf you use or develop with Oracle ATG Commerce, then you certainly are a Dyn Admin user.  Vitalize thought it would be better to have swole versions of things when developing [bodybuilding.com](https://www.bodybuilding.com/store)\n \n## Contribute?\nIdeas are needed!  Everyone has probably said \"I wish dyn admin would...\" at some point, so now you have a place to express that wish.  Just open an issue.\n\nWe also happily accept pull requests. The nature of the project is that it's hard to verify a feature works on all versions, so be prepared to rework some things to make them more version agnostics..possibly.  The dyn admin doesn't change much...so maybe it will all be ok.  We appreciate reports of incompatibilities.\n\n## Differences from BetterDynAdmin\nThis project is very similar to the excellent [BetterDynAdmin](https://github.com/jc7447/BetterDynAdmin).  Surprisingly this project was created without knowing of BetterDynAdmin's existence...but we came to some very similar UX.  The big difference is BetterDynAdmin is a grease monkey based client side manipulation of the existing dyn-admin while swole-dyn-admin is a server side modification of ATG.  The former requires installation in every machine of every user (with very easy steps) while the latter requires no installation on client devices.\n\n## Disclaimer\n\nThis project is completely unofficial and in no way endorsed by Oracle Corporation. Oracle ATG web commerce is a copyrighted product of Oracle Corporation and no rights are contested by this project or it contents.\n\n## LICENSE\nCopyright 2017 Vitalize LLC\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitalize%2Fswole-dyn-admin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvitalize%2Fswole-dyn-admin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvitalize%2Fswole-dyn-admin/lists"}