By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.
Spotlights

Remotion: Create Videos With Code Using React

This interview is part of the Decibel OSS Spotlight series where we showcase founders of fast-growing community-led projects that are solving really unique problems and experiencing strong community adoption.

Sudip Chakrabarti spoke to Jonny Burger, creator of Remotion that helps anyone make and edit videos programmatically using React. With Remotion, one can write JavaScript code to create a video and subsequently render it into an MP4 file. Remotion also includes Remotion Player, which simulates the experience of an actual video editor and can be used to play and review videos in the browser.

Jonny shared with us his inspiration behind creating Remotion and how he is keeping up with the fast growth of the project.

Tell us a little bit about yourself, Jonny. Where were you born and what did you do until you started working on Remotion?

Jonny: I was born in the beautiful city of Lucerne, Switzerland, and moved to Zurich for college. I studied Computer Science but did not finish my degree because I saw so much opportunity outside academia. In any case, I was barely paying any attention to the lectures because I was always coding in class; so, I decided to make a living doing what I really enjoyed. I became a professional app developer and that’s what I was until I switched to working on Remotion full time.

What was your reason to start Remotion? Was there a personal need that you were trying to solve by creating this project?

Jonny: Growing up, I was into videos and animations and had always imagined that I would be a motion graphic artist or a YouTuber one day. But, once I discovered coding I became a professional app developer and also started building my own apps on the side. And every time I tried to promote an app, I found videos to be so much more powerful than any other medium! I learned the Adobe suite of tools and started creating promotional videos for my apps. But, I was enormously frustrated by how much time it took me to create videos and started looking for tools that would allow me to use code to create videos quickly and easily - I found none. So, I built a prototype that could edit videos programmatically and released it on GitHub. The reception from the community took me completely by surprise - I knew that some others had a similar need, but in no way was I prepared for the massive blast that Remotion has been since then!

What were the early days of the project like, and what made you decide to release Remotion on GitHub and eventually start a company?

Jonny: Remotion was very much a side project for a while and I developed it over a span of six months whenever I had some spare time. Then, over a Christmas break, I had an intense spell of coding and that was also when I wrote a lot of the documentation. I released the source code for Remotion on GitHub right afterward because I thought that was the easiest way to have other people use it. Also, I did not want to be a gatekeeper; so, it felt just very simple and natural to have a community of people collaboratively build and enhance the project rather than just me.

Jonny hacking away at an app development hackathon

What problem are you trying to solve with Remotion?

Jonny: The goal of Remotion is to make it possible for people to create videos programmatically using React. Traditionally, you would create and edit videos using visual editing software like those available from Adobe. But if you want the entire process of creating and editing videos to be expressed by code then Remotion is what you’d need. With Remotion, you can get from code to video, render that video into an MP4 file, and then also create APIs that allow you to interact with the video that you have just created. Remotion lowers the barrier to creating and editing videos by doing away with complicated tools and training. Instead, it leverages Javascript developers’ current tools and allows them to use those tools and skills to turn code into animations and videos.

Tell us about the use cases for Remotion - who uses it, how, and why?

Jonny: The Remotion community uses the project for several different use cases, but one of the best use cases is to create custom videos at scale. For example, Spotify puts out a yearly review called Spotify Wrapped which is a nice animation of what your favorite music genres and playlists were, which musicians you had listened to, etc. Similarly, Meta puts out custom videos on your special days, say your wedding anniversary, with photos of you and your spouse. Companies of that size have developed complicated proprietary solutions to create those custom videos at scale programmatically - we want to give the same capability to everyone. Imagine a use case where an ecommerce website could instantly show every visitor to its site a custom video of how a product it sells would look in his/her house. Or, another use case in which every runner at the end of a marathon event gets a custom video of his/her own highlight reel from the event. For either of these, you would need a tool like Remotion that would allow the programmatic creation of custom videos at scale by using code.

You have a rapidly growing user community for Remotion. What are some of the things you have done to make that happen?

Jonny: I believe putting out great software by itself is like a tree falling in the forest - nobody cares about it unless you make people aware of it and make it easy for them to use it. So yes, I spend a lot of time thinking about how to promote Remotion. For example, one of the first things I did to promote Remotion was to create something similar to Spotify Wrapped, but for GitHub. I called it GitHub Unwrapped, which was a personalized video reviewing a developer’s GitHub activity during the year, much like what Spotify Wrapped did for music. Thanks to Remotion, I was able to very easily create such personalized videos and serve them to more than 10,000 GitHub users. It was a tremendously successful campaign for Remotion as it showcased the capabilities of the project to the community that it was intended for.

In addition, I have attempted to build a great landing page for the Remotion project and created as much documentation as I could since those also help with SEO. The Remotion project has Instagram as well as Twitter accounts, a YouTube channel, and even a TikTok account. I use all of these to post tutorials, memes, techniques, short tips, and campaigns like GitHub Unwrapped to educate people about Remotion which is absolutely critical to building a vibrant user community.

The Remotion landing page

Tell us a bit about the community adoption of Remotion so far. What user metrics do you track and why? Why do those matter to the project?

Jonny: I haven’t been obsessed with metrics for Remotion so far - it is still early days for the project - but the community adoption metrics seem to be growing nicely. We currently have 14,000+ GitHub stars, 125 contributors and about 9,000 weekly downloads, up from 2,000 a year ago. In addition, we have close to 1,500 active users in our Discord community. We also have revenue, which is somewhat unique for a project as early as ours. It is not a lot, but we do have a handful of customers who pay a recurring fee that we are grateful for, and we have several more customers in the pipeline.

Getting into revenue this early is indeed unique for a community-led project. Have you gotten any pushback from the community because you are charging?

Jonny: Not really except for a little bit of backlash on Hacker News, some of which was actually helpful and led me to describe Remotion as “source available” software in order to fully conform with the licensing model I had chosen. In general, people are okay with us charging a fee because we only charge companies and not individual users of Remotion, and people understand that in order to sustain a high-quality community-led project there has to be some investment in it. But no matter what, the key to any kind of monetization model is to be clear and consistent about it with the community, which we have done well so far.

Is there another community-led project, besides the usual suspects, that you admire?

Jonny: I am going to go with SerenityOS, which Andreas King started four or five years ago to build an operating system that worked like Linux but looked like Windows or Mac OS. What I really like is that even for a project as ambitious as this, Andreas has been able to make it fun for the community while continuing to create serious and powerful software. He is really open about everything related to the project, doing live coding sessions and almost daily videos on YouTube showing what the software can do. All in all, Andreas and the SerenityOS community have created something that is incredibly cool and impressive while making the whole thing very effortless and light hearted. That is a model I aspire to emulate with the Remotion project and community.

What advice would you have for someone who is thinking of starting a new community-led project?

Jonny: I would advise two things. First, do not second guess yourself; if you feel you have something, anything, go ahead and put it on GitHub. If in doubt, just release - you will surely not regret it. Second, if you believe that the project might have potential, then you should think through what licensing model you want to use. Because, if the project takes off it will be too late for you to go back and change license terms to prevent other companies from making money off of your project.