jdockerty / jsonnet-playground

Playground for Jsonnet, inspired by Go/Rust projects of similar names.
https://jsonnet.jdocklabs.co.uk
MIT License
2 stars 0 forks source link
golang htmx jsonnet jsonnet-playground kubecfg templ

jsonnet-playground

Inspired by the Go playground and others.

This project is built with Go, templ, and htmx.

It is available at jsonnet.jdocklabs.co.uk for anyone[^1] to use.

How it works

Pages are directly rendered and served by the Go HTTP server through the templ library.

Jsonnet is taken as input and evaluated through the Jsonnet VM, available through the /api/run path, and htmx's target functionality displays the evaluated input or error message in the corresponding output box.

Sharing is achieved through the creation of a shareable hash, the Jsonnet must be valid to be shared. If a shareable snippet has recently been created, it can be shared with others by simply sending them the link. This will then be loaded by the server and displayed.

Features

Development

The justfile in this repository provides various commands for local development.

just run will run the server and make the relevant static assets available[^2].

[^1]: Shared snippets are currently stored in memory, this is to keep the project near-free to run. [^2]: The assets are named kodata alongside the server as the application is built and deployed with ko.