All Projects → armano2 → freemarker-parser

armano2 / freemarker-parser

Licence: MIT license
Freemarker Parser is a javascript implementation of the Freemarker

Programming Languages

typescript
32286 projects
FreeMarker
481 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to freemarker-parser

Spring Boot Examples
个人学习 SpringBoot2.x 写的一些示例程序,目前正在持续更新中.....
Stars: ✭ 159 (+448.28%)
Mutual labels:  freemarker
Android Guidelines
Architecture and code guidelines at Trendyol when developing for Android.
Stars: ✭ 216 (+644.83%)
Mutual labels:  freemarker
github-profile
See Your Github Profile Summary
Stars: ✭ 21 (-27.59%)
Mutual labels:  freemarker
Halo Theme Sakura
Halo 版本的樱花🌸主题
Stars: ✭ 164 (+465.52%)
Mutual labels:  freemarker
Moqui Framework
Use Moqui Framework to build enterprise applications based on Java. It includes tools for databases (relational, graph, document), local and web services, web and other UI with screens and forms, security, file/resource access, scripts, templates, l10n, caching, logging, search, rules, workflow, multi-instance, and integration.
Stars: ✭ 205 (+606.9%)
Mutual labels:  freemarker
Hsweb Demo
2.x版本演示项目
Stars: ✭ 229 (+689.66%)
Mutual labels:  freemarker
Solo Skins
🎨 Solo 博客系统的官方皮肤。
Stars: ✭ 150 (+417.24%)
Mutual labels:  freemarker
pdfDemo
java生成pdf文档的总结和相关代码,java genarate pdf
Stars: ✭ 44 (+51.72%)
Mutual labels:  freemarker
Androidstudiotemplates
Templates for Android Studio
Stars: ✭ 212 (+631.03%)
Mutual labels:  freemarker
FEMU
FEMU: Accurate, Scalable and Extensible NVMe SSD Emulator (FAST'18)
Stars: ✭ 213 (+634.48%)
Mutual labels:  ftl
Spring Boot Email Tools
A set of services and tools for sending emails in a Spring Boot 1.5.x application using a Template Engine
Stars: ✭ 164 (+465.52%)
Mutual labels:  freemarker
Halo Theme Hshan
一款简洁但不简单的halo主题,大道至简
Stars: ✭ 171 (+489.66%)
Mutual labels:  freemarker
Mvparms Module Template
🛠 一键搭建 MVPArms 的官方架构, 让新手一秒即可开启 MVPArms 的世界, 免于项目繁琐配置的烦恼
Stars: ✭ 234 (+706.9%)
Mutual labels:  freemarker
Xposedtemplateforas
自动化创建Xposed模块及钩子,让Xposed模块编写时只需关注钩子实现。Xposed Android Studio Template, automatic module creating along with some useful code.
Stars: ✭ 159 (+448.28%)
Mutual labels:  freemarker
freemarker-cli
Apache FreeMarker CLI (JDK)
Stars: ✭ 35 (+20.69%)
Mutual labels:  freemarker
Aeromock
Lightweight mock web application server
Stars: ✭ 152 (+424.14%)
Mutual labels:  freemarker
Nobullshit
A sample project entirely written in Kotlin. Backend/Frontend with Ktor and Android app.
Stars: ✭ 221 (+662.07%)
Mutual labels:  freemarker
springboot-action
Spring Boot 入门学习示例。
Stars: ✭ 29 (+0%)
Mutual labels:  freemarker
janus-ftl-plugin
A plugin for the Janus WebRTC gateway to enable relaying of audio/video streams utilizing Mixer's FTL (Faster-Than-Light) protocol.
Stars: ✭ 39 (+34.48%)
Mutual labels:  ftl
fluent-vue
Internationalization plugin for Vue.js
Stars: ✭ 137 (+372.41%)
Mutual labels:  ftl

freemarker-parser

Codecov License npm

Freemarker Parser is a javascript implementation of the Freemarker (https://freemarker.apache.org).

This project contains experimental version of parser ftl to ast tree

Installation

You can install freemarker-parser using npm:

$ npm install freemarker-parser --save-dev

Usage

Require freemarker-parser inside of your JavaScript:

Parser

<#assign f=1>

<#if f gt 0>
  ${f} > 0
<#else>
  ${f} < 0
</#if>
const freemarker = require('freemarker-parser');

const parser = new freemarker.Parser();
const data = parser.parse(template);

console.log(data.ast);
console.log(data.tokens);

Parser (bracket style)

[#assign f=1]

[#if f gt 0]
  ${f} > 0
[#else]
  ${f} < 0
[/#if]
const freemarker = require('freemarker-parser');

const parser = new freemarker.Parser();
const data = parser.parse(template, {
  useSquareTags: true,
  parseLocation: true,
});

console.log(data.ast);
console.log(data.tokens);

Currently supported:

TODO:

  • directives:
    • #fallback
    • #nested
    • #recurse
    • #visit
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].