Ninja Pokémon Master

    TypeScript icon, indicating that this package has built-in type declarations

    0.0.8 • Public • Published
    Version Downloads Downloads

    Sirop is a very simple to use framework to create any kind of parser in a few minutes.

    Getting Started

    Expression are made of words which contains figure.

    Let's see how can I write a basic expression for integer.


    I wanna add a sign to my integer.

    <sign:+|-> <num:$number>

    But here I'm obligate to add a sign to my number, so let's turn 'sign' key to optional.

    [sign:+|-] <num:$number>

    So there is my expression to parse integer.

    Now, I can create a parser:

    import { Parser } from "sirop";
    const intParser = new Parser();
        expression: "[sign:+|-] <num:$number>",
        validate: resolved => {
          // by returning false the parser will stop his process.
          return true;

    Multiple Figure Word

    Figures is a kind of sub word, so I can add optional figure to my 'num' key, to support float.

    [sign:+|-] <num:<$number>[.][$number]>
    When words have multiple figures, all figures need to have enclosure

    Here 'num' key can have up to three tokens, we'll need a little bit logic (a maximum of 5 lines) to correctly understand the parser result.

    There's an exemple of math parsing (can be optimized don't use it as wrote)

    That print:

    time: 0.43ms
    10 ** 3 + 150 + 3700 * 4 -> 15950
    From Eval -> 15950 
    time: 0.08ms
    10 + 25 * 150 - 1 -> 3759
    From Eval -> 3759

    time value should change

    Written with 💖 by Camille Bakkali


    npm i sirop

    DownloadsWeekly Downloads






    Unpacked Size

    69.6 kB

    Total Files


    Last publish


    • yirasan