Options
All
  • Public
  • Public/Protected
  • All
Menu

majo

Art by でんでん COMIC1・こ 24b

NPM version NPM downloads CircleCI donate

Introduction

You can use majo to manipulate files like a pro, with a simple API whose core is only ≈ 150 SLOC.

Install

yarn add majo

Usage

const { majo } = require('majo')

const stream = majo()

// Given that you have js/app.js js/index.js
stream
  .source('js/**')
  .use(ignoreSomeFiles)
  .dest('dist')
  .then(() => {
    // Now you got filtered files
  })

function ignoreSomeFiles(stream) {
  for (const filename in stream.files) {
    const content = stream.fileContents(filename)
    // Remove it if content has specific string
    if (/some-string/.test(content)) {
      delete stream.files[filename]
    }
  }
}

Documentation

https://majo.egoist.sh

Used By

  • SAO: ⚔️ Futuristic scaffolding tool.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

majo © egoist, Released under the MIT License.
Authored and maintained by egoist with help from contributors (list).

egoist.moe · GitHub @egoist · Twitter @_egoistlily

Index

Type aliases

FilterHandler

FilterHandler: function

Type declaration

    • (relativePath: string, file: File): boolean
    • Parameters

      • relativePath: string
      • file: File

      Returns boolean

Middleware

Middleware: function

Type declaration

    • (ctx: Majo): Promise<void> | void
    • Parameters

      Returns Promise<void> | void

OnWrite

OnWrite: function

Type declaration

    • (relativePath: string, outputPath: string): void
    • Parameters

      • relativePath: string
      • outputPath: string

      Returns void

TransformHandler

TransformHandler: function

Type declaration

    • (contents: string): Promise<string> | string
    • Parameters

      • contents: string

      Returns Promise<string> | string

Variables

Const readFile

readFile: __promisify__ = promisify(fs.readFile)

Const remove

remove: function = promisify(rimraf)

Type declaration

    • (arg1: T1): Promise<void>
    • Parameters

      • arg1: T1

      Returns Promise<void>

Const writeFile

writeFile: __promisify__ = promisify(fs.writeFile)

Functions

Const majo

  • Returns Majo

Const outputFile

  • outputFile(filepath: string, data: any, options?: fs.WriteFileOptions): Promise<void>
  • Ensure directory exists before writing file

    Parameters

    • filepath: string
    • data: any
    • Optional options: fs.WriteFileOptions

    Returns Promise<void>

Legend

  • Module
  • Object literal
  • Variable
  • Function
  • Function with type parameter
  • Index signature
  • Type alias
  • Type alias with type parameter
  • Enumeration
  • Enumeration member
  • Property
  • Method
  • Interface
  • Interface with type parameter
  • Constructor
  • Property
  • Method
  • Index signature
  • Class
  • Class with type parameter
  • Constructor
  • Property
  • Method
  • Accessor
  • Index signature
  • Inherited constructor
  • Inherited property
  • Inherited method
  • Inherited accessor
  • Protected property
  • Protected method
  • Protected accessor
  • Private property
  • Private method
  • Private accessor
  • Static property
  • Static method

Generated using TypeDoc