RosaeNLG / rosaenlg

RosaeNLG is a Natural Language Generation library for node.js and browser rendering, based on the Pug template engine.
https://rosaenlg.org
Apache License 2.0
92 stars 21 forks source link

RosaeNLG logo, thanks to Denis Aulas

CII Best Practices Known Vulnerabilities

RosaeNLG

RosaeNLG is a Natural Language Generation library for node.js or client side (browser) execution, based on the Pug template engine. Based on Pug-like textual templates and on input data, RosaeNLG will generate high quality texts.

Fully supported languages (with grammar, gender etc.) are English, French, German, Italian and Spanish but you can generate texts in any other language with less features.

RosaeNLG is complete enough to write production grade real life NLG applications.

RosaeNLG is a Sandbox Project of LF AI & Data Foundation, part of the Linux Foundation.

Getting Started Using RosaeNLG

The main documentation site is rosaenlg.org. A mirror is available on Github pages, but without the search bar.

Use the Quick Start and the Tutorials on the documentation site.

You can also play around with a client side editor, compiler and renderer with an in browser editor.

Sample template:

- var data = ['apples', 'bananas', 'apricots', 'pears'];
p
  eachz fruit in data with { separator: ',', last_separator: 'and', begin_with_general: 'I love', end:'!' }
    | #{fruit}
`, 'I love apples, bananas, apricots and pears!'
);

will generate:

<p>I love apples, bananas, apricots and pears!</p>

Getting Started Developing RosaeNLG

RosaeNLG is an open source project, and welcomes your contribution, be it through code, a bug report, a feature request, or user feedback.

Versioning, Releases

See Release doc

Join the RosaeNLG Community!

The RosaeNLG community is committed to fostering an open and welcoming environment, with several ways to engage with other users and developers. You can find out more about here.

Also check our Code of Conduct.

Roadmap

RosaeNLG aims to become the most used NLG open source engine, and to support more than 50 commonly spoken languages.

Major targets are:

2021 Roadmap was presented and discussed during the first 2021 RosaeNLG meetup. See detailed 2021 roadmap.

Logo & Artwork

RosaeNLG logo was made by Denis Aulas. Reference artwork is here.

License

RosaeNLG is open source, with most code available under the Apache 2.0 license (see the LICENSE), and documentation under Creative Commons Attribution 4.0 International (CC-BY-4.0) license, though some elements are necessarily licensed under different open source licenses for compatibility with upstream licensing or code linking. For instance, english-ordinals and rosaenlg-cli modules remain under MIT.

The licenses applicable to each linguistic resource package are included in each subfolder the package directory, and a summary of the licenses can be found in the Linguistic resources documentation.