Delivering High-Quality Videos on Your ReactJS Website

This ad is not shown to multipass and full ticket holders
JSNation US
JSNation US 2025
November 17 - 20, 2025
New York, US & Online
JS stars in the US biggest planetarium
Learn More
In partnership with Focus Reactive
Upcoming event
JSNation US 2025
JSNation US 2025
November 17 - 20, 2025. New York, US & Online
Learn more
Bookmark
Rate this content

Video is the most powerful and engaging content format currently on the web. With mobile-first experiences becoming the norm, users expect high-quality, smooth video playback, whether they're watching on a fast Wi-Fi connection or a spotty mobile network.

However, delivering optimized video content is not easy. Challenges like adaptive streaming, efficient compression, fast loading times, and responsive playback make it tricky to balance quality and performance. This lightning talk will focus on implementing adaptive bitrate streaming in ReactJS to ensure videos play seamlessly on mobile and on-the-fly thumbnail generation to enhance user experience—all with minimal setup! 🚀

This talk has been presented at React Summit 2025, check out the latest edition of this React Conference.

FAQ

ImageKit is a video API service that provides real-time video optimization, streaming, and transformation. It helps developers optimize large video files for different devices, ensuring quick loading and smooth streaming without duplicating storage.

ImageKit connects with your existing cloud storage by treating it like an origin to a CDN. It pulls assets in real time without duplicating storage, allowing seamless integration and optimization of your media files.

Yes, ImageKit supports adaptive bit rate streaming using HLS-based adaptive streaming. By appending 'IK master m3u8' to the video URL, developers can enable adaptive streaming with multiple resolution variants.

ImageKit can be integrated with any platform, including React applications and other frameworks, to optimize and stream videos efficiently.

ImageKit automatically compresses videos to the appropriate size and converts formats like WebM for compatibility, ensuring fast loading times on various devices.

No, ImageKit does not require manual CDN setup or processing. It uses a URL-based API for seamless integration, without the need for manual intervention.

Yes, ImageKit allows URL-based transformations to change video aspect ratios, such as converting a portrait video to a vertical aspect ratio suitable for platforms like Instagram.

ImageKit's video API offers features such as creating video thumbnails, shorter video trailers, and various real-time transformations without duplicating storage.

Yes, ImageKit is designed to optimize and stream videos effectively, making it suitable for video-intensive applications.

You can visit ImageKit's booth or their website for more information on video streaming and media optimization solutions.

Rahul Nanwani
Rahul Nanwani
7 min
13 Jun, 2025

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Raul from ImageKit discusses optimizing and streaming videos, highlighting challenges like resolutions and codecs. Developers can use ImageKit Video API for seamless integration and quick optimization. ImageKit offers streamlined video hosting with real-time optimization and adaptive streaming. It enables easy access to cloud storage and transformation of videos for better user experience.

1. Optimizing and Streaming Videos in React Apps

Short description:

Raul, cofounder at ImageKit, discusses optimizing and streaming videos in React apps and other platforms. Challenges of video streaming include resolutions, codecs, and delivery methods. Many developers skip optimization, impacting user experience. Consider using ImageKit Video API for seamless integration with your infrastructure and quick code integration.

I'm Raul, one of the cofounders at ImageKit. I flew in from India yesterday, and I was watching a news video on my phone yesterday. And since I'm on international roaming, it obviously took a lot of time to buffer that video and load that. And I knew for every second of that video that I'm loading, I'm going to get a huge bill when I go back to my country. So this talk that I have becomes all the more relevant right now where I'll talk about how do you optimize videos if you're working on a really video-intensive experience on a React app, or it could be any other platform as well. How do you optimize and stream videos correctly and natively inside your application?

Now this isn't an actual video. It's just a GIF. It would have been very embarrassing if I would have embedded a video and it would not have played during the talk. But as users, all of us have actually seen something like this. You start playing a video, and it just keeps buffering. And it's really frustrating, right? It's not a great experience for your users or visiting your app to actually experience this. And as developers, we need to find out ways in which we can optimize a really large MP4 or MOV video that's stored in your cloud.

And how do you deliver that correctly in your React application, right? Video streaming is complex, right? It's not easy. There are multiple resolutions. There are codecs, bit rates. You have to deal with audio, video, subtitles. You have to store these chunks somewhere. Then you have to configure a CDN to deliver it, right? So it's really complex. In our experience, what we have seen, a lot of developers either just completely skip the optimization part. They just deliver that high-quality video directly to their users. Or maybe they'll create one variant of that video and just deliver that one variant to every user on mobile and desktop.

2. Streamlining Video Hosting with ImageKit

Short description:

Using ImageKit Video API for optimized video hosting. Connect cloud storage to ImageKit for real-time optimization and seamless integration. Streamlined process with easy identification and transformation of video files, ensuring quick loading time. Enable adaptive bit rate streaming for enhanced user experience.

