rapidescript
v1.0.4
Published
A fast, 0 depencies, cli to quicly creates scripts. A replacement of npm scripts.
Downloads
21
Maintainers
Readme
RapideScript
A fast, 0 depencies, cli to quicly creates scripts. A replacement of npm scripts.
- Install rapidescript:
npm i -g rapidescript
- Create a
rs.js
file - Write
script("start").run("node src/index.js")
- Save and type
rs start
- And PAF you have a start script !
Example
script('start').run('nodemon -x ts-node src/index.ts')
script('build')
.run('tsc')
.execute(() => {
copyFile('src/schema.graphql', 'dist/schema.graphql')
removeDir('.cache/')
writeFile('dist/changelog.txt', run('git log'))
})
.run('echo "Buildind complete" | lolcat')
Api
Start a script by calling a function named script()
with the name of the script as the first arguement.
Then you can specify the rest of the script by chaining the run()
and execute()
methods.
To start a script just use the rs
command by doing rs <name of the script>
/**
* How to use run()
* run() take one or more commands and execute them
*/
run('ls').run('cat package.json')
run('ls', 'cat package.json')
// In each case `ls` will be executed then `cat package.json`
/**
* How to use execute()
* execute() take a javascript and execute it
*/
execute((args) => console.log(`The arguments are: ${args.join(',')}`))
// args will the args of the provided when the scripts is called
The are global shortcut to help you:
/** Alias to fs.writeFileSync */
declare function writeFile(filePath: string, content: string): void
/** Alias to fs.readFileSync */
declare function readFile(filePath: string): string
/** Alias to fs.copyFileSync */
declare function copyFile(filePath: string, destinitionPath: string): void
/** Alias to fs.unlinkSync */
declare function removeFile(filePath: string): void
/** Recursively remove a directory */
declare function removeDir(dirPath: string): void
/** Alias to fs.mkdirSync */
declare function createDir(dirPath: string): void
/** Run a command */
declare function run(command: string): string
/** Alias to process.env */
declare const env: any