Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 23 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
node_modules/*
build/*
client/build/*
*.log
settings.json
conversion_profile.xml
conversion_profile.xml

# PyCharm
.idea/*

# dependencies
node_modules
client/node_modules

# testing
/coverage

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
53 changes: 30 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# Node MakeMKV: The Missing Web UI

Node MakeMKV: The Missing Web UI
================================

Node-MakeMKV is the successor to [Remote-MakeMKV](https://blog.dlasley.net/2013/01/remote-makemkv/). The intent of this project is to provide a web front end for MakeMKV to allow for a headless ripping server. This application is written in CoffeeScript and Node.js. The server has been successfully tested on Linux (Ubuntu and CentOS). The client has been successfully tested in all major desktop and mobile browsers.


## Installation [∞](#installation "Link to this section")
Installation [∞](#installation "Link to this section")
------------------------------------------------------

Note: This project has been Dockerized, which allows for easier setup. Check out the project
on [GitHub](https://github.com/lasley/docker-node-makemkv), or get the container on [DockerHub](
Expand All @@ -25,24 +26,24 @@ Variable | Description

* Default MakeMKV selection profile as defined in ~/.MakeMKV/settings.conf will be used for track selections. I am currently working on defining these programmatically.

## Usage [∞](#usage "Link to this section")

* Clone the repo - `git clone https://github.com/lasley/node-makemkv.git`

* Install apt dependencies (will need to adapt for RHEL/CentOS) - `sudo apt-get install nodejs-legacy npm libudev-dev`

* Install coffeescript interpreter - `sudo npm install -g coffee-script`

* Install dependencies with npm - `npm install ./node-makemkv`

* Copy the example settings file to the correct location - `cp ./node-makemkv/settings.example.json ./node-makemkv/settings.json`

* Copy the example profile to the correct location - `cp ./node-makemkv/conversion_profile_example.xml ./node-makemkv/conversion_profile.xml`

Usage [∞](#usage "Link to this section")
----------------------------------------

* Clone the repo -
`git clone https://github.com/lasley/node-makemkv.git` -
* Install apt dependencies (will need to adapt for RHEL/CentOS) -
`sudo apt-get install nodejs-legacy npm libudev-dev`
* Install coffeescript interpreter -
`sudo npm install -g coffee-script`
* Install dependencies with npm -
`npm install ./node-makemkv`
* Copy the example settings file to the correct location -
`cp ./node-makemkv/settings.example.json ./node-makemkv/settings.json`
* Copy the example profile to the correct location -
`cp ./node-makemkv/conversion_profile_example.xml ./node-makemkv/conversion_profile.xml`
* Update the `conversion_profile` and `output_dir` paths in `settings.json`

* Run the server – `coffee ./node-makemkv/server.coffee` – _Note: you must run the server as a user that has permissions to read from optical media_

* Run the server – `coffee ./node-makemkv/server.coffee` –
Note: you must run the server as a user that has permissions to read from optical media
* Navigate to `SERVER_HOSTNAME:LISTEN_PORT` to view the GUI

![node-makemkv-gui-1.png](https://blog.dlasley.net/user-files/uploads/2014/04/node-makemkv-gui-1.png "node-makemkv-gui-1.png")
Expand All @@ -53,7 +54,13 @@ Variable | Description

![node-makemkv-discinfo-panel-1.png](https://blog.dlasley.net/user-files/uploads/2014/04/node-makemkv-discinfo-panel-1.png "node-makemkv-discinfo-panel-1.png")

## Repos [∞](#repos "Link to this section")
Socket Events
-------------

Subscribe Events:
* `subscribeToDiscInfo`
* `subscribeToDriveInfo`
* `subscribeToRipStatus`

* [GitHub](https://github.com/dlasley/node-makemkv)
* [Private Mirror](https://repo.dlasley.net/projects/VID/repos/node-makemkv/browse)
Action Events:
* `doRipTracks`
Loading