UNPKG

actionhero

Version:

actionhero.js is a multi-transport API Server with integrated cluster capabilities and delayed tasks

174 lines (160 loc) 5.65 kB
<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta http-equiv="content-language" content="en" /> <meta name="description" content="Actionhero.js" /> <link rel="stylesheet" href="/public/css/cosmo.css" type="text/css" /> <link rel="icon" href="/public/favicon.ico" /> <title>Actionhero.js</title> </head> <body> <div class="alert alert-warning" style=" display: none; font-weight: bold; position: fixed; top: 0px; left: 0px; width: 100%; z-index: 9999; " id="error-container" > <p id="error" /> </div> <div class="container"> <br /> <div class="jumbotron"> <div class="row"> <div class="col-md-4"> <img src="/public/logo/actionhero.png" style="max-width: 100%;" /> </div> <div class="col-md-8"> <h1>Your Actionhero Server is working.</h1> <h2>Congratulations!</h2> <br /> <br /> <p> Actionhero.js is a multi-transport API Server with integrated cluster capabilities and delayed tasks. </p> <p> Actionhero was built from the ground up to include all the features you expect from a modern API framework. This includes all the features listed below and more. Actionhero also knows when to get out of the way to allow you to customize your stack to fit your needs. </p> <br /> <br /> <div class="row"> <div class="col-md-6"> <a href="/chat.html" class="btn btn-primary" >Try a realtime-chat with web sockets</a > </div> <div class="col-md-6"> <a href="http://www.actionherojs.com" target="_blank" class="btn btn-success" >Learn More about Actionhero</a > </div> </div> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="card border-primary"> <div class="card-header">This Server</div> <div class="card-body"> <pre class="card-text"> Server Name: <span class="right" id="serverName"></span> API Version: <span class="right" id="serverVersion"></span> Actionhero Version <span class="right" id="actionheroVersion"></span> Uptime (min): <span class="right" id="uptime"></span> </pre> </div> </div> </div> </div> <hr /> <div class="row"> <div class="col-md-12"> <h2>Actions on This Server:</h2> <div class="list-group" id="actions" /> </div> </div> </div> <script type="text/javascript"> var populateStatus = function (data) { if (data.serverInformation) { document.getElementById("serverVersion").innerHTML = data.serverInformation.apiVersion; document.getElementById("serverName").innerHTML = data.serverInformation.serverName; } document.getElementById("actionheroVersion").innerHTML = data.actionheroVersion; document.getElementById("uptime").innerHTML = Math.round( data.uptime / 1000 / 60 ); }; var populateDocumentation = function (data) { for (var actionName in data.documentation) { for (var version in data.documentation[actionName]) { var action = data.documentation[actionName][version]; var row = ""; row += '<a href="/api/' + action.name + "?apiVersion=" + version + '" class="list-group-item list-group-item-action flex-column align-items-start>'; row += ' <div class="d-flex w-100 justify-content-between">'; row += ' <h3 class="mb-1">' + action.name + " <small>v" + version + "</small></h3>"; row += " </div>"; row += ' <p class="mb-1">' + action.description + "</p>"; row += ' <div class="row">'; row += ' <div class="col-md-6">'; row += " <h5>Inputs</h5>"; row += " <pre>" + JSON.stringify(action.inputs, null, 4) + "</pre></p>"; row += " </div>"; row += ' <div class="col-md-6">'; row += " <h5>Output Example</h5>"; row += " <pre>" + JSON.stringify(action.outputExample, null, 4) + "</pre></p>"; row += " </div>"; row += " </div>"; row += "</a >"; document.getElementById("actions").innerHTML += row; } } }; var renderError = function (error) { console.error(error); document.getElementById("error").innerHTML = error.toString(); document.getElementById("error-container").style.display = "block"; }; fetch("/api/showDocumentation") .then((response) => response.json()) .then((data) => populateDocumentation(data)); fetch("/api/status") .then((response) => response.json()) .then((data) => populateStatus(data)); </script> </body> </html>