{"id":1583,"url":"https://github.com/badoo/Chatto","last_synced_at":"2025-08-06T13:32:00.480Z","repository":{"id":37502729,"uuid":"46873579","full_name":"badoo/Chatto","owner":"badoo","description":"A lightweight framework to build chat applications, made in Swift","archived":false,"fork":false,"pushed_at":"2024-10-25T09:16:40.000Z","size":4606,"stargazers_count":4491,"open_issues_count":156,"forks_count":594,"subscribers_count":123,"default_branch":"master","last_synced_at":"2024-12-06T21:48:19.179Z","etag":null,"topics":[],"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/badoo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","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":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-11-25T16:30:26.000Z","updated_at":"2024-12-06T08:47:05.000Z","dependencies_parsed_at":"2023-11-09T11:52:21.943Z","dependency_job_id":"b40cba2e-0272-4999-9743-43e2f7def344","html_url":"https://github.com/badoo/Chatto","commit_stats":{"total_commits":906,"total_committers":74,"mean_commits":"12.243243243243244","dds":0.7704194260485651,"last_synced_commit":"bcda81e4fe391eb87a7bbc8d0eebe30b9ccfc51f"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/badoo%2FChatto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/badoo%2FChatto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/badoo%2FChatto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/badoo%2FChatto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/badoo","download_url":"https://codeload.github.com/badoo/Chatto/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228645784,"owners_count":17950955,"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":[],"created_at":"2024-01-05T20:15:50.436Z","updated_at":"2024-12-09T14:30:42.611Z","avatar_url":"https://github.com/badoo.png","language":"Swift","funding_links":[],"categories":["Messaging","Libs","Swift","HarmonyOS","\u003ca name=\"for-projects\"\u003e\u003c/a\u003e For Projects","UI and SwiftUI","Chat [🔝](#readme)","OOM-Leaks-Crash"],"sub_categories":["Video","Chat","Other free courses","Windows Manager","\u003ca name=\"for-projects-example-projects\"\u003e\u003c/a\u003e Example Projects","IM-Live"],"readme":"# Chatto [![Build Status](https://travis-ci.org/badoo/Chatto.svg?branch=master)](https://travis-ci.org/badoo/Chatto) [![codecov.io](https://codecov.io/github/badoo/Chatto/coverage.svg?branch=master)](https://codecov.io/github/badoo/Chatto?branch=master) [![CocoaPods Compatible](https://img.shields.io/cocoapods/v/Chatto.svg)](https://img.shields.io/cocoapods/v/Chatto.svg) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n\n\n`Chatto` is a Swift lightweight framework to build chat applications. It's been designed to be extensible and performant. Along with `Chatto` there is `ChattoAdditions`, a companion framework which includes cells for messages and an extensible input component. You can find more details about how it was implemented in our [blog](https://techblog.badoo.com/blog/2015/12/04/how-we-made-chatto/). See them in action!\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./readme-images/readme-pic-1.png\" /\u003e\n\u003cimg src=\"./readme-images/readme-pic-2.png\" /\u003e\n\u003cimg src=\"./readme-images/readme-pic-3.png\" /\u003e\n\u003cimg src=\"./readme-images/readme-pic-4.png\" /\u003e\n\u003c/div\u003e\n\n## Features\n- Calculation of collection view changes and layout in background\n- Supports pagination in both directions and autoloading\n- Message count contention for fast pagination and rotation with thousands of messsages\n- Accessory view revealing by swiping from right\n- Interactive keyboard dismissal\n- Text bubbles\n- Photo bubbles\n- Extensible input bar\n\n## How to use\n\nCheck the [wiki!](https://github.com/badoo/Chatto/wiki)\n\n## How to contribute\n\nIf you **just have a question**, please reach us in [our gitter room](https://gitter.im/chatto-framework/community)\n\nIf you'd like to file a bug report, suggest changes or submit a pull request, please [check our contribution guide](.github/CONTRIBUTING.md)\n\n## How to install\n### CocoaPods\n\n1. Make sure `use_frameworks!` is added to your `Podfile`.\n\n2. Include the following in your `Podfile`:\n  ```\n  # Swift 5\n  pod 'Chatto', '= 4.1.0'\n  pod 'ChattoAdditions', '= 4.1.0' # if you want to use the cells or the input component\n  ```\n  ```\n  # Swift 4.2\n  pod 'Chatto', '= 3.4.0'\n  pod 'ChattoAdditions', '= 3.4.0' # if you want to use the cells or the input component\n  ```\n  ```\n  # Swift 4\n  pod 'Chatto', '= 3.3.1'\n  pod 'ChattoAdditions', '= 3.3.1' # if you want to use the cells or the input component\n  ```\n  ```\n  # Swift 3\n  pod 'Chatto', '= 3.2.0'\n  pod 'ChattoAdditions', '= 3.2.0' # if you want to use the cells or the input component\n  ```\n  ```\n  # Swift 2.x\n  pod 'Chatto', '= 2.1.0'\n  pod 'ChattoAdditions', '= 2.1.0' # if you want to use the cells or the input component\n  ```\nIf you like living on the bleeding edge, you can use the `master` branch with:\n  ```\n  pod 'Chatto', :git =\u003e 'https://github.com/badoo/Chatto', :branch =\u003e 'master'\n  pod 'ChattoAdditions', :git =\u003e 'https://github.com/badoo/Chatto', :branch =\u003e 'master'\n  ```\n3. Run `pod install`\n\n### Carthage\n\nIf you’re using [Carthage](https://github.com/Carthage/Carthage#if-youre-building-for-ios-tvos-or-watchos), simply add Chatto to your Cartfile:\n```\n# Swift 5\ngithub \"badoo/Chatto\"\n```\n```\n# Swift 2.x\ngithub \"badoo/Chatto\" \"swift-2\"\n```\n\n### Manually\n\n1. Clone, add as a submodule or [download.](https://github.com/badoo/Chatto/archive/master.zip)\n2. Drag and drop `Chatto` and/or `ChattoAdditions` project to your workspace\n3. Add `Chatto` and/or `ChattoAdditions` to Embedded binaries\n\n## License\nSource code is distributed under MIT license.\n\n## Blog\nRead more on our [tech blog](https://medium.com/bumble-tech) or explore our other [open source projects](https://github.com/badoo)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbadoo%2FChatto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbadoo%2FChatto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbadoo%2FChatto/lists"}