Or you'll end up using a platform like YouTube or Vimeo to host your videos. While they handle video streaming, issues like irrelevant ads and lack of customization arise. Using the ImageKit Video API offers real-time optimization, streaming, and easy integration with your existing infrastructure. Simply upload your content to any cloud storage, then connect it to ImageKit for seamless access and optimization.

ImageKit retrieves the original video file from your storage, optimizes it in real-time, and delivers a suitable version for the device accessing it. The video component in the React SDK simplifies this process by enabling easy identification and transformation of video files. With ImageKit, you can ensure a quick loading time by automatically converting and compressing the video to the right format.

Unlike platforms like YouTube, ImageKit provides a single video file streaming experience without switching between different resolutions based on network speed. Additionally, you can enable adaptive bit rate streaming directly from the URL, enhancing the streaming experience for users. By leveraging ImageKit's capabilities, you can deliver optimized videos seamlessly while maintaining control over the streaming process.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Video Editing in the Browser
React Summit 2023React Summit 2023
23 min
Video Editing in the Browser
Top Content
Watch video: Video Editing in the Browser
This Talk discusses the challenges of video editing in the browser and the limitations of existing tools. It explores image compression techniques, including Fourier transform and Huffman encoding, to reduce file sizes. The video codec and frame decoding process are explained, highlighting the importance of keyframes and delta frames. The performance bottleneck is identified as the codec, and the need for specialized hardware for efficient video editing is emphasized. The Talk concludes with a call to create a simplified API for video editing in the browser and the potential for AI-powered video editing.
Pushing the Limits of Video Encoding in Browsers With WebCodecs
JSNation 2023JSNation 2023
25 min
Pushing the Limits of Video Encoding in Browsers With WebCodecs
Top Content
Watch video: Pushing the Limits of Video Encoding in Browsers With WebCodecs
This Talk explores the challenges and solutions in video encoding with web codecs. It discusses drawing and recording video on the web, capturing and encoding video frames, and introduces the WebCodecs API. The Talk also covers configuring the video encoder, understanding codecs and containers, and the video encoding process with muxing using ffmpeg. The speaker shares their experience in building a video editing tool on the browser and showcases Slantit, a tool for making product videos.
Going Live from a Browser...with Another Browser
JSNation Live 2020JSNation Live 2020
8 min
Going Live from a Browser...with Another Browser
This Talk discusses live chat and live broadcast using WebRTC and RTMP. It explores running WebRTC on a server via Chrome and alternative approaches like using GetUserMedia and the Chrome.tabCapture API. The use of a whole Chrome instance for WebRTC and RTMP broadcast is also discussed, highlighting the pros and cons of this approach. The Talk recommends checking out Nick's talk from All Things RTC for more information.
Creating Videos Programmatically in React
React Summit Remote Edition 2021React Summit Remote Edition 2021
34 min
Creating Videos Programmatically in React
The Talk discusses the use of ReMotion, a library that allows for declarative video creation in React. It covers the process of creating videos, animating elements, and rendering multiple compositions. The Talk also mentions the features of ReMotion, such as audio support and server-side rendering. ReMotion 2.0 introduces audio support and the possibility of live streaming. The Talk concludes by highlighting the frustration with existing video editing tools and the integration of existing videos into ReMotion projects.
Going Live from your Browser without WebRTC
React Summit Remote Edition 2020React Summit Remote Edition 2020
13 min
Going Live from your Browser without WebRTC
Mux provides an API for live streaming and aims to keep users in their own applications. Live broadcast and live chat are different, with live chat using WebRTC and live broadcast using RTMP and HLS. WebRTC can be implemented using headless Chrome or the getUserMedia process. Mux targets developers building platforms and suggests using semantic HTML. Ionic supports native apps and custom native views.
Getting Weird with Video Manipulation and HTML5 Canvas
React Summit 2020React Summit 2020
16 min
Getting Weird with Video Manipulation and HTML5 Canvas
Today's Talk at React Summit focused on the Canvas and HTML5 video APIs, showcasing the capabilities and possibilities they offer for video manipulation and interactivity. The speaker demonstrated how to use the HTML5 video element and canvas to manipulate and draw images, apply filters, and add real-time text overlays. They also showcased real-time object detection on video frames using machine learning. The Talk concluded with an example of enhancing a marketing website with interactive video using the canvas element. Overall, the Talk highlighted the power and potential of these APIs for video development.

Workshops on related topic

Build Your Own Live Streaming Platform
React Summit Remote Edition 2021React Summit Remote Edition 2021
138 min
Build Your Own Live Streaming Platform
Workshop
Dylan Jhaveri
Dylan Jhaveri
In this workshop we will go over the basics of streaming video over the internet including technologies like HLS and WebRTC. We will then build our own React app to play live streams and recordings of live streams.