Skip to content
This repository has been archived by the owner on Oct 1, 2024. It is now read-only.
/ camcorder Public archive

An offline-capable, mobile, web application to record, watch and upload videos to dailymotion.

License

Notifications You must be signed in to change notification settings

dailymotion/camcorder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Camcorder

A simple Web Application to record, watch and upload videos to dailymotion.

Screen Captures

The goal is to showcase getUserMedia() & MediaRecorder APIs, as well as Dailymotion JavaScript SDK, and how they can be used to record and upload a video to Dailymotion, directly from the browser.

Give it a try

What do you get?

  • A Mobile app. It also works on desktop but the UI is kind of broken...

  • An Android app. Unfortunately Safari iOS doesn't support getUserMedia()/MediaRecorder yet. So it will only work on Android devices

  • Features :

    • Record a video from the phone camera
    • List recorded videos
    • Watch (in-app), download (on the device) or remove recorded videos
    • Login to dailymotion, upload a recorded video to your account
  • Works Offline! :

    • Recordings are save in IndexedDB thanks to localForage library
    • Service Workers are enabled thanks to offline-plugin for webpack + a manifest.json file
    • Upload to Dailymotion is obviously not available when offline 😉

Local setup

  1. Clone the repository
  2. Run npm install in the newly created folder.
  3. Create your own Dailymotion API key
  4. Make your newly created API key available as an environement variable : export DM_API_KEY=<API key>
  5. Run npm start to start the webpack dev server
  6. Open http://localhost:8080/webpack-dev-server/ or http://localhost:8080/ to test the application.

NPM Scripts

npm run clean

Clean all files in the dist folder.

npm run build

Build the sources files for production

npm start

Run the local server for development. Once the server is started, you should be able

npm run deploy

Build the application for production and deploys it to github pages.