Fishjam Client library for iOS apps written in Swift.
The repository consists of 3 separate components:
FishjamClient- Fishjam client fully compatible withFishjam, responsible for exchanging media events and receiving media streams which then are presented to the userFishjamClientDemo- Demo application utilizingFishjamclientMembraneRTC- iOS WebRTC client
Really simple App allowing to test Fishjam client functionalities. It consist of 2 screens:
- Joining screen where user passes peer token followed by join button click
- Room's screen consisting of set of control buttons and an area where participants' videos get displayed
API documentation is available here.
Add FishjamClient dependency to your project.
- Run
./scripts/init.shin the main directory to install swift-format and release-it and set up git hooks - Edit
Debug.xcconfigto set backend url in development. - Run
release-itto release. Follow the prompts, it should update version in podspec, make a commit and tag and push the new version.
We welcome contributions to iOS Client SDK. Please report any bugs or issues you find or feel free to make a pull request with your own bug fixes and/or features.
| Client SDKs | React, React Native, iOS, Android |
| Server SDKs | Elixir, Python, OpenAPI |
| Services | Videoroom - an example videoconferencing app written in elixir Dashboard - an internal tool used to showcase Fishjam's capabilities |
| Resources | Fishjam Book - theory of the framework, Docs, Tutorials |
| Membrane | Fishjam is based on Membrane, Discord |
| Compositor | Compositor - Membrane plugin to transform video |
| Protobufs | If you want to use Fishjam on your own, you can use our protobufs |
Copyright 2023, Software Mansion
Licensed under the Apache License, Version 2.0