A tool for executing preconfigured scripts via multiple channels (e.g. REST, CLI, WEB).
npm install -g mountain-pass/hooked
jserver
Developers: To run the source code locally (with live reload)...
npm install
npm start
j
Developers: To run the source code locally...
./cli.js
- allow non-interactive command input -> workaround: use curl and rest
- use auth/https certs to verify client <-> server security
- allow chaining hooks
- adding hook - validate hook has a name
- allow local execution of scripts? (security impl?)
- allow auto discovery of servers
- support different types of hooks?
- allow continuous input mode
- log "REST/CURL" equivalents of running commands
- Create a DSL? a la Fastlane
- allow multi server configuration e.g.
export HOOKED_SERVER=http://foobar:4000,http://catdog:3000
-
allow server configuration➡️export HOOKED_SERVER=http://foobar:4000
-
"rename" hook -
order list options alphabetically -
"createSlackNotificationHook"
- move user prompts config into server - expand inquirer params - description/help, cardinality, prompt, defaultValue, etc
-
‼️ allow updating/editing hooks & metadata (e.g. version, description, supported os, last modified, etc) - check whether hook command is "supported" e.g. curl --help && echo $? == 0
- create job to view job config
- setup a Docker job
- setup a Steam job
- setup an AWS job
- setup an Azure job
- metadata - add "support" fields
- supported until
- details of support contract
- warnings when unsupported/out of support
- support service versioning
- multiple version running at same time?
- strict version vs semantic versioning?
- include version in http headers (for client as well) - @Tom - what do you recommend? (dotnet/aspnet-api-versioning#42)
- add auditing (requires user auth?)
- flag to disable internal/admin hooks?
- add ability to schedule hooks
- ❗ stop "injection" attacks
- save config - debounce
- make hooks a navigable hierarchy?
- add tests
- git version control static config?
-
implement http caching - etag -
handle when backend server is down -
add icons to hooks -
disable livereload for non-dev environments➡️export LIVERELOAD=true
-
add metadata to services -
write configuration to a user configurable location -
read configuration from a user configurable location➡️export HOOKED_HOME=/Users/nickpersonal/.hooked
-
allow external configuration of server port➡️export HOOKED_SERVER_PORT=4000
-
❗ create a web frontend➡️ http://127.0.0.1:3000
- mobile - put hook buttons into a dropdown?
- create a component for http loading?
- add "external" access to select hooks via a web interface
- align colours (CLI with Website)
- ability to import hooks from external sources (marketplace? updates?)
- add validation
- todo componentise pug sections?
- provide sample curl commands?
-
mobile supported display -
fix dropdown styling -
handle list inputs
Fishing Hook (modified) by Adi Dizdarevic from the Noun Project - CreativeCommons3.0