Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/misskey-dev/mfm.js
An MFM parser implementation with TypeScript.
https://github.com/misskey-dev/mfm.js
mfm mfm-parser misskey parser typescript
Last synced: 13 days ago
JSON representation
An MFM parser implementation with TypeScript.
- Host: GitHub
- URL: https://github.com/misskey-dev/mfm.js
- Owner: misskey-dev
- License: mit
- Created: 2020-01-29T23:45:09.000Z (almost 5 years ago)
- Default Branch: develop
- Last Pushed: 2023-12-26T11:52:38.000Z (10 months ago)
- Last Synced: 2024-04-14T01:00:11.665Z (7 months ago)
- Topics: mfm, mfm-parser, misskey, parser, typescript
- Language: TypeScript
- Homepage:
- Size: 714 KB
- Stars: 106
- Watchers: 6
- Forks: 18
- Open Issues: 31
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# mfm.js
An MFM parser implementation with TypeScript.
[Try it out!](https://runkit.com/npm/mfm-js)[![Test](https://github.com/misskey-dev/mfm.js/actions/workflows/test.yml/badge.svg)](https://github.com/misskey-dev/mfm.js/actions/workflows/test.yml)
[![codecov](https://codecov.io/gh/misskey-dev/mfm.js/branch/develop/graph/badge.svg?token=irAWFiHK8T)](https://codecov.io/gh/misskey-dev/mfm.js)[![NPM](https://nodei.co/npm/mfm-js.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/mfm-js)
## Installation
```
npm i mfm-js
```## Usage
Please see [docs](./docs/index.md) for the detail.TypeScript:
```ts
import * as mfm from 'mfm-js';const inputText =
`
Hello $[tada everynyan! 🎉]I'm @ai, A bot of misskey!
https://github.com/syuilo/ai
`;// 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](LICENSE).