CMS Design

Hime and Yuzu working hard or hardly working...
Hime and Yuzu working hard or hardly working...


Crunchyroll has been running off of an archaic content management system for many years, and therefore was in dire need of an upgrade.


ETP CMS is Crunchyroll's internal content management system, and is built to fully encompass the end to end content and video experience for Crunchyroll web, mobile, and living room applications.


For the past four years, I've supported all things related to design for ETP CMS.


Time and resources have always been my two limiting factors when it comes to ETP CMS. Fortunately, working within two week design sprints, allows me to figure out and come up with designs for CMS issues, and not block engineering from completing their own tasks related to the CMS. That being said, the CMS engineering team has always been very small, and therefore it would take time to implement design work for features asked for by other teams within Crunchyroll.


The process for working on ETP CMS has been similar to everything else that I work on. If it's a big project, then we will have an initial kickoff with stakeholders and engineers, to give a quick overview of said project. From there, tickets will be written up and assigned to me, where I will then work with my design manager to put them into my sprint. Depending on lead-up time to release, I will work with stakeholders and help draw out flows or wireframes so that I have a better understanding of the problem that they're trying to solve. After that, I will start to work on designs, iterate on those designs, upload designs to InVision for review, and if everything looks good, I will then upload designs to Zeplin for engineering implementation.


Over the past four years, I've helped design for many different features that are now used by entire teams within Crunchyroll. Due to the confidential nature of this work, instead of posting a bunch of screenshots, I'm going to list below features that I've designed for ETP CMS, and describe them so you have a better understanding of what they are.

Archive content - Content within our CMS is split into four different media types. They are Movies, Series, Seasons, and Episodes. Having the ability to archive content that for whatever reason, can no longer be "live" on our platform, needs to be turned off or archived so that users aren't able to view it.
Auto publish series - Having the ability to auto publish content after ingestion so that COPS doesn't have to manually turn it on, shortening the time to get content live to our users.
Banner images - Have a section in CMS portal to allow the upload of a banner images for a series or movie.
Categories - ETP CMS will store and manage a top level category list that can be created and managed via the CMS portal. This top level category will be used for visual display of the categories on all client platforms.
Collections - The ability to create collections of different media types, and use them within feeds.
Deleting content - Being able to delete content from ETP CMS for various reasons, be it partner requests, incorrect ingest, or load management.
Downloading content - Audience Development needs the ability to download episodes of content so that they can rip and post things on social media.
Dynamic feeds - These are collections that leverage some of the APIs and algorithms that our Discovery service provides. What this allows is for us to insert media into user feeds that are more tailored to their viewing habits.
Geo Content Windowing - Is defined for each country / region for premium and free users. This defines the time window when a piece of content is available / unavailable in a country / region. Content windows could be the same for all countries or could be individual to each country.
Localization - CMS Portal can have localized metadata for Title, Description, Availability, and Tags / Categories.
JSON manifests - Having the ability to run JSON manifests through ETP CMS, which then verifies its validity, and therefore will know that the media ingested correctly.
Quality Control - Re-ingesting assets for a piece of content happens fairly frequently due to a bad mezzanine or missing assets from partners. The history of the QC comments is therefore very important to the COPS team members. It helps them keep a record of why a certain content was failed in a QC attempt earlier.
Search - The ability to quickly search for media within ETP CMS is essential for everyday use.
SEO - Improving SEO visibility, being able to update meta titles and meta descriptions for VRV / Crunchyroll is essential and must live within ETP CMS.
Themes - For Prototype, Staging, and Production environments, having different themes for the CMS helps to not confuse users about which CMS they're working from.
Thumbnail images - Having the ability to see a page for managing thumbnails for media, so that teams can choose the default thumbnail to display to users for a piece of content.


Working on ETP CMS has been a really fun experience because I've been able to learn so much about how the heart of Crunchyroll, our content, is stored, categorized, inspected, and delivered to millions of anime fans around the world! Without it, Crunchyroll wouldn't be the leading Anime service in the world, and a lot of it has to do with how powerful or CMS has become.