Skip to content

Latest commit

 

History

History
41 lines (27 loc) · 1.53 KB

README.md

File metadata and controls

41 lines (27 loc) · 1.53 KB

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 anyone1 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

  • Evaluate Jsonnet in browser
  • Share snippets with others
  • Format snippets inline with jsonnetfmt
  • Utilise the extended functionality of kubecfg

Development

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

just run will run the server and make the relevant static assets available2.

Footnotes

  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.