add basic cli app for bundling a headless ontime

This commit is contained in:
2024-06-03 21:54:14 -05:00
parent cf8c8d4b2e
commit 4af2e688d1
6 changed files with 344 additions and 1 deletions
+16
View File
@@ -0,0 +1,16 @@
{
"parserOptions": {
"sourceType": "module"
},
"env": {
"browser": true,
"node": true
},
"extends": [
"eslint:recommended"
],
"plugins": [],
"rules": {
"@typescript-eslint/no-var-requires": "off"
}
}
+3
View File
@@ -0,0 +1,3 @@
server
external
client
+9
View File
@@ -0,0 +1,9 @@
{
"endOfLine": "lf",
"trailingComma": "all",
"tabWidth": 2,
"semi": true,
"singleQuote": true,
"jsxSingleQuote": true,
"printWidth": 120
}
+20
View File
@@ -0,0 +1,20 @@
#!/usr/bin/env node
// NOTE: for now the following needs to be in place: ./server/index.cjs, ./client, ./external
const ontimeServer = require('./server/index.cjs');
const { initAssets, startServer, startIntegrations, shutdown } = ontimeServer;
async function startOntime() {
await initAssets();
await startServer();
await startIntegrations();
}
startOntime();
process.on('SIGINT',()=>{
shutdown()
})
+39
View File
@@ -0,0 +1,39 @@
{
"name": "ontime-cli",
"version": "3.1.0",
"author": "Carlos Valente",
"description": "Time keeping for live events",
"repository": "https://github.com/cpvalente/ontime",
"keywords": [
"lighdev",
"ontime",
"timer"
],
"license": "AGPL-3.0-only",
"main": "main.js",
"bin": "main.js",
"scripts": {
"dev": "nodemon main.js",
"build:cli": "pkg ."
},
"devDependencies": {
"eslint": "^8.53.0",
"eslint-config-prettier": "^9.0.0",
"nodemon": "^2.0.20",
"pkg": "^5.8.1",
"prettier": "^3.0.3"
},
"pkg":{
"assets": [
"client/**/*",
"external/**/*",
"server/index.cjs"
],
"targets": [
"node18-macos-x64",
"node18-linux-x64",
"node18-win-x64"
],
"outputPath": "dist"
}
}