Skip to content

Voxylu/rapidescript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RapideScript

A fast, 0 depencies, cli to quicly creates scripts. A replacement of npm scripts.

  1. Install rapidescript: npm i -g rapidescript
  2. Create a rs.js file
  3. Write script("start").run("node src/index.js")
  4. Save and type rs start
  5. 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

About

A fast, 0 depencies, cli to quicly creates scripts. A replacement of npm scripts.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published