$ npm install -g flamebird
To start Flamebird you can use fb [command] [options] (or longer alias flamebird [command] [options]).
Application provides two commands: fb start and fb web (read below).
Need help? Use command:
$ fb --help
# or simply
$ fb
$ fb start [options]
Run tasks from Procfile or package.json
Options:
-p, --package- using package.json for the managing tasks. (:warning: with this option the commandstartrun all tasks frompackage.json, for resolving it , please use option-t)-t, --tasks [tasks]- list of tasks which needs to async run infb start( example :fb start --tasks start,start:dev,start-serverand then tasks arestart,start:dev,start-serverwill have been runned asynchronously )
$ fb web [options]
Launch web-application which is task-manager. That command has more abilities than start. Web-application is reading Procfile and package.json and adding ability to launch scripts inside this files together
Options:
-t, --tasks [tasks]- list of tasks which will be managing in thefb webcommand ( example :fb web --tasks start,start:dev,start-serverand this tasks will be showing in the web-applicationstart,start:dev,start-server)-p, --port <PORT>- sets the server port, by default5050-n, --name <NAME>- sets the project name. Display name of the project in title and header. By default using name of project insidepackage.jsonotherwiseflamebird
hotkeys works only if
is triggered.
If you want to help this project you need to read this part of readme.md for more detail understanding of for what some things are needed.
First of all take a look at project structure:
- flamebird project
- flamebird.js - Executable by nodejs file when call
fb start/fb web. Describe information about commandswebandstart. - LICENSE
- nodemon.json - Nodemon config file. Only needed for debug flamebird.
- node_modules - you know what is that :D
- package-lock.json
- package.json
- postinstall.js - Script which execute after installing flamebird dependencies
- Procfile - List of scripts which execute via nodemon. Only needed for debug flamebird.
- README.md
- webpack.config.js
- babel.config.js
- CHANGELOG.md
- assets
- client Client application β‘οΈ
- controllers - folder with controllers where each one have specific UI manipulations
- assets - folder with assets
- logo.psd - source of the flamebird logo
- logo.png
- logo2_small.png
- logo2.png
- logo2_transparent.png
- helpers - folder with helpers where helper contains specific logic. In future it will be removed or moved into modules in
scriptsfolder. - global.js - global file which implement pattern Facade and combine all interactions of modules from
scriptsfolder. - index.html
- medium-screens.css
- scripts - Bunch of modules which needed for web application.
- Api.js - Contains all API endpoints which needed for client. It uses
kinkaas http web client. - Configs.js - Responsible for update configs list
- HotKeys.js - Hot keys
- Tabs.js - Module which responsible for update tabs list.
- TaskList.js - Module which responsible for update tasks list.
- ThemeSwitcher.js - Module which responsible for theme switching.
- WebLogger.js - Logger module. Output logs into the logs container
- WebSocket.js - WebSocket client connection
- Api.js - Contains all API endpoints which needed for client. It uses
- small-screens.css
- styles
- styles.css
- dist - client build folder
- server Server application β‘οΈ
- config.js - module which working with configuration file (
.flamebirdrc) - constants.js - module which contains constant values. It usings on both sides (client, server)
- processWorker.js - module which responsible for run/stop tasks
- server.js - [
Web version] module which contains API endpoints. - utils - bunch of utilities π
- colors.js - tools which colorize console output
- commands.js - tools which needed for CRUD commands
- emitter.js - instance of
events.EventEmitter. - envs.js - tools which needed for parse environment variables
- mem_cache.js - just simple object which save all information. Have methods
get,set - processes.js - tools which needed for create and kill processes
- ws.js - [
Web version] Websocket connection - taskfile.js - module which parse all commands from
Procfileandpackage.json
- config.js - module which working with configuration file (
- flamebird.js - Executable by nodejs file when call
Licensed under the MIT License.

