{"id":16683917,"url":"https://github.com/meniny/cria","last_synced_at":"2026-04-18T13:31:33.681Z","repository":{"id":56906809,"uuid":"134363495","full_name":"Meniny/Cria","owner":"Meniny","description":"An elegant HTTP requests framework for Swift with ❤️ and Alamofire + Promise. ☁️","archived":false,"fork":false,"pushed_at":"2019-04-21T10:53:53.000Z","size":862,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-22T03:16:17.583Z","etag":null,"topics":["alamofire","http","https","ios","macos","promise","tvos"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/Meniny.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-05-22T05:10:02.000Z","updated_at":"2020-02-01T04:42:20.000Z","dependencies_parsed_at":"2022-08-20T19:20:23.368Z","dependency_job_id":null,"html_url":"https://github.com/Meniny/Cria","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meniny%2FCria","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meniny%2FCria/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meniny%2FCria/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Meniny%2FCria/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Meniny","download_url":"https://codeload.github.com/Meniny/Cria/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243403542,"owners_count":20285406,"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":["alamofire","http","https","ios","macos","promise","tvos"],"created_at":"2024-10-12T14:27:18.380Z","updated_at":"2026-04-18T13:31:33.651Z","avatar_url":"https://github.com/Meniny.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":":name: Cria\n:author: Elias Abel\n:author_esc: Elias%20Abel\n:mail: admin@meniny.cn\n:desc: an elegant HTTP requests framework for Swift with ❤️ and Alamofire + Promise ☁️\n:icon: {name}.png\n:version: 1.1.0\n:na: N/A\n:ios: 8.0\n:macos: 10.10\n:watchos: {na}\n:tvos: 9.0\n:linux: {na}\n:xcode: 10.2\n:swift: 5\n:license: MIT\n:sep: %20%7C%20\n:platform: iOS{sep}macOS{sep}tvOS\n// :toc: left\n:toclevels: 6\n:toc-title: TOC\n:source-highlighter: highlightjs\n// :source-highlighter: pygments\n= Meet `{name}`\n{author} \u003c{mail}\u003e\nv{version}, 2019-04-21\n\n[subs=\"attributes\"]\n++++\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./Assets/{icon}\" alt=\"{name}\" width=\"200px\"\u003e\n  \u003cbr/\u003e\u003cbr/\u003e\n  \u003cimg alt=\"Author\" src=\"https://img.shields.io/badge/author-{author_esc}-blue.svg\"\u003e\n  \u003cimg alt=\"EMail\" src=\"https://img.shields.io/badge/mail-{mail}-orange.svg\"\u003e\n  \u003cimg alt=\"MIT\" src=\"https://img.shields.io/badge/license-{license}-blue.svg\"\u003e\n  \u003cbr/\u003e\n  \u003cimg alt=\"Version\" src=\"https://img.shields.io/badge/version-{version}-brightgreen.svg\"\u003e\n  \u003cimg alt=\"Platforms\" src=\"https://img.shields.io/badge/platform-{platform}-lightgrey.svg\"\u003e\n  \u003cimg alt=\"Swift\" src=\"https://img.shields.io/badge/swift-{swift}%2B-orange.svg\"\u003e\n  \u003cbr/\u003e\n  \u003cimg alt=\"Build Passing\" src=\"https://img.shields.io/badge/build-passing-brightgreen.svg\"\u003e\n  \u003cimg alt=\"Cocoapods\" src=\"https://img.shields.io/badge/cocoapods-compatible-brightgreen.svg\"\u003e\n  \u003cimg alt=\"Carthage\" src=\"https://img.shields.io/badge/carthage-compatible-brightgreen.svg\"\u003e\n  \u003cimg alt=\"SPM\" src=\"https://img.shields.io/badge/spm-compatible-brightgreen.svg\"\u003e\n\u003c/p\u003e\n++++\n\n:toc:\n\n== 🏵 Introduction\n\n**{name}** is {desc}.\n\nNOTE: `Cria` means a juvenile alpaca, also commonly known as `草泥马` in Mandarin Chinese.\n\n== 📋 Requirements\n\n[%header]\n|===\n2+^m|Type 1+^m|Requirement\n\n1.5+^.^|Platform ^|iOS ^|{ios}\n^|macOS ^|{macos}\n^|tvOS ^|{tvos}\n^|watchOS ^|{watchos}\n^|Linux ^|{linux}\n\n^|IDE ^|Xcode ^| {xcode}\n^|Language ^|Swift ^| {swift}\n|===\n\n== 📲 Installation\n\n=== CocoaPods\n\n`{name}` is available on link:https://cocoapods.org[CocoaPods].\n\n[source, ruby, subs=\"verbatim,attributes\"]\n----\nuse_frameworks!\npod '{name}'\n----\n\n=== Manually\n\nCopy all files in the `{name}` directory into your project.\n\n== 🛌 Dependency\n\n* link:https://github.com/Meniny/Oath[Oath]\n* link:https://github.com/Alamofire/Alamofire[Alamofire]\n\n== ❤️ Contribution\n\nYou are welcome to fork and submit pull requests.\n\n== 🔖 License\n\n`{name}` is open-sourced software, licensed under the link:./LICENSE.md[`{license}`] license.\n\n== 🔫 Usage\n\n[source, swift, subs=\"verbatim,attributes\"]\n----\nimport {name}\nimport Oath\n\nlet cria = Cria.init(\"https://meniny.cn/api/v2/\")\n\n// A simple get request:\ncria.get(\"posts.json\").then { response in\n        print(\"Done: \", response.code)\n    }.onError { error in\n        print(\"Error: \", error.localizedDescription)\n}\n\n// or:\ncria.do(.get, path: \"posts.json\").then { response in\n        print(\"Done: \", response.code)\n    }.onError { error in\n        print(\"Error: \", error.localizedDescription)\n}\n----\n\nFor `multipart-form`:\n\n[source, swift, subs=\"verbatim,attributes\"]\n----\nimport {name}\nimport Oath\n\nlet cria = Cria.init(\"https://some-domain.com/\")\n\nlet image = #imageLiteral(resourceName: \"Cria\")\nif let data = UIImageJPEGRepresentation(image, 1) {\n    let part = CriaFormPart.init(.data(data), name: \"image\", mimetype: \"image/jpeg\")\n    cria.postMultipart(\"some_uploading_api/subpath/\", data: [part]).progress { p in\n        print(\"Progress: \", p)\n        }.then { response in\n            print(\"Done: \", response.code)\n        }.onError { error in\n            print(\"Error: \", error.localizedDescription)\n    }\n}\n----\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeniny%2Fcria","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmeniny%2Fcria","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmeniny%2Fcria/lists"}