No description
Find a file
2019-05-24 12:04:08 +03:00
.github docs(issue) add command line, config 2017-04-18 12:58:39 +03:00
.webpack refactor(input) mv client -> client/modules/config 2019-05-22 12:26:23 +03:00
bin feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
client test(user-menu) clear 2019-05-23 19:16:12 +03:00
common feature(user-menu) add default user menu 2019-05-23 18:18:08 +03:00
css feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
font feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
html feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
img feature(img) add file-link, directory-link 2018-10-11 17:36:04 +03:00
json feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
man feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
server feature(user-menu) add default user menu 2019-05-23 18:18:08 +03:00
static test(user-menu) coverage 2019-05-24 12:04:08 +03:00
test test(terminal) node v12 support 2019-05-01 13:02:06 +03:00
tmpl feature(config) add ability to remove auth change from config with help of --config-auth flag 2018-10-16 13:15:56 +03:00
.appveyor.yml chore(appveyor) true 2018-08-23 22:44:13 +03:00
.babelrc feature(package) remove @babel/plugin-proposal-object-rest-spread 2019-03-22 13:21:51 +02:00
.cloudcmd.menu.js feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
.dockerignore feature(cloudcmd) rm jquery 2018-09-19 12:51:25 +03:00
.editorconfig feature(editorconfig) exclude hbs from insert_final_newline 2016-02-20 15:44:09 -05:00
.eslintrc.json chore(cloudcmd) eslint-plugin-putout: one-line-destructuring 2019-02-01 15:38:18 +02:00
.eslintrc.server chore(eslint) rm extends from eslintrc.json, it is enabled by default 2019-01-26 17:44:25 +02:00
.gitignore feature(cloudcmd) rm jquery 2018-09-19 12:51:25 +03:00
.npmignore feature(npmignore) add fixture.json 2019-05-06 12:13:27 +03:00
.putout.json feature(package) putout v4.23.0 2019-04-24 15:38:23 +03:00
.stylelintrc.yml chore(stylelint) max-empty-lines 2018-09-27 17:18:04 +03:00
.travis.yml chore(travis) allow_failures: node 12 2019-05-13 18:11:51 +03:00
.yaspellerrc feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
app.json fix(heroku) app: add "}" (#236) 2019-04-15 12:04:44 +03:00
ChangeLog chore(package) v12.2.0 2019-05-13 17:54:40 +03:00
CODE_OF_CONDUCT.md docs(code-of-conduct) add 2017-12-22 12:14:36 +02:00
CONTRIBUTING.md docs(contributing) rm Branch 2015-03-13 03:25:40 -04:00
cssnano.config.js chore(cloudcmd) add dangle-comma 2019-02-01 19:05:41 +02:00
docker-compose.yml feature(docker-compose) add 2016-03-09 07:58:18 -05:00
Dockerfile fix(Dockerfile) WORKDIR (#182) 2018-11-22 12:01:14 +02:00
Dockerfile.alpine fix(Dockerfile) WORKDIR (#182) 2018-11-22 12:01:14 +02:00
favicon.ico feature(favicon) add 2014-03-02 07:05:40 -05:00
HELP.md feature(cloudcmd) deprecate plugins 2019-05-14 11:29:17 +03:00
LICENSE docs(license) 2019 2018-12-20 18:01:50 +02:00
madrun.js test(user-menu) coverage 2019-05-24 12:04:08 +03:00
manifest.yml chore(manifest) rm trailing spaces 2015-02-27 09:25:00 -05:00
now.json chore(now) get back to v1, since v2 not support web sockets (zeit/micro#377) 2019-03-22 13:39:12 +02:00
package.json chore(package) mv es6-promisify to dependencies 2019-05-15 18:36:20 +03:00
README.md feature(cloudcmd) deprecate plugins 2019-05-14 11:29:17 +03:00
webpack.config.js feature(webpack) deepmerge -> webpack-merge 2018-04-11 11:31:32 +03:00

Cloud Commander v12.2.0 Build Status Now status Codacy Gitter OpenCollective OpenCollective

Main Blog Live(Heroku, Now)

Cloud Commander a file manager for the web with console and editor.

Cloud Commander

Install

npm i cloudcmd -g

Start

For starting just type in console:

cloudcmd

How to use?

Open url http://localhost:8000 in browser.

View

You will see something similar to this. View

Deploy

Cloud Commander could be easily deployed to Heroku.

Deploy

Using as Middleware

Cloud Commander could be used as middleware for node.js applications based on socket.io and express:

Init package.json:

npm init -y

Install dependencies:

npm i cloudcmd express socket.io -S

And create index.js:

const http = require('http');
const cloudcmd = require('cloudcmd');
const io = require('socket.io');
const app = require('express')();

const port = 1337;
const prefix = '/';

const server = http.createServer(app);
const socket = io.listen(server, {
    path: `${prefix}/socket.io`
});

const config = {
    name: 'cloudcmd :)',
};

const plugins = [
    __dirname + '/plugin.js'
];

const filePicker = {
    data: {
        FilePicker: {
            key: 'key',
        }
    }
};

// override option from json/modules.json
const modules = {
    filePicker,
};

app.use(prefix, cloudcmd({
    socket,  // used by Config, Edit (optional) and Console (required)
    config,  // config data (optional)
    plugins, // DEPRECATED, use User Menu instead
    modules, // optional
}));

server.listen(port);

Docker

Cloud Commander could be used as a docker container this way:

docker run -t --rm -v ~:/root -v /:/mnt/fs -w=/root -p 8000:8000 coderaiser/cloudcmd

Config would be read from home directory, hosts root file system would be mount to /mnt/fs, 8000 port would be exposed to hosts port.

Also you could use docker compose with docker-compose.yml:

version: '2'
services:
  web:
    ports:
      - 8000:8000
    volumes:
      - ~:/root
      - /:/mnt/fs
    image: coderaiser/cloudcmd

When you create this file run:

docker-compose up

Get involved

There is a lot ways to be involved in Cloud Commander development:

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

License

MIT