This is a streaming application built with React that allows you to create an account with Google Oauth. You can view all the streams on the application via a general feed. You can also create a new stream, edit it, and delete it. This app is broken into three parts:
- The UI that the user sees in their browser, which is made with React and Redux
- A small web server that lists all the videos you can watch created with The JSON Server
- A RTMP (Real-time messaging protocol) server that handles video streaming
The navigation is done using React Router, while the forms (validation + error handling) are set up via Redux forms. I used the JSON Server package to spin up a web server for the back-end.
- I ran into this error: You should not use
<Link>
outside a<Router>
when trying to add my header as an always-visible component, but I was able to solve this by wrapping my content div with the<BrowserRouter></BrowserRouter>
tag.
- React JS
- Redux
- React Router
- Google Oauth + Google API library
- The JSON Server package
- RESTful APIs
- Node Media Server (a Node JS implementation of RTMP)
- OBS Project (open source software for video recording + live streaming)