@joggr/tempo
TypeScript icon, indicating that this package has built-in type declarations

0.9.1 • Public • Published


"Running gives freedom. When you run you can determine your own tempo. You can choose your own course and think whatever you want. Nobody tells you what to do." - Nina Kuscsik

npm version CodeQL Publish to npm CI
JS Semi-standard Style Prettier Style

Overview

Library used to programmatically build markdown documents, with a heavy tilt toward GitHub Flavored Markdown (GFM).

Getting Started

Install the library and you can begin to use it in your application(s).

This is a GitHub Package and your application must support installing internal GitHub packages before you can use this package.

npm

npm install @joggr/tempo

yarn

yarn add @joggr/tempo

Usage

import fs from 'node:fs/promises';
import tempo from '@joggrdocs/tempo';

const result = tempo()
  .h1('Hello World')
  .paragraph('Some things')
  .paragraph((txt) => 
    txt
      .plainText('A sentence with')
      .bold('bolded words')
      .plainText('and')
      .italic('italicized words')
      .plainText('.')
      .build()
  )
  .h2((txt) => 
    txt 
      .plainText('A')
      .italic('table')
  )
  .table([
    ['name', 'email'],
    ['Zac', 'zac@acmecorp.com']
  ])
  .toString();

fs.writeFile('myFile.md', result)
  .then(() => {
    console.log('DONE');
  });

Serialized Data (⚠️ Unstable API ⚠️)

Tempo creates a syntax tree that can be serialized and stored in a data base.

import db from 'db/orm';
import tempo from '@joggrdocs/tempo';

const result = tempo()
  .h1('Hello World')
  .paragraph('Some things')
  .paragraph((txt) => 
    txt
      .plainText('A sentence with')
      .bold('bolded words')
      .plainText('and')
      .italic('italicized words')
      .plainText('.')
      .build()
  )
  .toJSON();

// Example of storing a serializable data object to the DB
await db.collection('tempoDoc').findAndSave(1, result);

Credits

Readme

Keywords

none

Package Sidebar

Install

npm i @joggr/tempo

Weekly Downloads

63

Version

0.9.1

License

MIT

Unpacked Size

544 kB

Total Files

6

Last publish

Collaborators

  • danielbot
  • zrosenbauer