Home
/ Blog /
Embedding Prebuilt as a native componentSeptember 13, 20234 min read
Share
Building fast versus the perfect custom setup for your users is a debate that has plagued engineers and PMs alike. And then 100ms Prebuilt was born. 🌅
Building audio and video experiences should not be difficult, and it should not take more than 30 minutes to set up a video call within your application. Unfortunately, developers often spend days building even a basic video call setup on their platforms. To solve for this, we launched 100ms Prebuilt which abstracts the complexities of audio/video integration, providing your end-users with a reliable live video experience, while managing audio/video and room controls with 100ms dashboard templates.
To make it easier to get started, we have partly solved this problem with Prebuilt links. These links empower developers to effortlessly generate and share role-specific links tailored for end-users, enabling them to seamlessly join a room. These links can be embedded using a simple iFrame or utilized as a web view in mobile applications.
However, if your use case or, more importantly, your users demand a more seamless video calling experience, it becomes crucial to natively integrate that into your app. Recognizing this need, we've expanded Prebuilt support across various platforms in the form of a native, embeddable component known as HMSPrebuilt
.
💡 Prebuilt is now available cross-platform
- Embed Prebuilt as a native component on React Native, Web, Flutter, iOS, and Android.
- This component is getting an upgrade with improved UI and customization. Read more→
An embeddable, highest-level UI component of a 100ms room, covering all screens and audio-video functionalities, chat, participant list, video layouts, roles, and more.
RoomKit
packages. In the future, we plan to extend more components to build custom experiences with Prebuilt components like Chat, Participant List, Video Layouts, etc. so you can build custom experiences using our Prebuilt componentsHMSPrebuilt
Component requires room codes to get initialized.Step-by-Step Guides - Follow these guides for Web, React Native, Android, Flutter, iOS
Let us now see how easy it is to use Prebuilt as a native embed in your apps.
For this, we’ll use the example of a teleconsultation app built using Next.js (a React framework) that lets you connect with medical practitioners. The final application, with HMSPrebuilt component as embed, can be tried out here and it would look this:
The code sandbox for the project is available here for you to try along.
The steps are as follows:
Start by adding the roomkit-react
dependency to your project.
npm install @100mslive/roomkit-react --save
Import the dependency in the app/page.js
file.
import { HMSPrebuilt } from "@100mslive/roomkit-react";
Find the comment with the text ‘TODO: Embed HMSPrebuilt component here’ and paste the following with your room code as below:
<HMSPrebuilt roomCode="<room code>" />
Room code can be found on the 100ms dashboard. We have written about Room codes for Prebuilt links in an earlier piece.
That is it! We should now be able to see an audio-video calling option on our landing page.
The final project code is available on GitHub and CodeSandbox.
Building customized video experiences is undeniably appealing, but it can be quite demanding on your development resources. 100ms SDKs are powerful and highly extensible to build and support all custom experiences and UI.
However, if you find yourself unsure about committing to an extensively customized video experience, and what you truly need is a speedy, low-code, and customizable (hint: Big Update coming soon) solution that doesn't demand a substantial effort, then HMSPrebuilt might be your solution of choice.
In our upcoming September'23 release, 100ms Prebuilt is getting some major upgrades. The idea is to reduce the development time and effort and provide a customizable solution that helps you go live faster.
You'll be able to do more with Prebuilt. We are coming out with the following:
HMSPrebuilt
Component after this release.This is just the first of many releases to come. Watch out for more of our upcoming blogs which will provide more detail on this upgrade. We have a lot more planned in our Prebuilt roadmap and if you'd like to be a part of this journey and contribute to it, please tune in to our #Prebuilt discord channel.
Product & news
Related articles
See all articles