• Stars
    star
    276
  • Rank 144,683 (Top 3 %)
  • Language
    Rust
  • License
    MIT License
  • Created about 4 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rust implementation of Jsonnet language

jrsonnet

release license opencollective

What is it

Jsonnet is a data templating language

This Rust crate implements both jsonnet library and an alternative jsonnet executable based on it. For more information see bindings.

Install

NixOS

jrsonnet is packaged in nixpkgs and maintained by @CertainLach

nix-env -iA nixpkgs.jrsonnet

MacOS

jrsonnet is packaged to brew and maintained by @messense

brew install jrsonnet

Windows/other linux distributions

You can get latest build of jrsonnet in releases

Build from sources

jrsonnet should build on latest stable Rust version (probally on olders, but there is no MSRV policy provided)

Debug build will work too, but it is much slower than release

cargo build --release

Why?

There already are multiple implementations of this standard implemented in different languages: C++, Go, Scala.

This implementation shows performance better than all existing implementations. For more information see benchmarks.

Also, I wanted to experiment on new syntax features, and jrsonnet implements some of them. For more information see features

In the end, it's always fun to implement something in Rust.

Bindings

Rust

crates.io docs.rs

Jrsonnet is written in rust itself, so just add it as dependency

Python

crates.io

Bindings are created and maintained by @messense

C/C++

Jrsonnet provides a standard libjsonnet.so shared library and should work as drop-in replacement for it

Other

WASM bingings are also available, Java bindings (Both JNI and WASM compiled to .class) are in progress

See bindings for more information.

More Repositories

1

VivePro2-Linux-Driver

SteamVR driver for VivePro2 on Linux
C++
61
star
2

vmprotect

Unofficial Rust SDK for VMProtect
Rust
59
star
3

SongAPI

Downloading from various guitar tab sites using VBS
VBScript
25
star
4

LK.BIN-Parser

CoffeeScript
13
star
5

MTK-Pin-Finder

JavaScript
8
star
6

immigrant

Database schema definition language, migration and ORM boilerplate generator
Rust
8
star
7

hidfox

WebHID shim for Firefox
Rust
7
star
8

fleet

NixOS cluster configuration tool
Rust
4
star
9

VMProtect-Rust-Example

Rust
4
star
10

Smalibfuscator

4
star
11

nix-remote

Rust
3
star
12

rofi-plugin-rs

Rust api for rofi plugins
Rust
3
star
13

hl-rhs-flooder

Rust
3
star
14

hi-doc

Diagnostic formatting library
Rust
3
star
15

c9-pumlpreview

Realtime puml preview extension
JavaScript
3
star
16

coffeegrounds

Rust
2
star
17

cppvtbl-rs

FFI safe, C++ - like vtables for Rust
Rust
2
star
18

Linguist

Minimalistic i18n java library
Java
2
star
19

MTK_LCM_NODE_BINDING

C++
2
star
20

BungeeOxide

Rust
2
star
21

deppatcher

Rust
2
star
22

ModPE

ModPE Scripts for MinecraftPE
1
star
23

Prestigio5500_Kernel_Source

Source code of 3.4.67 kernel for Prestigio5500
C
1
star
24

adopted-rs

Implementation of AdOPTed operational transforms alghoritm for text in rust
Rust
1
star
25

nixisk

Nix daemon packaged as module for magisk
1
star
26

SockySock

JavaScript
1
star
27

browser-rtmp-stream-gateway

Special for SpaceVK
JavaScript
1
star
28

Framework

Multirepo
TypeScript
1
star
29

UnitedChat

Universal chat bot adapter
JavaScript
1
star
30

XDP-Rust-Example

Makefile
1
star
31

VSCode-Another-Project-Manager

TypeScript
1
star
32

creepworks

Random projects
JavaScript
1
star
33

YAPL

yet-another-parachain-launcher
Jsonnet
1
star
34

chimera

POC: Loading windows shared libraries on linux
Rust
1
star
35

jrsonnet-gc

Rust
1
star
36

UnitedBot

Chat bot that will support VK, Telegram, IRC and other chats
Haxe
1
star
37

WebRTCFileTransfer

A tiny experiment about transfering a file behind 2 browsers directly.
HTML
1
star
38

modpe-squid

Adds a ModPE wrapper into flying-squid
JavaScript
1
star
39

pw-resolved-discover

[PoC] Like raop-zeroconf-discover, but with systemd-resolved instead of avahi
Rust
1
star