[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-6873":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":17,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":28,"discoverSource":29},6873,"Chatto","badoo\u002FChatto","badoo","A lightweight framework to build chat applications, made in Swift","",null,"Swift",4504,587,114,150,0,2,3,30.31,"MIT License",false,"master",true,[],"2026-06-12 02:01:31","# Chatto [![Build Status](https:\u002F\u002Ftravis-ci.org\u002Fbadoo\u002FChatto.svg?branch=master)](https:\u002F\u002Ftravis-ci.org\u002Fbadoo\u002FChatto) [![codecov.io](https:\u002F\u002Fcodecov.io\u002Fgithub\u002Fbadoo\u002FChatto\u002Fcoverage.svg?branch=master)](https:\u002F\u002Fcodecov.io\u002Fgithub\u002Fbadoo\u002FChatto?branch=master) [![CocoaPods Compatible](https:\u002F\u002Fimg.shields.io\u002Fcocoapods\u002Fv\u002FChatto.svg)](https:\u002F\u002Fimg.shields.io\u002Fcocoapods\u002Fv\u002FChatto.svg) [![Carthage compatible](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCarthage-compatible-4BC51D.svg?style=flat)](https:\u002F\u002Fgithub.com\u002FCarthage\u002FCarthage)\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:\u002F\u002Ftechblog.badoo.com\u002Fblog\u002F2015\u002F12\u002F04\u002Fhow-we-made-chatto\u002F). See them in action!\n\u003Cdiv align=\"center\">\n\u003Cimg src=\".\u002Freadme-images\u002Freadme-pic-1.png\" \u002F>\n\u003Cimg src=\".\u002Freadme-images\u002Freadme-pic-2.png\" \u002F>\n\u003Cimg src=\".\u002Freadme-images\u002Freadme-pic-3.png\" \u002F>\n\u003Cimg src=\".\u002Freadme-images\u002Freadme-pic-4.png\" \u002F>\n\u003C\u002Fdiv>\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:\u002F\u002Fgithub.com\u002Fbadoo\u002FChatto\u002Fwiki)\n\n## How to contribute\n\nIf you **just have a question**, please reach us in [our gitter room](https:\u002F\u002Fgitter.im\u002Fchatto-framework\u002Fcommunity)\n\nIf you'd like to file a bug report, suggest changes or submit a pull request, please [check our contribution guide](.github\u002FCONTRIBUTING.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 => 'https:\u002F\u002Fgithub.com\u002Fbadoo\u002FChatto', :branch => 'master'\n  pod 'ChattoAdditions', :git => 'https:\u002F\u002Fgithub.com\u002Fbadoo\u002FChatto', :branch => 'master'\n  ```\n3. Run `pod install`\n\n### Carthage\n\nIf you’re using [Carthage](https:\u002F\u002Fgithub.com\u002FCarthage\u002FCarthage#if-youre-building-for-ios-tvos-or-watchos), simply add Chatto to your Cartfile:\n```\n# Swift 5\ngithub \"badoo\u002FChatto\"\n```\n```\n# Swift 2.x\ngithub \"badoo\u002FChatto\" \"swift-2\"\n```\n\n### Manually\n\n1. Clone, add as a submodule or [download.](https:\u002F\u002Fgithub.com\u002Fbadoo\u002FChatto\u002Farchive\u002Fmaster.zip)\n2. Drag and drop `Chatto` and\u002For `ChattoAdditions` project to your workspace\n3. Add `Chatto` and\u002For `ChattoAdditions` to Embedded binaries\n\n## License\nSource code is distributed under MIT license.\n\n## Blog\nRead more on our [tech blog](https:\u002F\u002Fmedium.com\u002Fbumble-tech) or explore our other [open source projects](https:\u002F\u002Fgithub.com\u002Fbadoo)\n","Chatto 是一个轻量级的 Swift 框架，用于构建聊天应用程序。它具有高性能和可扩展性，支持后台计算集合视图的变化与布局、双向分页及自动加载等功能，确保了即使在处理数千条消息时也能保持流畅的用户体验。此外，该框架还提供了丰富的消息气泡样式（如文本和图片）以及可扩展的输入栏组件。Chatto 适用于需要快速开发稳定且功能丰富的即时通讯应用的场景，无论是个人项目还是企业级应用都能从中受益。通过 CocoaPods 或 Carthage 可以方便地集成到 iOS 项目中。","2026-06-11 03:09:19","top_language"]