A standalone dashboard for managing Parse Server apps with web interface and Express middleware integration
—
Quality
Pending
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Parse Dashboard provides a comprehensive command-line interface for running the dashboard as a standalone application with extensive configuration options.
The primary command for running Parse Dashboard from the command line.
parse-dashboard [options]
# Main options:
--appId [appId] # Parse App ID
--masterKey [masterKey] # Parse Master Key
--masterKeyTtl [masterKeyTtl] # Master Key TTL in seconds
--serverURL [serverURL] # Parse Server URL
--graphQLServerURL [graphQLServerURL] # GraphQL Server URL
--dev # Enable development mode
--appName [appName] # Application display name
--config [config] # Path to configuration file
--host [host] # Host to bind (default: 0.0.0.0)
--port [port] # Port to listen (default: 4040)
--mountPath [mountPath] # Mount path for dashboard
--allowInsecureHTTP [allowInsecureHTTP] # Allow HTTP connections
--sslKey [sslKey] # Path to SSL private key
--sslCert [sslCert] # Path to SSL certificate
--trustProxy [trustProxy] # Trust proxy headers
--cookieSessionSecret [secret] # Session cookie secret
--cookieSessionMaxAge [maxAge] # Session timeout in seconds
--createUser # Interactive user creation tool
--createMFA # Interactive MFA setup toolAll CLI options can be configured via environment variables:
# Core Parse Server connection
PARSE_DASHBOARD_APP_ID # --appId
PARSE_DASHBOARD_MASTER_KEY # --masterKey
PARSE_DASHBOARD_SERVER_URL # --serverURL
PARSE_DASHBOARD_GRAPHQL_SERVER_URL # --graphQLServerURL
PARSE_DASHBOARD_APP_NAME # --appName
# Server configuration
HOST # --host
PORT # --port
MOUNT_PATH # --mountPath
# Security and SSL
PARSE_DASHBOARD_ALLOW_INSECURE_HTTP # --allowInsecureHTTP
PARSE_DASHBOARD_TRUST_PROXY # --trustProxy
PARSE_DASHBOARD_SSL_KEY # --sslKey
PARSE_DASHBOARD_SSL_CERT # --sslCert
# Session management
PARSE_DASHBOARD_COOKIE_SESSION_SECRET # --cookieSessionSecret
PARSE_DASHBOARD_COOKIE_SESSION_MAX_AGE # --cookieSessionMaxAge
# Configuration
PARSE_DASHBOARD_CONFIG # JSON configuration string
PARSE_DASHBOARD_AGENT # JSON agent configuration
# Additional user authentication
PARSE_DASHBOARD_USER_ID # Single user ID for basic auth
PARSE_DASHBOARD_USER_PASSWORD # Single user password for basic authInteractive utilities for user and MFA management:
// Available through CLIHelper module
interface CLIHelper {
/**
* Interactive user creation utility
* Prompts for username, password, and access settings
* Generates bcrypt hash for secure password storage
* Optionally sets up MFA with QR code generation
*/
createUser(): Promise<void>;
/**
* Interactive MFA setup utility
* Generates TOTP secret and displays QR code for authenticator apps
* Supports multiple algorithms (SHA1, SHA256, SHA512, etc.)
* Configurable digits and time period
*/
createMFA(): Promise<void>;
}Usage Examples:
# Basic single app setup
parse-dashboard --appId myAppId --masterKey myMasterKey --serverURL http://localhost:1337/parse --appName "My App"
# Development mode (no authentication, HTTP allowed)
parse-dashboard --dev --appId myAppId --masterKey myMasterKey --serverURL http://localhost:1337/parse
# Using configuration file
parse-dashboard --config ./dashboard-config.json
# Custom host and port
parse-dashboard --host 127.0.0.1 --port 8080 --config ./config.json
# SSL enabled
parse-dashboard --sslKey ./private-key.pem --sslCert ./certificate.pem --config ./config.json
# Create user interactively
parse-dashboard --createUser
# Create MFA secret interactively
parse-dashboard --createMFA
# Environment variable configuration
export PARSE_DASHBOARD_APP_ID=myAppId
export PARSE_DASHBOARD_MASTER_KEY=myMasterKey
export PARSE_DASHBOARD_SERVER_URL=http://localhost:1337/parse
export PORT=8080
parse-dashboardinterface CLIOptions {
appId?: string;
masterKey?: string;
masterKeyTtl?: string;
serverURL?: string;
graphQLServerURL?: string;
dev?: boolean;
appName?: string;
config?: string;
host?: string;
port?: string;
mountPath?: string;
allowInsecureHTTP?: string; // String in CLI, parsed to boolean
sslKey?: string;
sslCert?: string;
trustProxy?: string; // String in CLI, parsed to boolean
cookieSessionSecret?: string;
cookieSessionMaxAge?: string; // String in CLI, parsed to number
createUser?: boolean;
createMFA?: boolean;
userId?: string; // For basic single-user auth
userPassword?: string; // For basic single-user auth
agent?: string; // JSON string of agent configuration
}Install with Tessl CLI
npx tessl i tessl/npm-parse-dashboard