{"id":13693478,"url":"https://github.com/netless-io/flat-ios","last_synced_at":"2025-04-07T11:06:59.036Z","repository":{"id":38352982,"uuid":"434449744","full_name":"netless-io/flat-iOS","owner":"netless-io","description":"Project Flat iOS is the iOS client of Agora Flat open source classroom.","archived":false,"fork":false,"pushed_at":"2024-11-11T08:02:04.000Z","size":54972,"stargazers_count":53,"open_issues_count":0,"forks_count":42,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-31T09:08:13.113Z","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/netless-io.png","metadata":{"files":{"readme":"README-zh.md","changelog":"CHANGELOG.md","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":"2021-12-03T03:08:09.000Z","updated_at":"2025-01-19T15:22:07.000Z","dependencies_parsed_at":"2023-02-19T06:31:21.717Z","dependency_job_id":"7cab54f9-0961-4aa5-86eb-bdec4ecc64ea","html_url":"https://github.com/netless-io/flat-iOS","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netless-io%2Fflat-iOS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netless-io%2Fflat-iOS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netless-io%2Fflat-iOS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netless-io%2Fflat-iOS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netless-io","download_url":"https://codeload.github.com/netless-io/flat-iOS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640462,"owners_count":20971557,"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-08-02T17:01:10.908Z","updated_at":"2025-04-07T11:06:59.008Z","avatar_url":"https://github.com/netless-io.png","language":"Swift","readme":"\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"200\" height=\"200\" style=\"display: block;\" src=\"art/flat-logo.png\"\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n    \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/github/license/netless-io/flat-ios?color=9cf\u0026style=flat-square\"\u003e\n    \u003cimg alt=\"GitHub repo size\" src=\"https://img.shields.io/github/repo-size/netless-io/flat-ios?color=9cf\u0026style=flat-square\"\u003e\n    \u003cbr\u003e\n    \u003ca target=\"_blank\" href=\"https://twitter.com/AgoraFlat\"\u003e\n    \u003cimg alt=\"Twitter URL\" src=\"https://img.shields.io/badge/Twitter-AgoraFlat-9cf.svg?logo=twitter\u0026style=flat-square\"\u003e\n    \u003c/a\u003e\n    \u003ca target=\"_blank\" href=\"https://github.com/netless-io/flat/issues/926\"\u003e\n        \u003cimg alt=\"Slack URL\" src=\"https://img.shields.io/badge/Slack-AgoraFlat-9cf.svg?logo=slack\u0026style=flat-square\"\u003e\n    \u003c/a\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003ch1\u003eAgora Flat iOS\u003c/h1\u003e\n    \u003cp\u003eFlat是 \u003ca href=\"https://flat.whiteboard.agora.io/en/\"\u003eAgora Flat\u003c/a\u003e 开源教室的 iOS 客户端。\u003c/p\u003e\n    \u003cimg src=\"art/flat-showcase.png\"\u003e\n    \u003cp\u003e\u003ca href=\"./README-zh.md\"\u003eEn\u003c/a\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n# 特性\n\n- 前后端完全开源\n  - [X] [Flat Web][flat-web]\n  - [X] Flat 桌面端 [flat-homepage] \n  - [X] [Flat Android][flat-android]\n  - [X] [Flat iOS][flat-iOS]\n  - [X] [Flat Server][flat-server]\n- 多场景课堂\n  - [X] 大班课\n  - [X] 小班课\n  - [X] 一对一\n- 实时交互\n  - [X] 多功能互动白板\n  - [X] 实时音视频（RTC）通讯\n  - [X] 即时消息（RTM）聊天\n  - [X] 举手上麦发言\n- 帐户系统\n  - [X] 微信登陆\n  - [X] GitHub 登陆\n- 房间管理\n  - [X] 加入、创建\n  - [X] 支持周期性房间\n  - [X] 查看历史房间\n\n- [X] 多媒体课件云盘\n- [X] 屏幕共享\n\n# 开发环境\n\n## 环境配置\n\n| iOS 最低版本 | Xcode版本 | Swift 版本 |\n| ------------ | --------- | ---------- |\n| 13.0         | 14.0      | Swift 5.7    |\n\n### 安装\n\n1. 安装 [CocoaPods](https://cocoapods.org)。\n2. 在终端中进入Flat目录，执行 `pod install`.\n\n### 配置签名\n\n1. 用Xcode打开 `Flat.xcworkspace` 。\n2. 在Xcode中前往编辑'Flat-DEV'这个Target的 [Signing \u0026amp; Capabilities pane](https://developer.apple.com/documentation/xcode/adding_capabilities_to_your_app) 。\n3. 切换到你的 `Team`。\n4. 换一个不一样的 `Bundle identifier`。\n\n### 运行\n\n1. 选择Scheme Flat-DEV .\n2. 按 ⌘R 启动 app.\n\n# 免责声明\n\n你可以将 Flat 用于商业用途但请注意我们不接受商业化需求定制与部署支持以及其它客户服务。如有相关需求请前往[灵动课堂][Flexible Classroom]。\n\n本项目仅用于学习和交流使用，请遵守所在国的法律法规，切勿用于涉及政治、宗教、色情、犯罪等领域，一切违法后果请自负。\n\n## 许可证\n\n版权所有 Agora, Inc. 保留所有权利。\n\n使用 [MIT 许可证](https://github.com/netless-io/flat/blob/main/LICENSE)\n\n当使用 Flat 或其他 GitHub 徽标时，请务必遵循 [GitHub 徽标指南](https://github.com/logos)。\n\n[flat-homepage]: https://flat.whiteboard.agora.io/en/#download\n[flat-web]: https://flat-web.whiteboard.agora.io/\n[flat-server]: https://github.com/netless-io/flat-server\n[flat-android]: https://github.com/netless-io/flat-android\n[flat-storybook]: https://netless-io.github.io/flat/storybook/\n[open-wechat]: https://open.weixin.qq.com/\n[netless-auth]: https://docs.agora.io/en/whiteboard/generate_whiteboard_token_at_app_server?platform=RESTful\n[agora-app-id-auth]: https://docs.agora.io/en/Agora%20Platform/token#a-name--appidause-an-app-id-for-authentication\n[cloud-recording]: https://docs.agora.io/en/cloud-recording/cloud_recording_api_rest?platform=RESTful#storageConfig\n[cloud-recording-background]: https://docs.agora.io/en/cloud-recording/cloud_recording_layout?platform=RESTful#background\n[electron-updater]: https://github.com/electron-userland/electron-builder/tree/master/packages/electron-updater\n[Flexible Classroom]: https://www.agora.io/cn/agora-flexible-classroom\n","funding_links":[],"categories":["Education","Communication"],"sub_categories":["Terminal"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetless-io%2Fflat-ios","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetless-io%2Fflat-ios","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetless-io%2Fflat-ios/lists"}