Skip to content
/ eure Public

A minimalist, schema- and editor-friendly data language for algebraic data types and concise descriptions of deeply nested data.

Notifications You must be signed in to change notification settings

Hihaheho/eure

Repository files navigation

Eure

Ask DeepWiki

Warning

Under Construction!

Name

Eure (not "EURE"), pronounced "your." Not an acronym, but think: Eureka, Extensible Universal Representation, "your" data.

Focus

  • Minimalist
  • Schema-frieldly
  • Algebraic data model
  • JSON data model compatible
  • JSON schema compatible
  • Rich Editor Experience
  • Human friendly
  • Dedicated templating language
  • Programmatically editable

Example

$eure.version: https://eure.dev/versions/v0.1.0
title: test
language: en
target_window: Main

@ actions[]
$variant: use-script
script-id: title

@ actions[]
$variant: sleep
seconds = 2.0

@ actions[]
$variant: set-base-background-image
image: images/backgrounds/blank.png

@ actions[]
$variant: set-scene
scene: scenes/room_a.scn.ron

@ actions[] {
  $variant: set-text

  @ pages[]
  text: Hi,

  @ pages[]
  speaker: Ryo
  text: I'm Ryo.
}

TODO

  • eure-parol: Complete the grammar and parser
  • eure-ls: Syntax highlighting
  • eure-schema: Eure Schema specification
  • serde-eure: Serde support
  • eure-dev: Making the landing page on https://eure.dev
  • eure-fmt: Make the formatter
  • eure-cli: command to convert Eure to other formats
  • eure-check: Eure files validator
  • eure-lint: Some lint rules
  • eure-template: Templating extension for Eure files
  • eure-editor-support: Editor support for Eure files
  • eure-toml: TOML conversion support
  • eure-json: JSON conversion support
  • eure-yaml: YAML conversion support
  • eure-value: Type-safe data-type of Eure data-model

Credits

  • Parol for the parser generator
  • TOML for the document structure and its minimalisity
  • jq for the key syntax
  • Serde for the data model and attributes (especially about enum representation)
  • JSON Schema for the idea of describing schema in the same language as the data
  • Helm for the idea of templating
  • YAML for easy nesting and the : syntax

About

A minimalist, schema- and editor-friendly data language for algebraic data types and concise descriptions of deeply nested data.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages