All Projects → shotstack → pexels-demo

shotstack / pexels-demo

Licence: MIT license
A Node JS Express/Serverless demo application that creates a personalised video using a form. Uses the Pexels Video library and Shotstack video editing API.

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to pexels-demo

Retinal
🏙 Retinal is a Serverless AWS Lambda service for resizing images on-demand or event-triggered
Stars: ✭ 208 (+845.45%)
Mutual labels:  serverless-framework
Serverless Dotenv Plugin
Preload Environment Variables with Dotenv into Serverless
Stars: ✭ 250 (+1036.36%)
Mutual labels:  serverless-framework
action-serverless
GitHub Action for interacting with the Serverless CLI
Stars: ✭ 36 (+63.64%)
Mutual labels:  serverless-framework
Serverless Chrome
🌐 Run headless Chrome/Chromium on AWS Lambda
Stars: ✭ 2,625 (+11831.82%)
Mutual labels:  serverless-framework
Serverless Google Cloudfunctions
Serverless Google Cloud Functions Plugin – Adds Google Cloud Functions support to the Serverless Framework
Stars: ✭ 241 (+995.45%)
Mutual labels:  serverless-framework
Shopify-Serverless-Starter-App
Shopify Serverless Starter Application built on Serverless Framework and Polaris UI (React.js)
Stars: ✭ 56 (+154.55%)
Mutual labels:  serverless-framework
Malagu
Malagu is a Serverless First, component-based, platform-independent, progressive application framework based on TypeScript.
Stars: ✭ 184 (+736.36%)
Mutual labels:  serverless-framework
sls-photos-upload-service
Example web app and serverless API for uploading photos and saving to S3 and DynamoDB
Stars: ✭ 50 (+127.27%)
Mutual labels:  serverless-framework
Serverless Prune Plugin
Serverless plugin to reap unused versions of deployed functions from AWS
Stars: ✭ 243 (+1004.55%)
Mutual labels:  serverless-framework
namevault
Account creator & name generator for users on EOS and EOSIO compatible blockchains.
Stars: ✭ 17 (-22.73%)
Mutual labels:  serverless-framework
Aws Lambda Typescript
This sample uses the Serverless Application Framework to implement an AWS Lambda function in TypeScript, deploy it via CloudFormation, publish it through API Gateway to a custom domain registered on Route53, and document it with Swagger.
Stars: ✭ 228 (+936.36%)
Mutual labels:  serverless-framework
Nuxt Serverless
Nuxt.js Serverless SSR Starter on AWS (Lambda + API Gateway + S3) with Serverless Framework
Stars: ✭ 235 (+968.18%)
Mutual labels:  serverless-framework
serverless-examples-cached-rds-ws
A serverless framework example project that uses API Gateway, ElastiCache, and RDS PostgreSQL.
Stars: ✭ 45 (+104.55%)
Mutual labels:  serverless-framework
Serverless Azure Functions
Serverless Azure Functions Plugin – Add Azure Functions support to the Serverless Framework
Stars: ✭ 213 (+868.18%)
Mutual labels:  serverless-framework
serverless-nestjs-typeorm
Example how to nestjs using the serverless framework with TypeORM
Stars: ✭ 99 (+350%)
Mutual labels:  serverless-framework
Aws Auto Remediate
Open source application to instantly remediate common security issues through the use of AWS Config
Stars: ✭ 191 (+768.18%)
Mutual labels:  serverless-framework
Jazz
Platform to develop and manage serverless applications at an enterprise scale!
Stars: ✭ 254 (+1054.55%)
Mutual labels:  serverless-framework
VideoLab
High-performance and flexible video editing and effects framework, based on AVFoundation and Metal.
Stars: ✭ 663 (+2913.64%)
Mutual labels:  videoeditor
corejam
A scaffolding for building progressive GraphQL powered jamstack applications.
Stars: ✭ 24 (+9.09%)
Mutual labels:  serverless-framework
CloudFrontier
Monitor the internet attack surface of various public cloud environments. Currently supports AWS, GCP, Azure, DigitalOcean and Oracle Cloud.
Stars: ✭ 102 (+363.64%)
Mutual labels:  serverless-framework

Shotstack Pexels Demo

This project demonstrates how to use the Shotstack cloud video editing API to create a video using an HTML form and video sourced from the Pexels video library.

An HTML web form allows the user to search the Pexels library via the Pexels API, choose a soundtrack and add a title. A video is the created by the Shotstack API using the video clips returned by the Pexels search and the track and title entered by the user.

View the live demo at: https://shotstack.io/demo/pexels/

The demo is built using Node JS and can be used with either Express Framework or deployed as a serverless projects using AWS Lambda and API Gateway.

Requirements

Project Structure

The project is divided in to a two components:

Backend API

The backend API with an endpoint which searches the Pexels API, prepares the edit and posts the data to the Shotstack API. A status endpoint is also available which can be polled to return the status of the video as it renders.

The backend API source code is in the api directory.

Frontend Web Form & Player

The frontend is a simple HTML form that allows the user to enter a search term and basic options to create a video. The form uses jQuery to submit the data to the backend API and poll the status of the current render. There is also a video player that is loaded with the final rendered video when ready.

The front end API source code is in the web directory.

Installation

Install node module dependencies:

cd api
npm install

Configuration

Copy the .env.dist file and rename it .env. Replace the environment variables below with your Pexels and Shotstack API key (staging key):

PEXELS_API_KEY=replace_with_your_pexels_key
SHOTSTACK_API_KEY=replace_with_your_shotstack_key

Run Locally

To start the API and serve the front end form (from the api directory):

cd api
npm run start

The visit http://localhost:3000

Deploy Serverless Application (optional)

The project has been built as a serverless application using the Serverless Framework and AWS Lambda. To understand more about the Serverless Framework and how to set everything up consult the documentation: https://serverless.com/framework/docs/providers/aws/

To deploy to AWS Lambda (from the api directory):

cd api
npm run serverless

Once the API is deployed set the var apiEndpoint variable in web/app.js to the returned API Gateway URL.

Run the web/index.html file locally or use AWS S3 static hosting to serve the web page.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].