{"id":40701,"library":"centric","title":"Centric Server","description":"A programmable automation server (v0.13.1) for defining and scheduling tasks via JavaScript modules. Services export shared logic (e.g., DB connections), tasks define runnable workflows with cron scheduling. Peer dependency on graphql ^14.5.8. Minimal configuration: drop files into services/ and tasks/ folders. No alternative automation server with this exact file-based, GraphQL-backed approach.","status":"active","version":"0.13.1","language":"javascript","source_language":"en","source_url":"https://github.com/internalfx/centric-server","tags":["javascript"],"install":[{"cmd":"npm install centric","lang":"bash","label":"npm"},{"cmd":"yarn add centric","lang":"bash","label":"yarn"},{"cmd":"pnpm add centric","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency (^14.5.8) required for GraphQL runtime","package":"graphql","optional":false}],"imports":[{"note":"CLI tool installed globally via npm. Not a library to import.","wrong":"npm install centric --save-dev","symbol":"centric","correct":"npm install -g centric"},{"note":"Services use CommonJS module.exports, not ES module syntax.","wrong":"export default async function ({ config }) { ... }","symbol":"Service","correct":"module.exports = async function ({ config }) { ... }"},{"note":"Tasks also use CommonJS module.exports. The run method receives an object with config, services, opData, etc.","wrong":"export default { ... }","symbol":"Task","correct":"module.exports = { description, locks, defaultData, run }"}],"quickstart":{"code":"npm install -g centric\nmkdir my-automation\ncd my-automation\ncentric scaffold\n# Then edit generated tasks and services\n# Start the server\ncentric start","lang":"javascript","description":"Global install, scaffold a project, then start the server. Demonstrates minimal setup."},"warnings":[{"fix":"Use module.exports = ... for tasks and services.","message":"Tasks and services must use CommonJS module.exports, not ES module export default. The server does not support ESM.","severity":"gotcha","affected_versions":"<=0.13.1"},{"fix":"npm install graphql@^14.5.8","message":"GraphQL peer dependency required: graphql ^14.5.8. If missing, server may fail to start.","severity":"breaking","affected_versions":">=0.13.0"},{"fix":"async function run({ config, services, opData, saveOpData, taskData, saveTaskData, logInfo, logWarning, logError, isCancelled })","message":"The run method's first argument is a single object with destructured members, not multiple arguments.","severity":"gotcha","affected_versions":"all"},{"fix":"Use 'npm uninstall -g centric-cli && npm install -g centric'","message":"The centric CLI was originally named 'centric-cli' on npm but now is the main package 'centric'. Old references may break.","severity":"deprecated","affected_versions":"<0.10.0"}],"env_vars":null,"search_vec":"'14.5.8':34 'altern':45 'approach':57 'autom':5,46 'back':56 'base':53 'centric':1 'configur':36 'connect':22 'cron':28 'db':21 'defin':9,24 'depend':31 'drop':37 'e.g':20 'exact':50 'export':17 'file':38,52 'file-bas':51 'folder':43 'graphql':33,55 'graphql-back':54 'javascript':14,58 'logic':19 'minim':35 'modul':15 'peer':30 'programm':4 'runnabl':25 'schedul':11,29 'server':2,6,47 'servic':16,40 'share':18 'task':12,23,42 'v0.13.1':7 'via':13 'workflow':26","created_at":"2026-06-04T18:48:51.113896+00:00","updated_at":"2026-06-04T18:48:51.113896+00:00","problems":[{"fix":"npm install graphql@^14.5.8","cause":"Missing peer dependency graphql.","error":"Error: Cannot find module 'graphql'"},{"fix":"npm install -g centric","cause":"Centric not installed globally or not in PATH.","error":"centric: command not found"},{"fix":"Ensure service files use module.exports = async function({ config }) { ... }","cause":"Service file did not export a function (e.g., exported an object instead).","error":"TypeError: services[serviceName] is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/internalfx/centric-server","github":"https://github.com/internalfx/centric-server","docs":null,"changelog":null,"pypi":null,"npm":"centric","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-04","next_check":"2026-09-02","install_tag":null}}