First of all, congratulations on getting this project out the door! This could be a nice discovery tool for people seeking a new hobby.
I notice that each REST request you're making returns a lot of extra data in the payload that the site doesn't seem to use (submittedBy, ytTags, ytDuration, etc). You could probably improve performance by only returning the minimal set of the data the UI needs.
You commented below that this backed by Lambda & DynamoDB. I'm guessing the site is running a little slow right now because it's making a db query for each REST request. Since your list of videos is relatively small and will only be updated periodically, you might consider simply including the whole json structure in the page and making the site entirely static. It will scale much better and save you some money on hosting costs. If you prefer to keep the data loading dynamically, consider putting a caching layer in front of the lambdas.
I've removed the unused data on videos, and included the department/section list in the page, so that's one less request. I would like to add caching but haven't tackled that yet.
I notice that each REST request you're making returns a lot of extra data in the payload that the site doesn't seem to use (submittedBy, ytTags, ytDuration, etc). You could probably improve performance by only returning the minimal set of the data the UI needs.
You commented below that this backed by Lambda & DynamoDB. I'm guessing the site is running a little slow right now because it's making a db query for each REST request. Since your list of videos is relatively small and will only be updated periodically, you might consider simply including the whole json structure in the page and making the site entirely static. It will scale much better and save you some money on hosting costs. If you prefer to keep the data loading dynamically, consider putting a caching layer in front of the lambdas.