Awesome
<p align="center"> <picture> <img src="https://i.ibb.co/nbMS51q/Group-1.png" height="128"> </picture> <h1 align="center">Diagonjs</h1> </p> <div align="center"> </div>Craft captivating ASCII art from your Markdown expression with ease, powered by Diagon.
π Features
- Supports Math, Sequence, Tree, Table, Grammars, Frame, and GraphDAG expressions.
- Flexible translation with customizable options including styles like Unicode, ASCII, Latex, and more.
- Support for both Node.js and browser environments.
- Compatible with CommonJS (CJS) and ECMAScript Module (ESM) environments.
- Fully typed for enhanced developer experience.
βοΈ Install
Install it locally in your project folder:
npm i diagonjs
# Or Yarn
yarn add diagonjs
# Or pnpm
pnpm add diagonjs
π Usage
Initialize diagonjs
To initialize diagon.js in your application:
import Diagon from "diagonjs";
const diagon = await Diagon.init();
Use a translator
Once Diagon.js is initialized, you can use its translators to interpret and transform expressions.
Below is an example using the math expression translator:
diagon.translate.math("f(x) = 1 + x / (1 + x)", { style: "Unicode" });
// x
// f(x) = 1 + βββββ
// 1 + x
And here's an example employing the sequence diagram translator:
diagon.translate.sequence(
"Alice -> Bob: Hello Bob!\nAlice <- Bob: Hello Alice!",
{ asciiOnly: false },
);
// βββββββ βββββ
// βAliceβ βBobβ
// ββββ¬βββ βββ¬ββ
// β β
// β Hello Bob! β
// ββββββββββββ>β
// β β
// βHello Alice!β
// β<ββββββββββββ
// ββββ΄βββ βββ΄ββ
// βAliceβ βBobβ
// βββββββ βββββ
π Documentation
- Dive deeper into the source code by exploring the translators
- Find practical integrations with express, react and more in the examples section.
- Explore the test section in the Diagon C++ repository. It contains input and output samples.
- Experience Diagonjs in action using the online interpreter.
π Thanks
This project has been possible thanks to these great projects:
License
This project is licensed under the MIT License.