Streamlix is a Video Streaming App that makes it easy to watch online videos, with beautiful UI using the Material UI
Streamlix is a Video Streaming App consisting of stunning video sections, custom categories, channel pages, play videos, and much more - based on YouTube v3 API powered by RapidAPI.
Here is the folder structure of Streamlix.
Streamlix-App/
|- public/
|- src/
|-- components/
|-- utils/
Now, lets dive into the public and src folders.
index.html
- manifest.json
The public folder contains the HTML file so you can tweak it, for example, to set the page title. The <script> tag with the compiled code will be added to it automatically during the build process.
ChannelCard.jsx
- ChannelDetail.jsx
- Feed.jsx
- index.js
- Loader.jsx
- Navbar.jsx
- SearchBar.jsx
- SearchFeed.jsx
- Sidebar.jsx
- VideoCard.jsx
- VideoDetail.jsx
- Videos.jsx
This folder houses all the components listed above which they are custom components (widgets) with beautiful customized theme using Material UI 5, which split the UI into independent and reusable pieces.
constants.js
- All the web application level constants. Specifically, this constants.js file contains mui-icons, categories and etc.
fetchFromAPI.js
- Fetching data from YouTube v3 API powered by RapidAPI using environment variables for API key.
In order to use Streamlix you have to create your YouTube v3 api key powered by RapidAPI here, to run this web app, you will need to add the following environment variable to your .env file
REACT_APP_RAPID_API_KEY
Download or clone this repo by using the link below:
https://github.com/ladunjexa/Streamlix-App
Explorium using NPM (Node Package Manager), therefore, make sure that Node.js is installed by execute the following command in console:
node -v
At the main folder execute the following command in console to get the required dependencies:
npm install
Within the main folder create a file named .env
and add the following environment variable:
REACT_APP_RAPID_API_KEY=<YOU_API_KEY>
At the main folder execute the following command in console to get the required dependencies:
npm start
Contributions are always welcome!
See contributing.md
for ways to get started.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt for more information.
Liron Abutbul - @lironabutbul6 - @ladunjexa
Project Link: https://github.com/ladunjexa/Streamlix-App
This section used to mention useful resources and libraries that used in Streamlix
- RapidAPI
- MaterialUI
- #JSMastery