1.0.2 • Published 4 years ago

html-scribe v1.0.2

Weekly downloads
1
License
MIT
Repository
-
Last release
4 years ago

Scribe Client-side text parser.

Parse any page / DOM element's text content. Gets all unique strings used in the given element. Generate a dictionary based on parsing results. Exports results in JSON format.

Installation

Install the package with your package manager of choice.

yarn add html-scribe
# or
npm install --save html-scribe

Import the package.

import Scribe from 'html-scribe'

// or

const Scribe = require('html-scribe')

Getting Started

To use Scribe, you first need to create an instance. Optionnaly, pass it an options object a first argument.

const parser = new Scribe({
    // options table located below
})

Basic Usage

Scribe should work with all major front-end frameworks, since it exclusively uses the vanilla JS API.

Manually, using API

// Initialize Scribe instance, target element "main"
const parser = new Scribe()

// Target "main"
const element = document.querySelector('main')

// Parse Element
const strings = parser.parse(element)

// Generate 
const dictionary = parser.generateDictionary()

// export results and dictionnary to JSON
// with title "myExport"
parser.exportStringsAndDictionnary('myExport')

Scribe can easily automate this same process.

Automatically, using options

new Scribe({
  el: document.querySelector('main'),
  config: {
    strings: {
      autoStart: true,
      exportOnFinish: true,
    },
    dictionary: {
      autoStart: true,
      exportOnFinish: true,
    }
  }
})

Instance Options

Options are declared through nested object properties, formatted as such:

Default options

const defaultOptions = {
  el: null,
  source: [],
  config: {
    strings: {
      autoStart: false,
      exportOnFinish: false,
      sort: false,
    },
    dictionary: {
      autoStart: false,
      exportOnFinish: false,
      sort: true,
    }
  }
}

Strings- and dictionnary-related options are to be declared separately.

Options

OptionTypeDefaultDescription
elDOMElementnullElement to parse for strings.
sourceArray[String][]Strings array to use as initial source when parsing element.
autoStartBooleanfalseParsing starts as soon as instance is created.
exportOnFinishBooleanfalseStart download dialog as soon as parsing is finished.
sortBooleanfalseSort results alphabetically.

Instance Methods

MethodDescriptionArgumentsReturns
parse(el)Parse element for stringsel: Element to parse. Uses options.el if left empty.Parsing results Array[String]
generateDictionary(list)Extract unique words from supplied listlist: Strings to convert into dictionary. Uses parsing results (instance.strings) if left empty.Dictionnary Array[String]
exportStrings(title)Convert parsing results to JSON and trigger download dialogtitle: title of generated file.JSON File
exportDictionary(title)Convert dictionary to JSON and trigger download dialogtitle: title of generated file.JSON File
exportStringAndDictionary(title)Export parsing results and dictionary to JSON and trigger download dialogtitle: title of generated file.JSON File

Contributing

Scribe still is a young package. Issues, pull requests and forks are welcome!