hippofish/packages/ffm-js
2023-08-21 06:31:53 -07:00
..
.github Added ffm-js 2023-08-20 22:00:42 -07:00
docs Added ffm-js 2023-08-20 22:00:42 -07:00
etc Added ffm-js 2023-08-20 22:00:42 -07:00
src Added ipfs and web+ 2023-08-21 06:31:53 -07:00
test Got ffm.js working 2023-08-20 22:00:42 -07:00
test-d Added ffm-js 2023-08-20 22:00:42 -07:00
.editorconfig Added ffm-js 2023-08-20 22:00:42 -07:00
.eslintignore Added ffm-js 2023-08-20 22:00:42 -07:00
.eslintrc.js Added ffm-js 2023-08-20 22:00:42 -07:00
.gitignore Added ffm-js 2023-08-20 22:00:42 -07:00
api-extractor.json Added ffm-js 2023-08-20 22:00:42 -07:00
CHANGELOG.md Added ffm-js 2023-08-20 22:00:42 -07:00
CODE_OF_CONDUCT.md Added ffm-js 2023-08-20 22:00:42 -07:00
codecov.yml Added ffm-js 2023-08-20 22:00:42 -07:00
CONTRIBUTING.md Added ffm-js 2023-08-20 22:00:42 -07:00
jest.config.ts Added ffm-js 2023-08-20 22:00:42 -07:00
LICENSE Added ffm-js 2023-08-20 22:00:42 -07:00
package-lock.json Added ffm-js 2023-08-20 22:00:42 -07:00
package.json Got ffm.js working 2023-08-20 22:00:42 -07:00
README.md Added ffm-js 2023-08-20 22:00:42 -07:00
tsconfig.json Added ffm-js 2023-08-20 22:00:42 -07:00

mfm.js

An MFM parser implementation with TypeScript. Try it out!

Test codecov

NPM

Installation

npm i mfm-js

Usage

Please see docs for the detail.

TypeScript:

import * as mfm from 'mfm-js';

const inputText =
`<center>
Hello $[tada everynyan! 🎉]

I'm @ai, A bot of misskey!

https://github.com/syuilo/ai
</center>`;

// Generate a MFM tree from the full MFM text.
const mfmTree = mfm.parse(inputText);

// Generate a MFM tree from the simple MFM text.
const simpleMfmTree = mfm.parseSimple('I like the hot soup :soup:');

// Reverse to a MFM text from the MFM tree.
const text = mfm.toString(mfmTree);

Develop

1. Clone

git clone https://github.com/misskey-dev/mfm.js.git

2. Install packages

cd mfm.js
npm i

3. Build

npm run build

Use the interactive CLI parser

full parser:

npm run parse

simple parser:

npm run parse-simple

License

This software is released under the MIT License.