Build with react and strapi.
npm start # starts frontend dev server
cd rtv-backend && npm start # starts main backend (strapi)
cd custom-backend && npm start # starts custom backend (express)
npm build # build frontend to /public
Strapi handles all admin tasks (e.g. adding new videos, texts, sites) while the 'custom-backend' handles streaming video files (strapi does not handle range requests well) and sending emails via sendgrid.