{"id":15099175,"url":"https://github.com/andreysolovyev381/libcurl_cpp_wrapper","last_synced_at":"2026-01-06T23:05:25.929Z","repository":{"id":242282686,"uuid":"809157025","full_name":"andreysolovyev381/libcurl_cpp_wrapper","owner":"andreysolovyev381","description":"Bare minimum libcurl C++ wrapper.","archived":false,"fork":false,"pushed_at":"2024-09-04T21:39:21.000Z","size":55,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-01T17:45:26.608Z","etag":null,"topics":["cpp","curl","curl-library","http-requests","libcurl","rest"],"latest_commit_sha":null,"homepage":"","language":"C++","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/andreysolovyev381.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-01T21:29:12.000Z","updated_at":"2024-09-04T21:39:25.000Z","dependencies_parsed_at":"2024-06-01T23:16:20.430Z","dependency_job_id":"a32674b1-60ad-4c91-b178-64fc92364eb0","html_url":"https://github.com/andreysolovyev381/libcurl_cpp_wrapper","commit_stats":{"total_commits":16,"total_committers":1,"mean_commits":16.0,"dds":0.0,"last_synced_commit":"f4e65530559ea6a68c90a3fb857bf8f00c3b5ffb"},"previous_names":["andreysolovyev381/libcurl_cpp_wrapper"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreysolovyev381%2Flibcurl_cpp_wrapper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreysolovyev381%2Flibcurl_cpp_wrapper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreysolovyev381%2Flibcurl_cpp_wrapper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreysolovyev381%2Flibcurl_cpp_wrapper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andreysolovyev381","download_url":"https://codeload.github.com/andreysolovyev381/libcurl_cpp_wrapper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245855081,"owners_count":20683456,"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":["cpp","curl","curl-library","http-requests","libcurl","rest"],"created_at":"2024-09-25T17:07:01.163Z","updated_at":"2026-01-06T23:05:25.921Z","avatar_url":"https://github.com/andreysolovyev381.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Bare minimum C++ libcurl wrapper\n\n### Rational\nThis is a C++ MINI wrapper for well known C-library \"libcurl\". Wrapper makes a query and gets a text or the simplest json as a result. No performance but extreme simplicity - basically makes GET, PUT queries and gets back the chars. \n\nSee the tests for the details and examples.\n\n### Kudos\nTo [magnificent Vinnie Falco](https://github.com/vinniefalco), his contribution to Boost for broader subject. \n\n### Dependency\n* C++20\n* libcurl\n\n### Details\nAllows to manage:\n* url, ie insert something in the middle - in case it deals with some kind of REST API\n* request headers \n* request methods\n\n```cpp\n#include \"curl_client.h\"\n...\n\tstd::string const test_url {\"https://httpbin.org/get\"};\n\tcurl_client::request request;\n\tcurl_client::response response = request.\n\t\t\tsetURL(test_url)-\u003e\n\t\t\timplement(curl_client::Method::Get);\n\t\n\tcurl_client::Print(response, std::cout);\n...\n```\nFor more examples see the ./test folder\n\n### Testing \nDone using this special purpose and very nice [website](https://httpbin.org/). Indeed, there is no guarantee it stays online forever. \n\n### Usage\n* Copy-paste ./curl_client into your source dir. ```add_subdirectory(curl_client)``` is expected\n* Then link curl_client lib into your project, see ./tests/CMakeLists.txt as an example:\n```CMake\ntarget_link_libraries(${TESTS_NAME}\n        ${GTEST_LIBRARIES}\n        curl_client\n)\n```\n\n### License\nMIT","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreysolovyev381%2Flibcurl_cpp_wrapper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandreysolovyev381%2Flibcurl_cpp_wrapper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreysolovyev381%2Flibcurl_cpp_wrapper/lists"}