npm i discloud.app yarn add discloud.app
Documentation
Github
NPM
Discloud Server
Examples usage
How to upload/commit your application
How to fetch your application
How to start, stop, restart or delete your application
How to view app logs
How to send a terminal command
How to backup apps
How to see your app statuses
How to change your app's name and/or avatar
How to change the amount of RAM in the app
How to install or uninstall APT
How to fetch/add/edit/remove moderators for your application
// index.js // Get instanced discloud const { discloud } = require("discloud.app"); // Set token and authenticate await discloud.login("DISCLOUD_TOKEN");
// Other file // Get instanced discloud const { discloud } = require("discloud.app"); // ... await discloud.apps.fetch("ID"); // Promise<App>
Before continuing, make sure your zip contains the discloud.config file.
Upload with simply the file
path/url:
const { discloud } = require("discloud.app"); await discloud.apps.create({ file: "FILE_PATH/FILE_NAME.zip" }); // Promise<RESTPostApiUploadResult>
Upload with
Blob | Buffer | File | RawFile | ReadableStream:
const { discloud } = require("discloud.app"); await discloud.apps.create({ file: { data: readFileSync("FILE_PATH/FILE_NAME.zip"), // Blob | Buffer name: "FILE_NAME.zip" } }); // Promise<RESTPostApiUploadResult>
Commit with simply the file
path/url:
const { discloud } = require("discloud.app"); await discloud.apps.update("APP_ID", { file: "FILE_PATH/FILE_NAME.zip" }); // Promise<RESTPutApiAppCommitResult>
Commit with
Blob | Buffer | File | RawFile | ReadableStream:
const { discloud } = require("discloud.app"); await discloud.apps.update("APP_ID", { file: { data: readFileSync("FILE_PATH/FILE_NAME.zip"), // Blob | Buffer name: "FILE_NAME.zip" } }); // Promise<RESTPutApiAppCommitResult>
For you to send a
stream, import thestreamToFilefunction to convert:
const { discloud, streamToFile } = require("discloud.app"); const file = await streamToFile(stream, "FILE_NAME.zip"); await discloud.apps.create({ file }); // Promise<RESTPostApiUploadResult>
const { discloud } = require("discloud.app"); await discloud.apps.fetch("APP_ID"); // Promise<App> await discloud.apps.fetch(/* "all" | undefined */); // Promise<Map<string, App>>
const { discloud } = require("discloud.app"); await discloud.apps.start("APP_ID"); // Promise<RESTApiBaseResult> await discloud.apps.start(/* "all" | undefined */); // Promise<ApiAppManagerStartedAll> await discloud.apps.stop("APP_ID"); // Promise<RESTApiBaseResult> await discloud.apps.stop(/* "all" | undefined */); // Promise<ApiAppManagerStopedAll> await discloud.apps.restart("APP_ID"); // Promise<RESTApiBaseResult> await discloud.apps.restart(/* "all" | undefined */); // Promise<ApiAppManagerRestartedAll> await discloud.apps.delete("APP_ID"); // Promise<RESTDeleteApiAppDeleteResult> await discloud.apps.delete(/* "all" | undefined */); // Promise<ApiAppManagerRemovedAll>
const { discloud } = require("discloud.app"); await discloud.apps.terminal("APP_ID"); // Promise<ApiTerminal> await discloud.apps.terminal(/* "all" | undefined */); // Promise<Map<string, ApiTerminal>>
const { discloud } = require("discloud.app"); await discloud.apps.console("APP_ID", "bash command"); // Promise<ApiConsoleAppShell>
const { discloud } = require("discloud.app"); await discloud.apps.backup("APP_ID"); // Promise<AppBackup> await discloud.apps.backup(/* "all" | undefined */); // Promise<Map<string, AppBackup>>
const { discloud } = require("discloud.app"); await discloud.apps.status("APP_ID"); // Promise<AppStatus> await discloud.apps.status(/* "all" | undefined */); // Promise<Map<string, AppStatus>>
const { discloud } = require("discloud.app"); await discloud.apps.profile("APP_ID", { avatarURL // Optional URL ending with GIF, JPG, JPEG or PNG name // Optional text up to 30 characters }); // Promise<RESTApiBaseResult>
const { discloud } = require("discloud.app"); await discloud.apps.ram("APP_ID", 100 /* number greater than 100 */); // Promise<RESTPutApiAppRamResult> // Remember that if your app type is site, the minimum is 512
const { discloud } = require("discloud.app"); // Install APTs await discloud.appApt.install("APP_ID", [ "canvas", "ffmpeg", "java", "libgl", "openssl", "puppeteer", "tools", ]); // Promise<RESTPutApiAppAptResult> // Uninstall APTs await discloud.appApt.uninstall("APP_ID", ["canvas", "ffmpeg"]); // Promise<RESTDeleteApiAppAptResult>
const { discloud, ModPermissions } = require("discloud.app"); // Fetch mods and permissions await discloud.appTeam.fetch("APP_ID"); // Promise<ApiAppTeam[]> // Add a mod await discloud.appTeam.create("APP_ID", "MOD_ID", [ "backup_app", "commit_app", "edit_ram", "logs_app", "restart_app", "start_app", "status_app", "stop_app", ]); // Promise<ApiAppTeamManager> // Edit mod permissions await discloud.appTeam.edit("APP_ID", "MOD_ID", [ ModPermissions.backup_app, ModPermissions.commit_app, ModPermissions.edit_ram, ModPermissions.logs_app, ModPermissions.restart_app, ModPermissions.start_app, ModPermissions.status_app, ModPermissions.stop_app, ]); // Promise<ApiAppTeamManager> // Remove a mod await discloud.appTeam.delete("APP_ID", "MOD_ID"); // Promise<RESTApiBaseResult>