Orga
is a flexible org-mode syntax parser. It parses org content into AST (Abstract Syntax Tree 🌲). And it’s written in JavaScript.
org-mode is simply a superior format than other more popular ones, but it’s mostly trapped inside of emacs. It’s so good that it was the #1 reason to learn and use emacs for a lot of people (me included). But it’s too good to not share with the rest of the world. If it can run in JavaScript, it can run on anything.
It integrates natively with popular tools.
☔️ interface for parsing, inspecting, transforming, and serializing content through syntax trees
The orga
parser is completely compatible with unified. Which means you get to take advantage of the works of others put into the pipeline. linting for natural language, correct your writing, write music? etc. Here is an example.
@orgajs/loader
is a webpack loader that made orga native citizen of webpack ecosystem. Coupled with plugins, it works smoothly. Take a look at the example project.
A JavaScript library for building user interfaces
You can render react components directly in your org file. Something like this:
* Hello World
Let's render *the box*.
#+begin_export jsx
<div style={{
backgroundColor: 'gold',
padding: '1em',
border: '1px solid black',
boxShadow: '5px 5px'
}}>I am a box with shadow</div>
#+end_export
Try it our yourself in the playground.
Build blazing fast, modern apps and websites with React
gatsby-plugin-orga
is a powerful plugin that plug org-mode into gatsby system. This website is built with gatsby and gatsby-theme-orga-docs
theme. Here is a minimal example project.
The React Framework
Because orga is native to webpack, it’s fairly simply to intergrate with nextjs. Example project.
Take a look at the collection of examples to quickly get started.
See the contributing file for ways to get started.