No description
Find a file
2019-11-15 17:42:47 +02:00
.github chore(workflow) add 2019-08-14 15:45:14 +03:00
.webpack chore(cloudcmd) lint 2019-09-28 16:42:30 +03:00
bin feature(cloudcmd) remove --progress option, make always enabled 2019-09-21 22:01:15 +03:00
client chore(cloudcmd) lint 2019-11-04 13:53:06 +02:00
common feature(client) remove legacy suffix, use modules as is 2019-08-27 22:18:40 +03:00
css feature(user-menu) hide scroll when small amount of items 2019-05-24 13:03:02 +03:00
font feature(user-menu) add (#221) 2019-05-13 17:45:59 +03:00
html feature(cloudcmd) only user menu on f2 2019-08-14 15:45:11 +03:00
img feature(img) add file-link, directory-link 2018-10-11 17:36:04 +03:00
json feature(cloudcmd) remove --progress option, make always enabled 2019-09-21 22:01:15 +03:00
man feature(cloudcmd) remove --progress option, make always enabled 2019-09-21 22:01:15 +03:00
server test(route) rm broken test 2019-11-15 17:42:47 +02:00
static feature(user-menu) add ability to ignore private methods 2019-05-28 19:04:22 +03:00
test chore(config) lint 2019-11-14 11:59:59 +02:00
tmpl feature(cloudcmd) remove --progress option, make always enabled 2019-09-21 22:01:15 +03:00
.babelrc feature(cloudcmd) decrease bundle size: disable convertion to es5 2019-08-27 22:33:32 +03:00
.browserslistrc feature(cloudcmd) decrease bundle size: disable convertion to es5 2019-08-27 22:33:32 +03: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.js chore(cloudcmd) lint 2019-08-05 18:10:16 +03:00
.gitignore feature(cloudcmd) rm jquery 2018-09-19 12:51:25 +03:00
.madrun.js chore(cloudcmd) lint 2019-11-04 13:53:06 +02:00
.npmignore chore(npmignore) rm madrun 2019-11-08 16:26:15 +02:00
.putout.json chore(cloudcmd) lint 2019-09-28 16:42:30 +03:00
.stylelintrc.yml chore(stylelint) max-empty-lines 2018-09-27 17:18:04 +03:00
.travis.yml chore(travis) node v13 2019-10-23 12:52:16 +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) v14.1.2 2019-10-16 14:19:34 +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 docs(readme) unhide -> keep 2019-10-27 11:47:54 +02:00
LICENSE docs(license) 2019 2018-12-20 18:01:50 +02:00
manifest.yml chore(manifest) rm trailing spaces 2015-02-27 09:25:00 -05:00
package.json feature(package) chalk v3.0.0 2019-11-14 11:05:16 +02:00
README.md chore(package) v14.1.2 2019-10-16 14:19:34 +03:00
webpack.config.js feature(webpack) deepmerge -> webpack-merge 2018-04-11 11:31:32 +03:00

Cloud Commander v14.1.2 Build Status Codacy Gitter FOSSA Status

Main Blog Live(Heroku)

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 filePicker = {
    data: {
        FilePicker: {
            key: 'key',
        }
    }
};

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

const {
    createConfigManager,
    configPath,
} = cloudcmd;

const configManager = createConfigManager({
    configPath,
}),

app.use(prefix, cloudcmd({
    socket,  // used by Config, Edit (optional) and Console (required)
    config,  // config data (optional)
    modules, // optional
    configManager, // 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:

License

MIT