Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apivideo/api.video-strapi-plugin
A Strapi plugin for managing uploads to api.video.
https://github.com/apivideo/api.video-strapi-plugin
strapi strapi-cms strapi-plugin strapi4 strapicms video video-processing
Last synced: 14 days ago
JSON representation
A Strapi plugin for managing uploads to api.video.
- Host: GitHub
- URL: https://github.com/apivideo/api.video-strapi-plugin
- Owner: apivideo
- License: mit
- Created: 2022-10-25T12:49:33.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-02T14:51:53.000Z (about 1 year ago)
- Last Synced: 2024-09-21T09:56:54.869Z (2 months ago)
- Topics: strapi, strapi-cms, strapi-plugin, strapi4, strapicms, video, video-processing
- Language: TypeScript
- Homepage: https://api.video
- Size: 1.56 MB
- Stars: 24
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Strapi v4 - api.video uploader
A powerful Strapi plugin to easily manage your videos and integrate them in your project.
---
This plugin provides the ability to upload content via a file to upload to api.video.
### Table of Contents
- [✨ Features](#-features)
- [⏳ Installation](#-installation)
- [Via Strapi Marketplace](#via-strapi-marketplace)
- [Via command line](#via-command-line)
- [🖐 Requirements](#-requirements)
- [🔧 Configuration](#-configuration)
- [👤 Permissions](#-permissions)
- [💾 Metadata](#-metadata)
- [🤝 Contributing](#-contributing)
- [📚 References](#-references)## ✨ Features
- **Upload videos** using a file to [api.video](https://api.video) inside of [Strapi](https://strapi.io/)
- **Manage assets** with the plugin's asset grid and pagination capabilities
- **Search** for assets using title
- **Preview content** using our player (powered by the [api.video-player-react](https://github.com/apivideo/api.video-react-player) package)
- **Delete assets** which result in the [api.video](https://api.video) Asset also being deleted## ⏳ Installation
### Via Strapi Marketplace
We're available on the [Strapi Marketplace](https://market.strapi.io/plugins/@api.video-strapi-uploader-plugin).
### Via command line
(Use **yarn** to install this plugin within your Strapi project (recommended). [Install yarn with these docs](https://yarnpkg.com/lang/en/docs/install/).)
```bash
yarn add @api.video/strapi-uploader-plugin@latest
```After successful installation you've to re-build your Strapi instance. To archive that simply use:
```bash
yarn build
yarn develop
```or just run Strapi in the development mode with `--watch-admin` option:
```bash
yarn develop --watch-admin
```The **api-video-uploader** plugin should appear in the **Plugins** section of Strapi sidebar after you run app again.
As a next step you must configure your the plugin by the way you want to. See [**Configuration**](#🔧-configuration) section.
All done. Enjoy 🎉
## 🖐 Requirements
**api.video**
- A [api.video](https://api.video) account
- You will only an **Api Key** which can be created in the [api.video Dashboard](https://dashboard.api.video/apikeys)Complete installation requirements are exact same as for Strapi itself and can be found in the documentation under [Installation Requirements](https://docs.strapi.io/developer-docs/latest/getting-started/introduction.html).
**Minimum environment requirements**
- Node.js `>=14.19.1 <=18.x.x`
- NPM `>=6.x.x`In our minimum support we're following [official Node.js releases timelines](https://nodejs.org/en/about/releases/).
**Supported Strapi versions**:
- Strapi v4.5.1 (recently tested)
- Strapi v4.x> This plugin is designed for **Strapi v4** and is not working with v3.x.
**We recommend always using the latest version of Strapi to start your new projects**.
## 🔧 Configuration
In order for this plugin to communicate with [api.video](https://api.video), a configuration needs to be set for the plugin before it can be used.
With your **Api Key**, navigate to the Settings view within [Strapi](https://strapi.io/) and click the "General" section under **API.VIDEO UPLOADER**.
On this view, enter your Api Key and click the Save button.
To resolve **Content Security Policy directive** issue and to visualize the thumbnail and the video, we need to configure external ressource like `embed.api.video`and `cdn.api.video/vod/`. Modify the `middlewares.js` file like below:
```javascript
// config/middlewares.js
module.exports = ({ env }) => [
'strapi::errors',
{
name: 'strapi::security',
config: {
contentSecurityPolicy: {
useDefaults: true,
directives: {
'connect-src': ["'self'", 'https:'],
'img-src': ["'self'", 'data:', 'blob:', 'embed.api.video', 'cdn.api.video/vod/'],
'frame-src': ["'self'", 'data:', 'blob:', 'embed.api.video'],
upgradeInsecureRequests: null,
},
},
},
},
'strapi::cors',
'strapi::poweredBy',
'strapi::logger',
'strapi::query',
'strapi::body',
'strapi::favicon',
'strapi::public',
]
```## 👤 Permissions
With the Community Edition of [Strapi](https://strapi.io/), any user with the role of super administrator can configure and use the plugin.
With Strapi Enterprise the permissions can be fine tuned according to the role of users. This is done in the **Roles** view in the **Administration Panel**.
## 💾 Metadata
By default we send the value `Strapi`as `Upload source` to keep track. This value is set by default and can't be changed.
## 🤝 Contributing
Contributions, issues and feature requests are welcome!
If you encounter an error or have questions, please feel free to file inquiries on the [Issues](https://github.com/apivideo/api.video-strapi-plugin/issues) page for `@api.video/strapi-uploader-plugin`.
## 📚 References
- [api.video](https://docs.api.video/docs/apivideo-api-reference)
- [strapi.io](https://strapi.io/)