{"id":15178569,"url":"https://github.com/paypal/mocca","last_synced_at":"2025-10-26T17:30:55.032Z","repository":{"id":43776426,"uuid":"373268552","full_name":"paypal/mocca","owner":"paypal","description":"Mocca is a GraphQL client for JVM languages with the goal of being easy to use, flexible and modular.","archived":false,"fork":false,"pushed_at":"2023-11-28T18:09:07.000Z","size":313,"stargazers_count":15,"open_issues_count":13,"forks_count":14,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-01-31T21:41:22.694Z","etag":null,"topics":["graphql","groovy","java","jvm","kotlin","scala"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/paypal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","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}},"created_at":"2021-06-02T18:36:35.000Z","updated_at":"2024-08-24T09:54:16.000Z","dependencies_parsed_at":"2023-11-28T18:48:19.170Z","dependency_job_id":null,"html_url":"https://github.com/paypal/mocca","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2Fmocca","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2Fmocca/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2Fmocca/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paypal%2Fmocca/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paypal","download_url":"https://codeload.github.com/paypal/mocca/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238375107,"owners_count":19461545,"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":["graphql","groovy","java","jvm","kotlin","scala"],"created_at":"2024-09-27T15:05:32.518Z","updated_at":"2025-10-26T17:30:49.659Z","avatar_url":"https://github.com/paypal.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.paypal.mocca/mocca-client/badge.svg?style=flat)](http://search.maven.org/#search|ga|1|g:com.paypal.mocca)\n[![javadoc](https://javadoc.io/badge2/com.paypal.mocca/mocca-client/javadoc.svg)](https://javadoc.io/doc/com.paypal.mocca/mocca-client)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n\u003cbr\u003e\u003cbr\u003e\n\u003cdiv style=\"text-align:center\"\u003e\u003cimg src=\"docs/img/logo/mocca_logo_horizontal.png\"/\u003e\u003c/div\u003e\n\u003cbr\u003e\n\n# Mocca\n\nMocca is a GraphQL client for JVM languages with the goal of being easy to use, flexible and modular. With that in mind, Mocca was designed to offer:\n\n1. Simple and intuitive API\n1. Good end user documentation\n1. Pluggable HTTP clients\n1. Pluggable components, relying on great open source libraries, allowing features such as code generation, resilience, parsers and observability\n\n## Features\n\nMocca offers support for:\n\n1. GraphQL features\n    1. GraphQL queries and mutations\n    1. Automatic variable definition\n    1. Automatic selection set definition based on DTO response type\n    1. Annotation and String based custom input variables\n    1. Annotation and String based custom selection set\n1. Static and dynamic HTTP request headers\n1. Observability via Micrometer\n1. Resilience via Resilience4J\n1. Flexible API allowing various pluggable HTTP clients\n1. Asynchronous support\n    1. CompletableFuture\n    1. Pluggable asynchronous HTTP clients\n    1. User provided executor services\n1. Request parameters validation via Bean Validation\n\n## Quick start\n\nPlease read the **Quick Start** section in [Mocca documentation](docs/END_USER_DOCUMENT.md) for instructions on how to start using Mocca quickly.\n\n## End-user documentation\n\nPlease refer to [Mocca documentation](docs/END_USER_DOCUMENT.md).\n\n## Release notes\nSee [Mocca release notes](docs/RELEASE_NOTES.md).\n\n## Reporting an issue\nPlease open an issue using our [GitHub issues](https://github.com/paypal/mocca/issues) page.\n\n## Contributing\nYou are very welcome to contribute to Mocca! Read our [Contribution guidelines](docs/CONTRIBUTING.md).\n\n## License\nThis project is licensed under the [MIT License](LICENSE.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaypal%2Fmocca","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaypal%2Fmocca","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaypal%2Fmocca/lists"}