No description
Find a file
2020-12-21 15:19:18 +02:00
.github chore(github) workflows: add coverage 2020-09-17 16:59:57 +03:00
.webpack chore(cloudcmd) lint: numeric separators 2020-09-06 21:25:40 +03:00
bin chore(cloudcmd) save, then import 2020-09-11 19:12:43 +03:00
client feature(package) supertape v3.10.0 2020-12-21 15:19:18 +02:00
common chore(datetime) rm unused 2020-12-04 18:49:37 +02:00
css chore(css) add custom variables: --color, --color-transparent 2019-12-30 12:08:39 +02:00
docker fix(docker) alpine 2020-05-06 18:35:49 +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 fix(cloudcmd) app, help: remove duplicate keys 2020-11-25 20:54:47 +02:00
man feature(cloudcmd) remove --progress option, make always enabled 2019-09-21 22:01:15 +03:00
server feature(package) supertape v3.10.0 2020-12-21 15:19:18 +02:00
static feature(package) supertape v3.10.0 2020-12-21 15:19:18 +02:00
test feature(package) supertape v3.10.0 2020-12-21 15:19:18 +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 chore(putout) prepare for webpack v5 2020-10-17 18:04:35 +03:00
.cloudcmd.menu.js feature(package) supertape v3.10.0 2020-12-21 15:19:18 +02:00
.dockerignore chore(cloudcmd) lint 2020-12-03 18:27:59 +02:00
.editorconfig feature(editorconfig) exclude hbs from insert_final_newline 2016-02-20 15:44:09 -05:00
.eslintrc.js chore(cloudcmd) lint 2020-12-03 18:27:59 +02:00
.gitignore chore(cloudcmd) lint: remove useless arguments 2020-02-17 17:17:16 +02:00
.madrun.mjs chore(madrun) lint: stylelint now bundled with putout 2020-12-15 16:25:06 +02:00
.npmignore feature(cloudcmd) IO.mv -> IO.move 2020-08-14 17:14:45 +03:00
.putout.json feature(package) putout v12.0.0 2020-12-14 15:19:23 +02:00
.travis.yml chore(travis) rm windows 2020-12-14 00:06:20 +02:00
.yaspellerrc feature(cloudcmd) rest: add rename 2020-08-10 14:42:11 +03:00
app.json fix(cloudcmd) app, help: remove duplicate keys 2020-11-25 20:54:47 +02:00
ChangeLog chore(package) v14.9.3 2020-08-21 15:51:28 +03:00
CODE_OF_CONDUCT.md test(cloudcmd) skip: connect_error tests 2020-11-16 17:40:32 +02:00
CONTRIBUTING.md test(cloudcmd) skip: connect_error tests 2020-11-16 17:40:32 +02: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
favicon.ico feature(favicon) add 2014-03-02 07:05:40 -05:00
HELP.md docs(help) change link 2020-12-03 18:20:11 +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) supertape v3.10.0 2020-12-21 15:19:18 +02:00
README.md test(cloudcmd) skip: connect_error tests 2020-11-16 17:40:32 +02:00
webpack.config.js feature(package) webpack-merge v5.0.8 2020-07-08 20:04:13 +03:00

Cloud Commander v14.9.3 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